--- /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 <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Fix for <rdar://problem/5488678>. 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 <alice.liu@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ Fixed <rdar://5464402> 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 <bdakin@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Fix for <rdar://problem/5441823> 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 <mrowe@apple.com>
+
+ Reviewed by Oliver.
+
+ Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
+ 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ WebKit part of fix for <rdar://problem/5369017> 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 <darin@apple.com>
+
+ * WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]):
+ Removed a bogus comment.
+
+2007-10-02 Kevin Decker <kdecker@apple.com>
+
+ 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 <kdecker@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/5517710>
+
+ * 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 <sullivan@apple.com>
+
+ Reviewed by Ollie
+
+ - fixed <rdar://problem/5408186> 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 <kdecker@apple.com>
+
+ Rubber stamped by Darin.
+
+ <rdar://problem/5493093>
+
+ * 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 <ggaren@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Fixed <rdar://problem/5507476> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5498016> 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 <kdecker@apple.com>
+
+ * 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 <kdecker@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/5493093>
+
+ 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 <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - WebKit part of speculative fix for <rdar://problem/5490627>, 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 <kdecker@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/5491066> 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fixed <rdar://problem/5490204> 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 <ggaren@apple.com>
+
+ 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 <rdar://problem/5479443>
+ 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 <darin@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - fix <rdar://problem/5391540> 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 <mrowe@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Geoff Garen and Tim Hatcher.
+
+ - fixed <rdar://problem/5482745> 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 <darin@apple.com>
+
+ Reviewed by Oliver.
+
+ - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
+ <input> 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 <ddkilzer@apple.com>
+
+ Rubber-stamped by Darin and reviewed by Adam.
+
+ Removed import of unused icon database headers.
+
+ * WebCoreSupport/WebFrameBridge.mm:
+
+2007-09-11 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ Remove the unused class_getMethodImplementation function.
+
+ * Misc/WebNSObjectExtras.h:
+
+2007-09-11 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ - redo fix for <rdar://problem/5472899> REGRESSION (TOT): Crash in FrameLoadDelegate loading stationery
+
+ * WebView/WebView.mm:
+ (getMethod): Added.
+ (-[WebView _cacheResourceLoadDelegateImplementations]): Use getMethod.
+ (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
+
+2007-09-11 Darin Adler <darin@apple.com>
+
+ Rubber-stamped by Dave Harrison.
+
+ * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
+ Removed wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName.
+
+2007-09-11 Darin Adler <darin@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix <rdar://problem/5472899> 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ - <rdar://problem/5471082> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ Always animate when calling _scrollTo.
+
+ * WebView/WebFrameView.mm:
+ (-[WebFrameView _scrollVerticallyBy:]):
+ (-[WebFrameView _scrollHorizontallyBy:]):
+
+2007-09-08 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Darin
+
+ <rdar://problem/5434431> - 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 <ggaren@apple.com>
+
+ Suggested by Maciej Stachowiak.
+
+ Added wKiosk Browser to the browser list. Pretty sweet app.
+
+ * WebView/WebPreferences.m:
+ (cacheModelForMainBundle):
+
+2007-09-07 Geoffrey Garen <ggaren@apple.com>
+
+ Build fix.
+
+ * WebView/WebView.mm:
+ (+[WebView _setCacheModel:]):
+
+2007-09-05 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher.
+
+ Fixed <rdar://problem/5326009> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5443883> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5452908> 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 <hyatt@apple.com>
+
+ Fix for <rdar://problem/5271213>, 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 <darin@apple.com>
+
+ 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 <tristan@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/5454935> 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 <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/5452164> 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 <beidson@apple.com>
+
+ 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 <oliver@apple.com>
+
+ Reviewed by Sam.
+
+ <rdar://problem/5344848> 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 <mjs@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/5439953> 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 <darin@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ - fix <rdar://problem/4582212> 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ Fix for http://bugs.webkit.org/show_bug.cgi?id=15098
+ <rdar://problem/5440319> 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 <hyatt@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Fix 64-bit build.
+
+ * WebCoreSupport/WebFrameBridge.mm:
+
+2007-08-29 David Hyatt <hyatt@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5424866> 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 <mrowe@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Fix fallout from the fix for <rdar://problem/5437983> (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 <mrowe@apple.com>
+
+ Fix the buildbot build.
+
+ * History/WebHistory.mm:
+ (timeIntervalForBeginningOfDay): Explicitly cast to silence compiler warning.
+
+2007-08-28 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/5437983> 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5298296> XMLHttpRequest readyState 3 & responseText buffer issues
+
+ Expose WKSetNSURLRequestShouldContentSniff to WebCore.
+
+ * WebCoreSupport/WebSystemInterface.m:
+ (InitWebCoreSystemInterface):
+
+2007-08-24 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5437038> 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 <adele@apple.com>
+
+ Fix by Darin, reviewed by Adele.
+
+ Fix for <rdar://problem/5433422> 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 <timothy@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/5410937> 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 <timothy@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/5410937> 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 <timothy@apple.com>
+
+ Rolling out r25102 for <rdar://problem/5410937> until
+ <rdar://problem/5429920> 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 <sullivan@apple.com>
+
+ Reviewed by Adam Roben
+
+ WebKit part of fix for:
+ <rdar://problem/5417777> WebKit focus ring color no longer matches system focus rings
+
+ * Misc/WebNSAttributedStringExtras.mm:
+ now includes <WebCore/ColorMac.h> 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 <antti@apple.com>
+
+ Reviewed by John.
+
+ Fix <rdar://problem/5378390>
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - fixed <rdar://problem/5198272> 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - fix <rdar://problem/5414518> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5398301> 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 <andersca@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/5379040>
+ 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 <ggaren@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5410937> 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 <beidson@apple.com>
+
+ Reviewed by Darin, John, Maciej, Oliver, and Tim
+
+ <rdar://problem/5394708> - 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 <ap@webkit.org>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ <rdar://problem/5403302> 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 <timothy@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/5394449> 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 <andersca@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5390568>
+ 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
+ <rdar://problem/5133420> because WebCore shouldn't have to worry about the lifetime of WebKit objects.
+
+ * WebView/WebDocumentLoaderMac.mm:
+ (WebDocumentLoaderMac::decreaseLoadCount):
+
+2007-08-10 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Darin.
+
+ Fixed <rdar://problem/5000470> REGRESSION: ATOK IM: reconvert returns incorrect symbol due to inconsistent range domains in TSM by working around <rdar://problem/5400551> [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 <mrowe@apple.com>
+
+ Reviewed by Antti.
+
+ <rdar://problem/5400709> 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 <kdecker@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Fixed: <rdar://problem/5394449> 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 <hyatt@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Oliver
+
+ Fix for http://bugs.webkit.org/show_bug.cgi?id=14824 and <rdar://problem/5372989>
+
+ 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 <timothy@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Tim
+
+ <rdar://problem/5381463> - setMIMETypesShownAsHTML mutates while enumerating
+
+ * WebView/WebView.mm:
+ (+[WebView setMIMETypesShownAsHTML:]): Copy the dictionary before we work with it.
+
+2007-08-02 Alice Liu <alice.liu@apple.com>
+
+ Reviewed by Kevin McCullough.
+
+ fixed <rdar://problem/5310312> 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 <andersca@apple.com>
+
+ Fix build.
+
+ * Misc/WebNSURLExtras.mm:
+ (+[NSURL _web_URLWithUserTypedString:relativeToURL:]):
+ (-[NSURL _web_userVisibleString]):
+ (-[NSURL _web_URLWithLowercasedScheme]):
+ (-[NSURL _web_dataForURLComponentType:]):
+
+2007-08-01 Alice Liu <alice.liu@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Anders Carlsson and Kevin Decker.
+
+ - fix <rdar://problem/5377432> 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 <timothy@apple.com>
+
+ Reviewed by Oliver and Beth.
+
+ <rdar://problem/5211271> 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 <adele@apple.com>
+
+ Reviewed by Oliver.
+
+ Fix for <rdar://problem/5308020> 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fixed <rdar://problem/5216176> 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ Fix for <rdar://problem/5367919> 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5370710>
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by Tristan.
+
+ <rdar://problem/5098931> 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:
+ <div contenteditable="plaintext-only">foo</div><div>^bar</div>
+ 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 <adele@apple.com>
+
+ Reviewed by John.
+
+ WebKit part of fix for <rdar://problem/5102522> 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 <darin@apple.com>
+
+ - 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 <darin@apple.com>
+
+ Reviewed by Tim Hatcher and Oliver Hunt.
+
+ - fix <rdar://problem/5355815> 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 <ap@webkit.org>
+
+ Reviewed by Oliver.
+
+ http://bugs.webkit.org/show_bug.cgi?id=14733
+ Add a logging channel for text input
+ <rdar://problem/5364667>
+
+ * 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 <darin@apple.com>
+
+ - 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/5362989> 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 <oliver@apple.com>
+
+ Reviewed by Adam and Justin.
+
+ <rdar://problem/5141779> 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 <kdecker@apple.com>
+
+ Reviewed by Anders.
+
+ <rdar://problem/4699455> 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 <mrowe@apple.com>
+
+ Reviewed by Antti.
+
+ <rdar://problem/5356666> 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 <oliver@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Expose [WebHTMLView hasMarkedText] to
+ fix <rdar://problem/4830074> autocomplete breaks Japanese typing
+
+ * WebView/WebHTMLView.mm:
+ * WebView/WebHTMLViewPrivate.h:
+
+2007-07-22 Darin Adler <darin@apple.com>
+
+ * StringsNotToBeLocalized.txt: Updated for recent changes.
+
+2007-07-21 Adam Roben <aroben@apple.com>
+
+ Fix REGRESSION: Right-click/control-click broken
+
+ http://bugs.webkit.org/show_bug.cgi?id=14658
+ <rdar://problem/5346830>
+
+ Reviewed by Mitz.
+
+ * WebCoreSupport/WebContextMenuClient.mm:
+ (fixMenusToSendToOldClients): Update defaultItemsCount after removing
+ items from the defaultItems array.
+
+2007-07-20 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Adele.
+
+ <rdar://problem/5319438> 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 <beidson@apple.com>
+
+ Reviewed by Adele and Andersca
+
+ <rdar://problem/5336105> - 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 <justin.garcia@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5109817> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5199812> WebView needs to adopt viewWillDraw (moving off of _propagateDirtyRectsToOpaqueAncestors)
+ <rdar://problem/5017301> 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 <bdakin@apple.com>
+
+ Reviewed by Tim and Geoff.
+
+ Fix for <rdar://problem/5346855> 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 <sullivan@apple.com>
+
+ Reviewed by Darin Adler and David Harrison
+
+ - fixed <rdar://problem/5307075> 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 <aroben@apple.com>
+
+ Fix <rdar://problem/5344972> 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 <ggaren@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/5345099>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5341133> 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 <timothy@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/5343767> 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 <andersca@apple.com>
+
+ Build fix.
+
+ * Misc/WebNSAttributedStringExtras.mm:
+
+2007-07-18 Sam Weinig <sam@webkit.org>
+
+ 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 <tristan@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ <rdar://problem/5341334> Alt-clicking a link in Safari does not register original URL info with gatekeeper
+ <rdar://problem/5342570> 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 <timothy@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5336267> 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 <aroben@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Remove WebContextMenuClient::shouldIncludeInspectElementItem
+
+ Reviewed by Tim.
+
+ * WebCoreSupport/WebContextMenuClient.h:
+ * WebCoreSupport/WebContextMenuClient.mm:
+
+2007-07-17 Adam Roben <aroben@apple.com>
+
+ Initialize Settings::developerExtrasEnabled
+
+ Reviewed by Tim.
+
+ * WebView/WebView.mm:
+ (-[WebView _updateWebCoreSettingsFromPreferences:]):
+
+2007-07-17 Geoffrey Garen <ggaren@apple.com>
+
+ Build fix.
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _loadURL:referrer:intoChild:]):
+ * WebView/WebFramePrivate.h:
+
+2007-07-17 Tristan O'Tierney <tristan@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ <rdar://problem/5294691> 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 <beidson@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <darin@apple.com>
+
+ * StringsNotToBeLocalized.txt: Update for recent changes.
+
+2007-07-16 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Kevin Decker and Darin Adler
+
+ - fixed <rdar://problem/5337529> 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 <beidson@apple.com>
+
+ Reviewed by Sam Weinig
+
+ Initial check-in for <rdar://problem/3154486> - 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 <andersca@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5290103> 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 <rdar://problem/5335034> 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 <timothy@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ <rdar://problem/5333766> 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 <andersca@apple.com>
+
+ Reviewed by Darin and Maciej.
+
+ <rdar://problem/5271096> 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 <mrowe@apple.com>
+
+ Reviewed by Mitz.
+
+ Build fix. Stub out WebChromeClient::print.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::print):
+
+2007-07-11 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Oliver.
+
+ <rdar://problem/5108789> 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 <antti@apple.com>
+
+ Reviewed by John.
+
+ Fix <rdar://problem/4570550>
+ 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 <ggaren@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - Fixed <rdar://problem/5049509> 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 <darin@apple.com>
+
+ - fix build
+
+ * WebView/WebHTMLView.mm: Add include of ContextMenu.h.
+
+2007-07-10 Darin Adler <darin@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - <rdar://problem/5321953> 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 <andersca@apple.com>
+
+ Reviewed by Oliver.
+
+ <rdar://problem/4954319>
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fixed <rdar://problem/5320208> 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 <sullivan@apple.com>
+
+ * 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 <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - fix <rdar://problem/5124665> 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 <oliver@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5318756> 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 <sullivan@apple.com>
+
+ Reviewed by Brady
+
+ - WebKit part of fix for:
+ <rdar://problem/5310739> 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 <mrowe@apple.com>
+
+ Build fix. Update WebDynamicScrollBarsView.h to include methods added and used in r24060.
+
+ * WebView/WebDynamicScrollBarsView.h:
+
+2007-07-05 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5236277> 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 <mitz@webkit.org>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adam
+
+ - WebKit part of fix for <rdar://problem/5315033>
+
+ * 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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5314993> 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 <aroben@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Initialize Settings::showsURLsInToolTips
+
+ Reviewed by Sam.
+
+ * WebView/WebView.mm:
+ (-[WebView _updateWebCoreSettingsFromPreferences:]):
+
+2007-07-04 Adam Roben <aroben@apple.com>
+
+ Removed call to mouseDidMoveOverElement now that WebCore handles it
+
+ Reviewed by Sam.
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _updateMouseoverWithEvent:]):
+
+2007-07-04 Adam Roben <aroben@apple.com>
+
+ Add WebChromeClient::mouseDidMoveOverElement
+
+ This is not called yet.
+
+ Reviewed by Sam.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+
+2007-07-03 Darin Adler <darin@apple.com>
+
+ * StringsNotToBeLocalized.txt: Updated for recent changes.
+
+2007-07-03 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ Remove HIWebView in 64-bit.
+
+ Also disable a few calls that are now gone in 64-bit and filed these bugs:
+
+ <rdar://problem/5311653> WebKit needs to adopt HIGetMousePosition where we used GetGlobalMouse before
+ <rdar://problem/5311648> WebKit needs to move off of CopyEvent in WebBaseNetscapePluginView
+ <rdar://problem/5311640> 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 <aroben@apple.com>
+
+ 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 <adele@apple.com>
+
+ Removed printf I accidently left in.
+
+ * Misc/WebNSURLExtras.m: (mapHostNames):
+
+2007-07-03 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin.
+
+ Fix for: <rdar://problem/5292988> 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 <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - fix <rdar://problem/5310848> 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 <darin@apple.com>
+
+ - forgot to check in one file in the fix for <rdar://problem/5307880>
+ 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 <andersca@apple.com>
+
+ 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 <mrowe@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Kevin Decker and Tim Hatcher.
+
+ - fix <rdar://problem/5307880> 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 <oliver@apple.com>
+
+ Reviewed by Justin.
+
+ Fix for
+ <rdar://problem/5290113> 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 <oliver@apple.com>
+
+ Reviewed by Alexey.
+
+ Fix for <rdar://problem/5306210> 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 <sullivan@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5287569> 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - WebKit support for displaying multiple text matches in PDF views (<rdar://problem/4601967>)
+
+ * 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 <oliver@apple.com>
+
+ 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:
+ <rdar://problem/5107538> Major problems handling key press event with non-english Input Methods
+ <rdar://problem/4196249> REGRESSION: Mail: Inputting space (U+0020) with IM deletes subsequent line breaks on Mail.app
+ <rdar://problem/5015544> REGRESSION: Reverse conversion keyboard command does not work in Safari.
+ <rdar://problem/5045121> REGRESSION: Inline is confirmed after press left/right arrow keys, happens in Mail but not in TextEdit.
+ <rdar://problem/5076807> REGRESSION: Can't undo conversion of inline text (by hitting ESC)
+ <rdar://problem/5085781> REGRESSION: Active input area lost "selected" highlight
+ <rdar://problem/5094200> space key pressed to close the associated words candidate window gets inserted as text
+ <rdar://problem/5228294> 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 <jim.correia@pobox.com>
+
+ 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.
+ <rdar://problem/5297268>
+
+ * 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 <kdecker@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5294036> -[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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - WebKit part of <rdar://problem/5293820>, 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ Fixed <rdar://problem/5292259> 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 <adele@apple.com>
+
+ Reviewed by Geoff and Darin.
+
+ Fix for: <rdar://problem/5239236> Other slash characters should not be permitted as part of a domain name
+
+ * Misc/WebNSURLExtras.m:
+ (isSlashOrPeriodLookalike):
+ (allCharactersInIDNScriptWhiteList):
+
+2007-06-21 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Antti.
+
+ Remove empty directories
+
+ * WebInspector/webInspector: directory removed.
+ * WebInspector/webInspector/Images: directory removed
+
+2007-06-21 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/5237524>
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adele
+
+ - fixed <rdar://problem/5268673> 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 <mrowe@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5263541> 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 <andersca@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/5266289> 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 <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ - fixed <rdar://problem/5272011> 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 <jim.correia@pobox.com>
+
+ 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 <sam@webkit.org>
+
+ Reviewed by Beth.
+
+ Build fix.
+
+ * WebCoreSupport/WebChromeClient.mm:
+
+2007-06-18 Kevin Decker <kdecker@apple.com>
+
+ * Carbon/HIWebView.m:
+ (WindowHandler): Fixed the Tiger build; ControlKind wasn't defined.
+
+2007-06-18 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Fixed: <rdar://problem/5276135> 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 <hyatt@apple.com>
+
+ 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 <sam@webkit.org>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by Kevin.
+
+ A better fix for <rdar://problem/5271774>. 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 <andersca@apple.com>
+
+ Reviewed by Kevin.
+
+ <rdar://problem/5271774> 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 <andersca@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adele Peterson
+
+ - fixed <rdar://problem/5267607> 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 <oliver@apple.com>
+
+ Reviewed by Darin.
+
+ Use correct size for BITMAPINFOHEADER -- whoops.
+
+ * win/WebIconDatabase.cpp:
+ (createDIB):
+ (WebIconDatabase::getOrCreateDefaultIconBitmap):
+
+2007-06-10 David Hyatt <hyatt@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ * WebView/WebViewPrivate.h:
+ Added a FIXME
+
+2007-06-07 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Tristan.
+
+ <rdar://problem/5250997> 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 <oliver@apple.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <oliver@apple.com>
+
+ Reviewed by Geoff and Justin.
+
+ Fix for <rdar://problem/5246941> Clicking URL field on
+ Safari causes halt for a minute when using input methods.
+ and <rdar://problem/5245964> 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 <hyatt@apple.com>
+
+ 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 <mrowe@apple.com>
+
+ Build fixes after r21889.
+
+ * ForwardingHeaders/kjs/function.h: Added.
+
+2007-05-29 Mark Rowe <mrowe@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fixed <rdar://problem/5055182> 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 <timothy@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/5219089> Changes for migration of DictionaryServices
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _lookUpInDictionaryFromMenu:]): look for the HIDictionaryWindowShow symbol in HIToolbox
+
+2007-05-25 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Darin
+
+ <rdar://problem/5228371> - 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
+
+ <rdar://problem/5229587> tracks adding a layout test
+
+ * WebView/WebView.mm:
+ (+[WebView _canHandleRequest:]): Return true for applewebdata URLs
+
+2007-05-25 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Moved JavaScriptCore-related pending public API to public API.
+
+ * MigrateHeaders.make: Hack to prevent <JavaScriptCore/JSBase.h> from
+ automatically converting to <WebKit/JSBase.h>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Anders and Tim
+
+ - fixed <rdar://problem/5226000> 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 <bdakin@apple.com>
+
+ Reviewed by Geoff.
+
+ Fix for <rdar://problem/5023545> 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 <darin@apple.com>
+
+ * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
+
+2007-05-24 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Adam, Darin, and Geoff.
+
+ Fix for <rdar://problem/5000470> 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 <harrison@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/5225343> 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 <andersca@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/3663808> 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 <sam@webkit.org>
+
+ 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 <oliver@apple.com>
+
+ Reviewed by Geoff.
+
+ Fix for <rdar://problem/5223782> 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 <sam@webkit.org>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ * WebInspector/webInspector/treeoutline.js: Use ownerDocument instead of non-standard
+ document property.
+
+2007-05-22 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin.
+
+ Adding some asserts to help detect other cases of <rdar://problem/5171145>
+
+ * WebCoreSupport/WebFrameBridge.mm: (-[WebFrameBridge makeFirstResponder:]):
+
+2007-05-22 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Kevin (Sarge)
+
+ <rdar://problem/5219885> - 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 <adele@apple.com>
+
+ Fix by Darin, reviewed by me.
+
+ Fix for <rdar://problem/5171145> 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 <beidson@apple.com>
+
+ Making the importance of my last change more clear
+
+ * WebView/WebViewPrivate.h: "Leave for Dashboard, people!"
+
+2007-05-21 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Kevin (Sarge)
+
+ <rdar://problem/5217124> - Re-add mistakenly removed SPI
+
+ * WebView/WebView.mm:
+ (-[WebView handleAuthenticationForResource:challenge:fromDataSource:]):
+ * WebView/WebViewPrivate.h:
+
+2007-05-21 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Ada.
+
+ <rdar://problem/5200816> 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 <mjs@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5205358> 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 <oliver@apple.com>
+
+ 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 <tristan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5204792> 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 <ggaren@apple.com>
+
+ Fixed spelling error.
+
+ * WebView/WebViewPrivate.h:
+
+2007-05-18 John Sullivan <sullivan@apple.com>
+
+ 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 <oliver@apple.com>
+
+ Reviewed by Justin.
+
+ Fix for <rdar://problem/4244861> 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 <oliver@apple.com>
+
+ Reviewed by Adam.
+
+ Fix for <rdar://problem/4343832> 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5207156> 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 <oliver@apple.com>
+
+ 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 <bruceq@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Patch: fixed <rdar://problem/5198890> .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 <rdar://problem/4608404> is not the key issue.
+
+2007-05-15 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Hyatt and Lars.
+
+ - fixed <rdar://problem/5201758> 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 <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ - 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 <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ - fix <rdar://problem/5188400> 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ "IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness.
+
+2007-05-10 Adele Peterson <adele@apple.com>
+
+ Reviewed by Hyatt.
+
+ WebKit part of fix for <rdar://problem/4100616> 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 <bdakin@apple.com>
+
+ Reviewed by Darin.
+
+ Fix for <rdar://problem/5191941> 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 <mjs@apple.com>
+
+ Reviewed by Oliver.
+
+ - WebKit part of fix for:
+ <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load)
+ <rdar://problem/5159541> 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 <oliver@apple.com>
+
+ rs=Adele.
+
+ The previous patch (r21346) broke editing, rolling out
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]):
+ (-[WebHTMLView doCommandBySelector:]):
+
+2007-05-09 Adele Peterson <adele@apple.com>
+
+ Reviewed by Oliver.
+
+ Re-applying fix for <rdar://problem/5107538> 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 <mrowe@apple.com>
+
+ Build fix to keep the buildbot happy.
+
+ * Plugins/WebBaseNetscapePluginView.mm:
+ (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
+
+2007-05-08 Bruce Q Hammond <bruceq@apple.com>
+
+ 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 <sfalken@apple.com>
+
+ 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 <sfalken@apple.com>
+
+ Reviewed by Ada.
+
+ Slight modification to last editor method fix.
+
+ * WebCoreSupport/WebEditorClient.h:
+ (WebEditorClient::updateSpellingUIWithGrammarString):
+
+2007-05-07 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Fixed <rdar://problem/5140447> 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 <rdar://problem/4395622> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5180384> 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 <beidson@apple.com>
+
+ Actually finish the code move from my last checkin
+
+ * History/WebHistoryItem.mm:
+ (-[WebHistoryItem _transientPropertyForKey:]):
+ (-[WebHistoryItem _setTransientProperty:forKey:]):
+
+2007-05-07 Brady Eidson <beidson@apple.com>
+
+ Rubberstamped by Kevin (Sarge)
+
+ Make _transientPropertyForKey: and _setTransientProperty:forKey: SPI
+
+ * History/WebHistoryItemInternal.h:
+ * History/WebHistoryItemPrivate.h:
+
+2007-05-04 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ First step in fixing <rdar://problem/5055182> 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 <ggaren@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Some cleanup in preparation for fixing <rdar://problem/5055182> 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 <beidson@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by Antti.
+
+ <rdar://problem/5179977> 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 <sfalken@apple.com>
+
+ Reviewed by Oliver.
+
+ Add missing user description parameter to spelling-related editor client method.
+
+ * WebCoreSupport/WebEditorClient.h:
+ (WebEditorClient::updateSpellingUIWithGrammarString):
+
+2007-05-03 TImothy Hatcher <timothy@apple.com>
+
+ Reviewed by Kevin.
+
+ <rdar://problem/4975212> 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 <mrowe@apple.com>
+
+ Reviewed by Geoff and Kevin.
+
+ <rdar://problem/5141290> 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 <timothy@apple.com>
+
+ Reviewed by Kevin.
+
+ <rdar://problem/5067707> 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 <andersca@apple.com>
+
+ Reviewed by Brady.
+
+ <rdar://problem/5151113> 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 <rdar://problem/5085897>.
+
+ 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 <timothy@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5160627> 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Mark.
+
+ <rdar://problem/5154113> 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 <andersca@apple.com>
+
+ Reviewed by Mitz.
+
+ <rdar://problem/5165755>
+ View Source is broken; empty window is shown
+
+ Return YES for applewebdata URLs.
+
+ * WebView/WebView.mm:
+ (+[WebView _canHandleRequest:]):
+
+2007-04-26 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Adam.
+
+ Fix <rdar://problem/5061252> REGRESSION: In Gmail, image fails
+ to be inserted into message field after dragging
+
+ Don't try to create <img> 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 <andersca@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5049099> 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 <oliver@apple.com>
+
+ Rubber stamped by Adele.
+
+ Roll out WebKit changes from from r21052 to fix regression noted in
+ <rdar://problem/5159556> 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 <sfalken@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Beth, Hyatt, Ada, and Darin
+
+ <rdar://problem/5011477> and <rdar://problem/5011514>
+ 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 <mitz@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Changed an apostrophe (') into a right single quotation mark (U+2019).
+
+ * WebInspector/webInspector/inspector.js:
+
+2007-04-24 Mitz Pettel <mitz@webkit.org>
+
+ 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 <adele@apple.com>
+
+ Fixed and reviewed by Darin, Adele, and Oliver.
+
+ WebKit part of fix for <rdar://problem/5107538> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5124364> 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ Bug 6658: World leak when closing inspected window
+ http://bugs.webkit.org/show_bug.cgi?id=6658 and <rdar://problem/4411863>
+
+ 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ The fix for <rdar://problem/4976681> 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - fix for <rdar://problem/5100240> 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Oliver (Black Sheep)
+
+ <rdar://problem/3559794>
+ [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 <andersca@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5085897> 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 <a> tag and clicking on the plug-in would cause the
+ URL pointed to by the <a> 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 <oliver@apple.com>
+
+ Reviewed by Adam.
+
+ Fix for <rdar://problem/4960912> -- 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 <andersca@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5137002>
+ 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 <mrowe@apple.com>
+
+ Reviewed by Oliver and Adam.
+
+ <rdar://problem/5141290> WebAssertions.h is still needed by some internal clients.
+
+ * Misc/WebAssertions.h: Added.
+ * WebKit.xcodeproj/project.pbxproj:
+
+2007-04-17 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Tim
+
+ <rdar://problem/5008925>
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adam
+
+ - fixed <rdar://problem/5103009> 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 <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ - fixed <rdar://problem/5138492> 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4184640> "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 <darin@apple.com>
+
+ 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
+ <http://my.fedex.com> 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 <darin@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=13303
+ <rdar://problem/5126341> 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 <oliver@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Dave Harrison.
+
+ <rdar://problem/5132727> Soho Mail build fails because of renamed SPI
+
+ * WebView/WebUIDelegatePrivate.h: define WebMenuItemTagSearchInGoogle as OldWebMenuItemTagSearchWeb
+
+2007-04-13 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Oliver.
+
+ <rdar://problem/5130686> Using WebPreferencesPrivate.h requires modifying framework search path
+
+ * WebView/WebPreferencesPrivate.h: Remove unneeded #ifdef.
+
+2007-04-12 Deneb Meketa <dmeketa@adobe.com>
+
+ 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 <beidson@apple.com>
+
+ Build fix for case sensitive file systems
+
+ * Misc/WebNSPasteboardExtras.mm:
+ * WebCoreSupport/WebPasteboardHelper.mm:
+
+2007-04-11 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Anders
+
+ - WebKit part of fix for:
+ <rdar://problem/5128697> 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 <oliver@apple.com>
+
+ 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 <rdar://problem/5058731> -- 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 <morganl.webkit@yahoo.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Darin
+
+ <rdar://problem/4887095> - 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 <ggaren@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5081860>
+ REGRESSION: Select All for standalone image has no visible effect but does change state
+
+ <rdar://problem/5081840>
+ 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5026893>
+ 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 <andersca@apple.com>
+
+ Reviewed by Geoff, Ada and John.
+
+ <rdar://problem/4600978> 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 <timothy@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/5083023>
+ 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 <kmccullough@apple.com>
+
+ 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 <andersca@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5107536>
+ 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 <andersca@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/5028178>
+ 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 <andersca@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=13026
+ <rdar://problem/5061026> incomplete render of menu
+ (assertion failing in -[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:])
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=13120
+ <rdar://problem/5080339> 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 <rdar://problem/4939511> 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 <adele@apple.com>
+
+ 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 <andersca@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Beth Dakin, reviewed by Maciej Stachowiak.
+
+ Layout test for <rdar://problem/5091330> 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 <bdakin@apple.com>
+
+ Reviewed by Brady.
+
+ Fix for <rdar://problem/4674537> REGRESSION: Adobe Acrobat 8 - Text
+ blinks when mouse is moved, and is invisible otherwise
+
+ -and-
+
+ <rdar://problem/4992521> 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reluctantly tolerated by Darin Adler.
+
+ Fixed <rdar://problem/5091330> 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 <adele@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Kevin M.
+
+ WebKit part of fix for <rdar://problem/5095515> 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:
+ <rdar://problem/5095515> VitalSource Bookshelf should not pass return statements into stringByEvaluatingJavaScriptFromString
+
+ * WebView/WebView.mm: (-[WebView stringByEvaluatingJavaScriptFromString:]):
+
+2007-03-27 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim
+
+ - fixed <rdar://problem/5092556> 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 <mrowe@apple.com>
+
+ Reviewed by Dave Harrison.
+
+ * Configurations/WebKit.xcconfig: Include UMBRELLA_FRAMEWORKS_DIR in framework search path.
+
+2007-03-26 Antti Koivisto <antti@apple.com>
+
+ 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
+ <rdar://problem/5076249>
+
+ * WebCoreSupport/WebSystemInterface.m:
+ (InitWebCoreSystemInterface): Expose GetWheelEventDeltas()
+
+2007-03-26 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Dave Harrison
+
+ - fixed <rdar://problem/4769772> 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 <hyatt@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Adam
+
+ <rdar://problem/5086210> - Move RetainPtr to WTF
+
+ * ForwardingHeaders/wtf/RetainPtr.h: Added.
+ * History/WebBackForwardList.mm: Changed #import to <wtf/RetainPtr.h>
+ * WebCoreSupport/WebEditorClient.h: Ditto
+ * WebCoreSupport/WebFrameLoaderClient.h: Ditto
+ * WebView/WebDocumentLoaderMac.h: Ditto
+
+2007-03-24 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Adele
+
+ - fixed <rdar://problem/5084872> 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 <mrowe@apple.com>
+
+ Rubber-stamped by Darin.
+
+ * Configurations/WebKit.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
+
+2007-03-23 Mark Rowe <mrowe@apple.com>
+
+ Build fix for when BUILDING_ON_TIGER is not defined.
+
+ * Misc/WebTypesInternal.h:
+ * WebView/WebHTMLView.mm:
+
+2007-03-22 David Kilzer <ddkilzer@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - fix <rdar://problem/5074630> 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 <acarlsson@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/5067983>
+ 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 <ggaren@apple.com>
+
+ 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 <proton@wiretapped.net>
+
+ 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 <darin@apple.com>
+
+ * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
+
+2007-03-19 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Justin
+
+ - fixed <rdar://problem/5071238> 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 <aroben@apple.com>
+
+ 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 <proton@wiretapped.net>
+
+ 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 <mrowe@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ Discovered while working on <rdar://problem/5070334> 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 <timothy@apple.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Maciej
+
+ <rdar://problem/4429701>
+ 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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ * Fixes: <rdar://problem/4927747> 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 <kdecker@apple.com>
+
+ Reviewed by Anders.
+
+ Fixed: <rdar://problem/5001428> 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 <mrowe@apple.com>
+
+ Reviewed by Antti.
+
+ Fix for <rdar://problem/5065060> 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5009625> 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 <acarlsson@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5058714>
+ 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 <adele@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ Reviewed by Maciej.
+
+ Fix for <rdar://problem/4277074> 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 <timothy@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/5057117> 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 <harrison@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4743256> 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 <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5057575>
+ 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 <oliver@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12964
+ <rdar://problem/5045717> 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fixed <rdar://problem/4587763> 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 <ddkilzer@webkit.org>
+
+ 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 <mrowe@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/5051827> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4976254> Please get off _NSSoftLinkingGetFrameworkFuncPtr
+
+ Use dlopen and dlsym to access the DCSShowDictionaryServiceWindow function.
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
+
+2007-03-09 Darin Adler <darin@apple.com>
+
+ Reviewed by Justin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8928
+ <rdar://problem/5045708> 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 <darin@apple.com>
+
+ * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
+
+2007-03-08 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/5051616> 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 <bruceq@apple.com>
+
+ 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 <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/4561772> 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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/4664697> 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 <acarlsson@apple.com>
+
+ Try fixing the buildbot build.
+
+ * Plugins/WebBaseNetscapePluginView.mm:
+ (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
+
+2007-03-07 Anders Carlsson <acarlsson@apple.com>
+
+ Leopard build fix.
+
+ * Plugins/WebBaseNetscapePluginView.mm:
+
+2007-03-07 Bruce Q Hammond <bruceq@apple.com>
+
+ 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.
+ <rdar://problem/4975122>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Darin.
+
+ Use HardRetain/HardRelease.
+
+ * WebView/WebDocumentLoaderMac.mm:
+ (WebDocumentLoaderMac::setDataSource):
+ (WebDocumentLoaderMac::attachToFrame):
+ (WebDocumentLoaderMac::detachFromFrame):
+ (WebDocumentLoaderMac::increaseLoadCount):
+ (WebDocumentLoaderMac::decreaseLoadCount):
+
+2007-03-07 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4961259>
+ 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 <adele@apple.com>
+
+ 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
+ <rdar://problem/4823129> REGRESSION: IME key events different in nightly
+ <rdar://problem/4759563> 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 <acarlsson@apple.com>
+
+ Reviewed by Brady.
+
+ Update to match WebCore.
+
+ * Plugins/WebNetscapePluginStream.mm:
+ (-[WebNetscapePluginStream start]):
+
+2007-03-07 Jim Correia <jim.correia@pobox.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <kmccullough@apple.com>
+
+ Reviewed by Darin.
+
+ - Rename a function to clarify its purpose.
+
+ * WebView/WebView.mm:
+ (+[WebView registerURLSchemeAsLocal:]):
+ * WebView/WebViewPrivate.h:
+
+2007-03-06 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Adam.
+
+ Update for WebCore changes.
+
+ * WebCoreSupport/WebFrameLoaderClient.h:
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ (WebFrameLoaderClient::userAgent):
+
+2007-03-05 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Adam, Darin.
+
+ <rdar://problem/5025212>
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin and Kevin D
+
+ - fixed <rdar://problem/5038087> 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 <kmccullough@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by harrison
+
+ <rdar://problem/4838199>
+ 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 <oliver@apple.com>
+
+ Reviewed by Maciej.
+
+ Fixes <rdar://problem/5012009>
+
+ 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Beth.
+
+ Fix for <rdar://problem/4887423> REGRESSION: search results popup menu strings are not localized
+ and <rdar://problem/3517227> 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 <mrowe@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5028473> 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 <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/4985524> 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 <aroben@apple.com>
+
+ Reviewed by Beth.
+
+ Fix <rdar://problem/5011905> 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 <mitz@webkit.org>
+
+ 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 <sullivan@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ Update web inspector to account for border-fit.
+
+ Reviewed by darin
+
+ * WebInspector/webInspector/inspector.js:
+
+2007-02-26 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mitz@webkit.org>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Brady.
+
+ <rdar://problem/5016395> _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 <adele@apple.com>
+
+ Reviewed by John.
+
+ Updating this image to match the one in WebCore.
+
+ * WebKit.vcproj/textAreaResizeCorner.png:
+
+2007-02-22 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Adam.
+
+ Fix for http://bugs.webkit.org/show_bug.cgi?id=12399 REGRESSION:
+ Unable to prevent default context menu from appearing. <rdar://
+ problem/5017416>
+
+ * 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 <sullivan@apple.com>
+
+ 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 <mitz@webkit.org>
+
+ 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 <mitz@webkit.org>
+
+ 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 <bdakin@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Reviewed by Darin and Anders.
+
+ Update WebKit for WebCore fix for <rdar://problem/4736215> 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 <timothy@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4989344> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4900579> 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 <justin.garcia@apple.com>
+
+ Reviewed by darin
+
+ <rdar://problem/4838199>
+ 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 <sullivan@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Mitz.
+
+ <rdar://problem/5009627> 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 <timothy@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/4841078> 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 <acarlsson@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/4868242>
+ 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 <beidson@apple.com>
+
+ Reviewed by Oliver
+
+ <rdar://problem/4985321> - 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 <lars@trolltech.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ - fixed <rdar://problem/4811446> "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 <beidson@apple.com>
+
+ 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 <ap@webkit.org>
+
+ 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 <oliver@apple.com>
+
+ 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 <ap@webkit.org>
+
+ 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 <mrowe@apple.com>
+
+ 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 <kmccullough@apple.com>
+
+ Reviewed by .
+
+ - reverting change to not cause regressions and performance problems.
+
+ * Misc/WebNSAttributedStringExtras.mm:
+ (fileWrapperForElement):
+
+2007-02-12 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12677
+ <rdar://problem/4759563> REGRESSION: Return key is always sent when you confirm
+ a clause in kotoeri (12677)
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12596
+ <rdar://problem/4794346> REGRESSION: Tab key shifts form field focus instead of
+ navigating prediction window (12596)
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=10010
+ <rdar://problem/4822935> REGRESSION: Pressing Return with unconfirmed text in
+ Hangul inserts carriage return (10010)
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12531
+ <rdar://problem/4975126> REGRESSION: Inline text input types repeated keys in
+ latest nightly (r19336) (12531)
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12539
+ <rdar://problem/4975130> 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 <sam@webkit.org>
+
+ 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 <mitz@webkit.org>
+
+ 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 <kdecker@apple.com>
+
+ Reviewed by Darin & Maciej.
+
+ Fixed: <rdar://problem/4930688> 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 <justin.garcia@apple.com>
+
+ Reviewed by darin
+
+ <rdar://problem/4975120>
+ REGRESSION: double-cursor after switching window away/back (11770)
+ <http://bugs.webkit.org/show_bug.cgi?id=11328>
+ 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 <bdakin@apple.com>
+
+ Reviewed by Darin.
+
+ Fix for <rdar://problem/4674537> 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 <timothy@apple.com>
+
+ Reviewed by Brady.
+
+ * WebKit.exp: Add WebBaseNetscapePluginView to the export list.
+
+2007-02-09 John Sullivan <sullivan@apple.com>
+
+ 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 <KMcCullough@apple.com>
+
+ Reviewed by
+
+ - fixing a build breakage.
+
+ * Misc/WebNSAttributedStringExtras.mm:
+ (fileWrapperForElement):
+
+2007-02-07 Charles Ying <charles_ying@yahoo.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ Move shouldInterruptJavaScript to the Chrome.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::shouldInterruptJavaScript):
+ * WebCoreSupport/WebFrameBridge.mm:
+
+2007-02-07 John Sullivan <sullivan@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/4943650> 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 <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Ollie and Geoff
+
+ - fixed <rdar://problem/4982345> 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fixed <rdar://problem/4974420> 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 <sullivan@apple.com>
+
+ 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 <kdecker@apple.com>
+
+ Fixed: <rdar://problem/4976681> 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 <darin@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=11080
+ <rdar://problem/4826648> 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 <darin@apple.com>
+
+ 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 <ddkilzer@webkit.org>
+
+ 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 <mrowe@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ Reviewed by Adam.
+
+ Fix for <rdar://problem/4975161> 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 <ggaren@apple.com>
+
+ 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 <webkit@nickshanks.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/4730469> 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 <oliver@apple.com>
+
+ Reviewed by Adam.
+
+ Migrating methods to WebCore
+
+ * WebCoreSupport/WebFrameBridge.mm:
+ * WebView/WebHTMLView.mm:
+ * WebView/WebHTMLViewPrivate.h:
+
+2007-01-31 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4886776>
+ 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 <zimmermann@kde.org>
+
+ Reviewed by Maciej.
+
+ Fix run-pageloadtest to actually work again.
+
+ * Misc/WebNSWindowExtras.m:
+ (+[NSWindow _webkit_displayThrottledWindows]):
+
+2007-01-31 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin.
+
+ WebKit part of fix for <rdar://problem/4521461> 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 <alice.liu@apple.com>
+
+ 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 <darin@apple.com>
+
+ - fix build
+
+ * ForwardingHeaders/wtf/ListHashSet.h: Added.
+
+2007-01-31 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ - related fix for <rdar://problem/4964407> 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 <mjs@apple.com>
+
+ 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 <mrowe@apple.com>
+
+ 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 <mrowe@apple.com>
+
+ Build fix.
+
+ * WebView/WebView.mm:
+ (-[WebView initWithFrame:frameName:groupName:]):
+
+2007-01-31 Mark Rowe <mrowe@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Oliver
+
+ This is a corollary to <rdar://problem/4944887> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4961953> Stop using NSString deprecated methods like initWithCString:
+
+ * Misc/WebNSImageExtras.m:
+ (-[NSImage _web_saveAndOpen]):
+ * WebKit.xcodeproj/project.pbxproj:
+
+2007-01-30 Mitz Pettel <mitz@webkit.org>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ <rdar://problem/4964407> 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 <graham.dennis@gmail.com>
+
+ 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 <jim.correia@pobox.com>
+
+ 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 <adachan@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <oliver@apple.com>
+
+ build fix
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+
+2007-01-25 Oliver Hunt <oliver@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <ddkilzer@webkit.org>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Kevin.
+
+ <rdar://problem/4958902> 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Beth.
+
+ * WebInspector/webInspector/inspector.js: Updated for new computed style properties.
+
+2007-01-26 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by andersca.
+
+ Fixed: <rdar://problem/4946922> 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 <kdecker@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Beth.
+
+ - fix <rdar://problem/4952766> 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 <kdecker@apple.com>
+
+ Reviewed by andersca.
+
+ A few tweaks with of a fix done by Steve Gehrman.
+
+ Fixed: <rdar://problem/4946922> 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 <sullivan@apple.com>
+
+ Reviewed by Kevin, Geoff, Brady, and Darin
+
+ - fixed <rdar://problem/4918446> 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 <oliver@apple.com>
+
+ Build fix
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+ (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
+
+2007-01-24 Oliver Hunt <ioliver@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ - Fix for <rdar://problem/4950527> 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 <mrowe@apple.com>
+
+ Reviewed by Maciej.
+
+ * Info.plist: Update copyright string.
+
+2007-01-24 Darin Adler <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ WebKit part of fix for <rdar://problem/4946753>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 <lars@trolltech.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
+ Tiger build fix: remove unused variable for return value of dictionaryServiceWindowShow
+
+2007-01-22 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Adam and Darin
+
+ - fixed <rdar://problem/4794320> "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 <darin@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Reviewed by Beth.
+
+ Fix <rdar://problem/4942294> 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - WebKit part of fix for: <rdar://problem/4451715> 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Yet another build fix.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::setStatusbarText):
+
+2007-01-18 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Reviewed by Beth.
+
+ Fix <rdar://problem/4939672> 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 <beidson@apple.com>
+
+ Reviewed by Adele
+
+ <rdar://problem/4917290> -
+ 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 <kdecker@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/4939511> 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 <alice.liu@apple.com>
+
+ Reviewed by Harrison.
+
+ Fix for <rdar://problem/4894155> 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - WebKit part of fix for <rdar://problem/4462420> 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12278
+ <rdar://problem/4928705> REGRESSION(r13070): Dragged image size includes padding (12278)
+
+ * Misc/WebElementDictionary.mm: (-[WebElementDictionary _imageRect]):
+ Call HitTestResult::imageRect, not HitTestResult::boundingBox.
+
+2007-01-17 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/4887781> 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 <alice.liu@apple.com>
+
+ Reviewed by harrison.
+
+ Fixed <rdar://problem/4921134> 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 <justin.garcia@apple.com>
+
+ Reviewed by mjs
+
+ <rdar://problem/4810960>
+ 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 <acarlsson@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <ddkilzer@kilzer.net>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mitz@webkit.org>
+
+ 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 <http://bugs.webkit.org/show_bug.cgi?id=12087>
+ is fixed.
+
+2007-01-10 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by John.
+
+ Fix for <rdar://problem/4914258> 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 <timothy@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Brady.
+
+ Remove bridge functions that are implemented directly in FrameLoader now.
+
+ * WebCoreSupport/WebFrameBridge.mm:
+
+2007-01-08 Sam Weinig <sam@webkit.org>
+
+ 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 <bdakin@apple.com>
+
+ 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 <sam@webkit.org>
+
+ 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 <proton@wiretapped.net>
+
+ Reviewed by Mark.
+
+ * WebInspector/webInspector/inspector.js: Hide default values of
+ -webkit-column styles in WebInspector.
+
+2007-01-05 Darin Adler <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Darin.
+
+ Fix build.
+
+ * WebCoreSupport/WebFrameLoaderClient.h:
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ (WebFrameLoaderClient::dispatchCreatePage):
+
+2007-01-05 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <aroben@apple.com>
+
+ Reviewed by Geoff, cheered by others.
+
+ Dead code elimination.
+
+ * WebView/WebHTMLView.m:
+
+2007-01-04 Adam Roben <aroben@apple.com>
+
+ 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 <ddkilzer@webkit.org>
+
+ 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 <aroben@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Brady.
+
+ FrameLoaderClient changed yet again.
+
+ * WebCoreSupport/WebFrameLoaderClient.h:
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
+ (WebFrameLoaderClient::dispatchWillSendRequest):
+
+2007-01-04 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Adam.
+
+ FrameLoaderClient changed again.
+
+ * WebCoreSupport/WebFrameLoaderClient.h:
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ (WebFrameLoaderClient::download):
+ (WebFrameLoaderClient::willUseArchive):
+
+2007-01-04 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Adam.
+
+ No need to hit test twice.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView menuForEvent:]):
+
+2007-01-04 Beth Dakin <bdakin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <sullivan@apple.com>
+
+ * WebView/WebPDFView.mm:
+ (-[WebPDFView _openWithFinder:]):
+ Tiger build fix: use [NSNumber initWithInt:] rather than the new [NSNumber initWithInteger:]
+
+2007-01-03 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4145714> 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 <bdakin@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ - Fix for <rdar://problem/4455147> 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 <beidson@apple.com>
+
+ 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
+ <rdar://problem/4905705>
+
+ * History/WebBackForwardList.mm:
+ (-[WebBackForwardList backItem]):
+ (-[WebBackForwardList currentItem]):
+ (-[WebBackForwardList forwardItem]):
+ (-[WebBackForwardList itemAtIndex:]):
+
+2007-01-02 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Geoff.
+
+ Remove un-used function.
+
+ * WebCoreSupport/WebContextMenuClient.h:
+ * WebCoreSupport/WebContextMenuClient.mm:
+
+2007-01-02 Brady Eidson <beidson@apple.com>
+
+ Reviewed extensively and repeatedly by Darin
+
+ <rdar://problem/4887137> - 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4892525> 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 <zimmermann@kde.org>
+
+ Reviewed by Timothy.
+
+ Fix inspection of RenderSVGInlineText objects (#text nodes in SVG documents).
+
+ * WebInspector/WebInspector.m:
+ (-[WebInspector _highlightNode:]):
+
+2007-01-02 Beth Dakin <bdakin@apple.com>
+
+ 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 <mitz@webkit.org>
+
+ 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 <pewtermoose@gmail.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Fixed <rdar://problem/4901629> 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 <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Updated <rdar://problem/4871518> 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 <ggaren@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Fixed <rdar://problem/4740328> 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 <ggaren@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Some cleanup in preparation for fixing <rdar://problem/4740328> 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 <ggaren@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Fixed <rdar://problem/4778898> 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Some refactoring in preparation for fixing <rdar://problem/4778898>
+ 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 <ddkilzer@webkit.org>
+
+ Removed empty directory.
+
+ * WebKit/Loader: Removed.
+
+2006-12-22 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Fixed <rdar://problem/4871518> 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 <sullivan@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <bdash@webkit.org>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fix for unrepro infinite recursion bug:
+ <rdar://problem/4448181> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4891774> 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 <adachan@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Adam.
+
+ WebKit part of fix for:
+ <rdar://problem/4463829> Switch to use new search field implementation for <input type="search">
+
+ * 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 <bdakin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <marv.decker@gmail.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Darin.
+
+ Include ResourceError.h.
+
+ * Plugins/WebNetscapePluginStream.mm:
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-12-14 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4827549> need NSRange-based selection support exposed.
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _selectedNSRange]):
+ (-[WebFrame _selectNSRange:]):
+ * WebView/WebFramePrivate.h:
+
+2006-12-14 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Fix previous checkin where I committed the wrong file.
+
+ <rdar://problem/4863611> 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 <hyatt@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Rolling out a change that broke Mail stationary.
+ <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
+
+ * WebView/WebUnarchivingState.m:
+ (-[WebUnarchivingState archivedResourceForURL:]):
+
+2006-12-08 Don Gibson <dgibson77@gmail.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Brady.
+
+ <rdar://problem/4863611> Xyle Scope crashes at launch due to WebCore-521.29.3
+
+ * WebView/WebPreferences.m:
+ (-[WebPreferences editableLinkBehavior]):
+ Add nil check.
+
+2006-12-07 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Brady.
+
+ Build fix for WebCore ContextMenus. It got broken by r18046.
+
+ * WebView/WebHTMLView.m:
+ (-[NSArray menuForEvent:]):
+
+2006-12-07 Beth Dakin <bdakin@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by John Sullivan
+
+ Fixes http://bugs.webkit.org/show_bug.cgi?id=11675 and <rdar://4857669>
+ 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 <beidson@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adam
+
+ Old context-menu mechanism fix for:
+ <rdar://problem/4864351> 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 <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ WebKit part of fix for:
+ <rdar://problem/4817188> 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Anders
+
+ - fixed <rdar://problem/4857833> 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 <bdakin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Adam.
+
+ <rdar://problem/4841432> 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 <ggaren@apple.com>
+
+ 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 <pewtermoose@gmail.com>
+
+ 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 <pewtermoose@gmail.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ Fixed <rdar://problem/4844855> 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 <acarlsson@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Adam.
+
+ Fixed <rdar://problem/4844848> 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 <bdakin@apple.com>
+
+ 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 <adachan@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Adam.
+
+ Move addMessageToConsole to Chrome.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::addMessageToConsole):
+ * WebCoreSupport/WebFrameBridge.mm:
+
+2006-11-27 Brady Eidson <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <sam@webkit.org>
+
+ 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 <bdakin@apple.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4841044> 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 <dgibson77@gmail.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/4841123>
+ 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 <aroben@apple.com>
+
+ 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 <bdakin@apple.com>
+ & Adam Roben <aroben@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Sarge
+
+ SPI addition
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
+ * WebView/WebFrameInternal.h:
+ * WebView/WebFramePrivate.h:
+
+2006-11-15 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Adele
+
+ <rdar://problem/4838729> - Replace mistakenly removed SPI
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _handleAutoscrollForMouseDragged:]):
+ * WebView/WebHTMLViewPrivate.h:
+
+2006-11-15 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Harrison.
+
+ <rdar://problem/4766635> 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ I must stop trying to force DWARF on the world.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-11-14 Darin Adler <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Try fixing the build.
+
+ * WebCoreSupport/WebEditorClient.mm:
+ (-[WebEditorUndoTarget undoEditing:]):
+ (-[WebEditorUndoTarget redoEditing:]):
+
+2006-11-14 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <ap@webkit.org>
+
+ 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 <beidson@apple.com>
+
+ Rubberstamped by Anders
+
+ Changed some #includes from <WebKit/foo.h> to "foo.h"
+
+ * History/WebBackForwardList.m:
+ * History/WebHistory.m:
+
+2006-11-11 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <oliver@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Darin
+
+ <rdar://problem/4829080>
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Oliver.
+
+ <rdar://problem/4825370>
+ 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 <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <graham.dennis@gmail.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Oliver.
+
+ - removed unneeded (and obsolete) header includes
+
+ * WebCoreSupport/WebFrameBridge.mm:
+ * WebView/WebFrame.mm:
+
+2006-11-05 Darin Adler <darin@apple.com>
+
+ - 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 <darin@apple.com>
+
+ 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 <guiheneuf@gmail.com>
+
+ 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 <ggaren@apple.com>
+
+ Forgot to add these two files. Oops.
+
+ * WebCoreSupport/WebChromeClient.h: Added.
+ * WebCoreSupport/WebChromeClient.mm: Added.
+
+2006-11-02 Geoffrey Garen <ggaren@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Adam Roben
+
+ - fixed <rdar://problem/4801351> 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 <bdash@webkit.org>
+
+ 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 <bdakin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <marv.decker@gmail.com>
+
+ 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 <darin@apple.com>
+
+ * Plugins/WebBaseNetscapePluginView.mm:
+ (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
+ Fix comment.
+
+2006-10-30 John Sullivan <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ * 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 <sullivan@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ - added ResourceResponse class and didReceiveResponse delegate call
+
+ * WebCoreSupport/WebFrameBridge.mm: Removed no longer needed
+ expiresTimeForResponse: method.
+
+2006-10-29 Darin Adler <darin@apple.com>
+
+ - update for the WebCore rename
+
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ * WebView/WebFrame.mm:
+
+2006-10-29 Darin Adler <darin@apple.com>
+
+ - 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <bdakin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ Reviewed by Maciej.
+
+ Moved some WebCoreFrameBridge functions into FrameLoader.
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _numPendingOrLoadingRequests:]):
+
+2006-10-27 Timothy Hatcher <timothy@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Anders
+
+ * WebView/WebHTMLView.m:
+ (-[NSArray checkSpelling:]):
+ call advanceToNextMisspelling directly on FrameMac, bypassing bridge
+ (-[NSArray showGuessPanel:]):
+ ditto
+
+2006-10-27 Darin Adler <darin@apple.com>
+
+ - build fix
+
+ * WebCoreSupport/WebFrameLoaderClient.mm: Corrected header file name.
+
+2006-10-27 Darin Adler <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Anders
+
+ * WebView/WebFrame.mm:
+ now includes <WebCore/Document.h> and <WebCore/DocumentMarker.h>
+ (-[WebFrame _unmarkAllBadGrammar]):
+ filled in guts
+ (-[WebFrame _unmarkAllMisspellings]):
+ rewrote to call Document directly, bypassing bridge
+
+2006-10-26 John Sullivan <sullivan@apple.com>
+
+ * 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 <sullivan@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <bdash@webkit.org>
+
+ Reviewed by Anders.
+
+ Build fix for the Buildbot.
+
+ * WebView/WebHTMLView.m:
+ (-[NSArray _addToStyle:fontA:fontB:]): Explicit cast.
+
+2006-10-25 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ <rdar://problem/4785575> REGRESSION: form resubmission warning occurs twice, then Safari crashes in autorelease pool
+ <rdar://problem/4799383> 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 <acarlsson@apple.com>
+
+ Reviewed by Darin.
+
+ * WebKitPrefix.h:
+ Include FastMalloc.h from C++ code.
+
+2006-10-24 Darin Adler <darin@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4801331> "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 <timothy@apple.com>
+
+ Reviewed by Anders.
+
+ <rdar://problem/4588878> 'WebHTMLView' may not respond to '-_webView'
+
+ * Misc/WebNSViewExtras.h:
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _webView]):
+
+2006-10-24 Brady Eidson <beidson@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <ggaren@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ * 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 <sullivan@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ Reviewed by Tim H.
+
+ - Add DOMHTMLFormElementPrivate.h to the project.
+
+ * MigrateHeaders.make:
+
+2006-10-21 Darin Adler <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4478625> 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 <alice.liu@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ Build fix.
+
+ * WebCoreSupport/WebEditorClient.h:
+ * WebCoreSupport/WebEditorClient.mm:
+ (WebEditorClient::setWebView):
+
+2006-10-20 Alice Liu <alice.liu@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ 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 <darin@apple.com>
+
+ - rolled out my loader change; caused world leak and possibly a plug-in crash
+
+2006-10-20 Darin Adler <darin@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fixed <rdar://problem/4794935> 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 <timothy@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Build fix - 2gig is on that pesky signed/unsigned limit...
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge getObjectCacheSize]):
+
+2006-10-19 Brady Eidson <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Hyatt
+
+ Double the default memory cache size
+
+ * WebView/WebPreferences.m:
+ (+[WebPreferences initialize]):
+
+2006-10-19 John Sullivan <sullivan@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Kevin Decker
+
+ - fixed <rdar://problem/4792761> 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 <sam.weinig@gmail.com>
+
+ Reviewed by ap.
+
+ Win32 build fix.
+
+ * COM/WebFrame.cpp:
+ (WebFrame::initWithName):
+ (WebFrame::createNewWindow):
+
+2006-10-19 Mitz Pettel <mitz@webkit.org>
+
+ Reviewed and landed by ap.
+
+ - fixed the inspector's tree popup
+
+ * WebInspector/webInspector/inspector.html:
+
+2006-10-18 Sam Weinig <sam.weinig@gmail.com>
+
+ Reviewed by Maciej.
+
+ Win32 build fix.
+
+ * COM/WebFrame.cpp:
+ (WebFrame::createNewWindow):
+ * COM/WebFrame.h:
+
+2006-10-18 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by harrison
+
+ <rdar://problem/4765600>
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by harrison
+
+ <rdar://problem/3655385>
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <KMcCullough@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Oliver.
+
+ - liberate more WebKit code down to WebCore
+
+ * WebCoreSupport/WebFrameBridge.h:
+ * WebCoreSupport/WebFrameBridge.m:
+
+2006-10-12 Adele Peterson <adele@apple.com>
+
+ Reviewed by Maciej.
+
+ WebKit part of fix for <rdar://problem/4450613> 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 <morganl.webkit@yahoo.com>
+
+ 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 <darin@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <darin@apple.com>
+
+ - 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 <mjs@apple.com>
+
+ 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 <bdash@webkit.org>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Not reviewed, build fix.
+
+ - added forgotten files
+
+ * Loader/WebPolicyDecider.h: Added.
+ * Loader/WebPolicyDecider.m: Added.
+ (-[WebPolicyDecider invalidate]):
+
+2006-10-09 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ A *real* fake fix for the layouttest problem until the real fix
+
+ * Loader/WebFrameLoader.m:
+ (-[WebFrameLoader _notifyIconChanged:]):
+
+2006-10-09 Brady Eidson <beidson@apple.com>
+
+ Quick layouttest fix until I make the real fix
+
+ * Loader/WebFrameLoader.m:
+
+2006-10-09 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Not reviewed.
+
+ - fix accidental build break due to editing while committing
+
+ * Loader/WebFrameLoader.m:
+
+2006-10-08 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ - 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <bdash@webkit.org>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <bdash@webkit.org>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Rubber stamped by Darin.
+
+ - removed includes of unused headers.
+
+ * WebView/WebDataSource.m:
+
+2006-10-06 Maciej Stachowiak <mjs@apple.com>
+
+ Not reviewed.
+
+ - fix build breakage
+
+ * Loader/WebFrameLoader.m:
+ (-[WebFrameLoader willChangeTitleForDocumentLoadState:]):
+ (-[WebFrameLoader didChangeTitleForDocumentLoadState:]):
+
+2006-10-06 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <ap@nypop.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <vladimir.olexa@gmail.com>
+
+ 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 <morganl.webkit@yahoo.com>
+
+ 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 <dgibson77@gmail.com>
+
+ 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 <marv.decker@gmail.com>
+
+ 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 <bdash@webkit.org>
+
+ Reviewed by NOBODY (build fix).
+
+ * WebView/WebView.m:
+ (-[WebView scrollDOMRangeToVisible:]): Move scrollDOMRangeToVisible: into the correct category.
+
+2006-09-26 David Smith <catfish.man@gmail.com>
+
+ 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 <graham.dennis@gmail.com>
+
+ Reviewed by Timothy.
+
+ <http://bugs.webkit.org/show_bug.cgi?id=10338>
+ 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 <justin.garcia@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by geoff
+
+ <rdar://problem/4763519> 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 <aroben@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by john
+
+ <rdar://problem/4757583>
+ REGRESSION: tabbing into page focuses wrong control on 2nd pass
+ <rdar://problem/4757594>
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <alice.liu@apple.com>
+
+ fixing the windows build
+
+ * COM/WebView.cpp:
+ (WebView::mouseMoved):
+ (WebView::mouseDown):
+ (WebView::mouseUp):
+ (WebView::mouseDoubleClick):
+
+2006-09-27 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by thatcher
+
+ <rdar://problem/4044271>
+ 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 <morganl.webkit@yahoo.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by John and TimH.
+
+ <rdar://problem/4743256> 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by john
+
+ <http://bugs.webkit.org/show_bug.cgi?id=7165>
+ 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 <beidson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Tim O.
+
+ <rdar://problem/4741392> 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 <timo@apple.com>
+
+ Reviewed by Darin.
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase init]):
+ Fixed a typo.
+
+2006-09-20 Brady Eidson <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Sarge Decker
+
+ <rdar://problem/4739892> and <rdar://problem/4729797>
+ - 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 <ap@nypop.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4494340> 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 <beidson@apple.com>
+
+ 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 <opendarwin.org@bdash.net.nz>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Brady.
+
+ Make new style ObjC methods public API.
+
+ * MigrateHeaders.make:
+
+2006-09-15 Sam Weinig <sam.weinig@gmail.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Tim O.
+
+ <rdar://problem/4726416> 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 <morlmor@yahoo.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <timo@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <ap@nypop.com>
+
+ * 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 <morlmor@yahoocom>
+
+ Reviewed/landed by aroben.
+
+ Fixes bug 10743: Windows build is busted.
+
+ * COM/WebView.cpp:
+ (WebView::keyPress):
+
+2006-09-05 Timothy Hatcher <timothy@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Tim O.
+
+ <rdar://problem/4682225> 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 <timothy@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <morlmor@yahoo.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <adele@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Removed wkSecureEventInput and wkSetSecureEventInput, since this can be done with API.
+
+ * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
+
+2006-08-31 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick
+
+ - fixed <rdar://problem/4711200> 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 <adele@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by John
+
+ <rdar://problem/4707718> 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 <timothy@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <adele@apple.com>
+
+ 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 <karladam@yahoo-inc.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Kevin Decker (Sarge)
+
+ <rdar://problem/4678414> - 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 <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/4688618> 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 <sam.weinig@gmail.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Darin Adler.
+
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView createPluginScriptableObject]):
+ Removed a bogus typecast.
+
+2006-08-28 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
+ <http://bugs.webkit.org/show_bug.cgi?id=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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ Fixed up some leaks on [WebIconDatabase init]
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase init]):
+
+2006-08-24 Timothy Hatcher <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/4683948> 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ Reviewed by John
+
+ Quick ICONDEBUG flag fix
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase _applicationWillTerminate:]):
+
+2006-08-21 Brady Eidson <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported in 64-bit
+
+ * WebKit.LP64.exp:
+
+2006-08-17 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/4633896> -[WebView close] should clear all delegates and call setHostWindow:nil
+ <rdar://problem/4649759> 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 <beidson@apple.com>
+
+ Reviewed by Maciej
+
+ * Misc/WebIconDatabase.m: Pruned unused method
+ * Misc/WebIconDatabasePrivate.h: Ditto
+
+
+2006-08-15 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <http://bugs.webkit.org/show_bug.cgi?id=8980>
+ ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])
+
+ <rdar://problem/4526052> 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 <opendarwin.org@bdash.net.nz>
+
+ Reviewed by Tim H.
+
+ Build fix: DWARF and -gfull are incompatible with symbol separation.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
+
+ 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 <mjs@apple.com>
+
+ 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 <opendarwin.org@bdash.net.nz>
+
+ 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 <graham.dennis@gmail.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Darin.
+
+ <http://bugs.webkit.org/show_bug.cgi?id=10111> - Menu flickers over Flash content
+ <rdar://problem/3052546> 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 <beidson@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Needed for <rdar://problem/4678070>.
+
+ * 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 <rdar://problem/4318269>.
+
+2006-08-11 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Darin
+
+ - fixed <rdar://problem/4522894> 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 <beidson@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <ddkilzer@kilzer.net>
+
+ 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/4667460> 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 <beidson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <sam.weinig@gmail.com>
+
+ 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 <darin@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ - fix storage leak
+
+ * WebView/WebFrame.m: (-[WebFramePrivate dealloc]): Release the frame loader.
+
+2006-08-02 Timothy Hatcher <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <aroben@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4480737> 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 <mjs@apple.com>
+
+ - fix build after last change
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _checkLoadCompleteForThisFrame]):
+
+2006-08-01 Maciej Stachowiak <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Anders.
+
+ Fixed an assertion failure I ran into while debugging <rdar://problem/4652683>.
+
+ * 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 <mjs@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <duncan@mclink.it>
+
+ Reviewed by Darin.
+
+ Fixes <http://bugs.webkit.org/show_bug.cgi?id=10159>
+ "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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/4658194> 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 <darin@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by John.
+
+ * Plugins/WebPluginDatabase.m:
+ (-[WebPluginDatabase refresh]):
+ Create a mutable set instead of a mutable array.
+
+2006-07-30 Darin Adler <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ 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 <darin@apple.com>
+
+ - 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 <sam.weinig@gmail.com>
+
+ 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 <opendarwin.org@mitzpettel.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/4657473> 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 <ggaren@apple.com>
+
+ Reviewed by Maciej, inspired by John.
+
+ - Fixed <rdar://problem/4651931> 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 <harrison@apple.com>
+
+ Reviewed by timo and Darin.
+
+ <rdar://problem/4618584> "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 <darin@apple.com>
+
+ 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 <mjs@apple.com>
+
+ Reviewed by Geoff.
+
+ - fix <rdar://problem/4609195> 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 <acarlsson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by John and Darin.
+
+ <rdar://problem/4634290> 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 <ap@nypop.com>
+
+ 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 <opendarwin.org@bdash.net.nz>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Darin.
+
+ - Fix for <rdar://problem/4646276> 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 <rdar://problem/4647062>). Since we know about
+ the dirty rect, we don't actually need to check needsDisplay.
+
+2006-07-22 Timothy Hatcher <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4609195> 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 <timothy@apple.com>
+
+ Reviewed by Adele.
+
+ <rdar://problem/4646318> 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 <timothy@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4609195> 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 <timothy@apple.com>
+
+ Reviewed by John.
+
+ <rdar://problem/4607572> 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 <sullivan@apple.com>
+
+ Reviewed by Maciej
+
+ - WebKit part of fix for:
+ <rdar://problem/4557386> 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 <timo@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4523432> 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 <timo@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4612079> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4635311> REGRESSION: WebKit should call windowScriptObjectAvailable before attaching the script debugger
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge windowObjectCleared]):
+
+2006-07-17 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4634874> 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 <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed <rdar://problem/4604366> 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 <justin.garcia@apple.com>
+
+ Reviewed by levi
+
+ Rolled the first fix for:
+ <http://bugs.webkit.org/show_bug.cgi?id=9642>
+ 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Rolling out this fix from r15358 since it isn't resolved.
+
+ 2006-07-11 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by levi & thatcher
+
+ <http://bugs.webkit.org/show_bug.cgi?id=9642>
+ 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 <timothy@apple.com>
+
+ <rdar://problem/4623957> 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 <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=9625
+ <rdar://problem/4604703>
+ 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 <timothy@apple.com>
+
+ Reviewed by Maciej.
+
+ Moved JavaScriptCore to be a public framework.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-07-13 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by Justin and Levi.
+
+ <rdar://problem/4620743> 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 <timothy@apple.com>
+
+ Rolling out this earlier change (r15378) now that it is fixed on AGL's end.
+ Fixes <rdar://problem/4624865> Restore 64-bit OpenGL plug-in support once AGL is 64-bit
+
+ <rdar://problem/4624858> 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4616920> 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 <acarlsson@apple.com>
+
+ 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 <opendarwin.org@bdash.net.nz>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/4624858> 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 <sullivan@apple.com>
+
+ 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
+ <WebDocumentSelection> 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 <timo@apple.com>
+
+ Reviewed by Geoff.
+
+ <http://bugs.webkit.org/show_bug.cgi?id=9843>:
+ 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 <justin.garcia@apple.com>
+
+ Reviewed by levi & thatcher
+
+ <http://bugs.webkit.org/show_bug.cgi?id=9642>
+ 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 <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/4622748> 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 <ap@nypop.com>
+
+ 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 <opendarwin.org@mitzpettel.com>
+
+ Reviewed by John Sullivan.
+
+ - fix <rdar://problem/4621541>, aka <http://bugs.webkit.org/show_bug.cgi?id=9838>
+ 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 <beidson@apple.com>
+
+ 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 <darin@apple.com>
+
+ - try to fix Windows build
+
+ * COM/WebFrame.h: Qualify DeprecatedString and KURL with WebCore:: prefixes.
+
+2006-07-09 Darin Adler <darin@apple.com>
+
+ - try to fix Windows build
+
+ * COM/WebFrame.cpp: Rename QChar to DeprecatedChar.
+
+2006-07-09 Darin Adler <darin@apple.com>
+
+ - 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 <timo@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4404652> 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 <darin@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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
+
+ <rdar://problem/4387541> 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Tim O.
+
+ * WebCoreSupport/WebSystemInterface.m:
+ (InitWebCoreSystemInterface):
+ Initialize wkPathFromFont.
+
+2006-07-09 Darin Adler <darin@apple.com>
+
+ - 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 <timo@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <ap@nypop.com>
+
+ 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 <darin@apple.com>
+
+ * DefaultDelegates/WebDefaultContextMenuDelegate.m:
+ (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
+ Removed misleading old comment.
+
+=== Safari-521.15 ===
+
+2006-07-07 Levi Weintraub <lweintraub@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <lweintraub@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ - fixed <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported
+
+ * WebKit.exp:
+ added surprisingly missing _WebPreferencesChangedNotification, defined in
+ WebPreferences.h
+
+2006-07-06 Brady Eidson <beidson@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Maciej and Hyatt.
+
+ WebKit part of initial popup menu implementation.
+
+ * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
+ Initialize WKPopupMenu.
+
+2006-07-05 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Harrison.
+
+ <rdar://problem/4608423> 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 <timothy@apple.com>
+
+ 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 <rdar://problem/4608404> 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 <timothy@apple.com>
+
+ 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 <ap@nypop.com>
+
+ 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 <ddkilzer@kilzer.net>
+
+ 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 <timo@apple.com>
+
+ Reviewed by NOBODY (build fix)
+
+ * WebView/WebView.m:
+ (-[WebView _isMIMETypeRegisteredAsPlugin:]):
+ Changed nil to NO (typo).
+
+=== Safari-521.14 ===
+
+2006-06-30 Timothy Hatcher <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4484405> WebKit leaks, improper tear-down
+ <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
+ <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
+ <rdar://problem/3694104> -[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 <kdecker@apple.com>
+
+ Reviewed by mjs and timo.
+
+ Fixed: <rdar://problem/4609119> 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 <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/4608487> 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 <timo@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ Reviewed by Tim O.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Add DOMXPath.h header.
+
+2006-06-28 David Hyatt <hyatt@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <timothy@apple.com>
+
+ Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-06-28 Levi Weintraub <lweintraub@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <ddkilzer@kilzer.net>
+
+ Reviewed by Timothy.
+
+ * Info.plist: Fixed copyright to include 2003-2006.
+
+2006-06-24 Alexey Proskuryakov <ap@nypop.com>
+
+ 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 <timo@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <timo@apple.com>
+
+ 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 <timo@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ <rdar://problem/4564131> 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 <object> or <embed> 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ * WebView/WebMainResourceLoader.m: Added missing header to fix build on Leopard.
+
+2006-06-20 Timothy Hatcher <timothy@apple.com>
+
+ 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 <ap@nypop.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <opendarwin.org@mitzpettel.com>
+
+ 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 <opendarwin.org@mitzpettel.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <opendarwin.org@mitzpettel.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Alice.
+
+ Added initialization for WKDrawBezeledTextArea.
+
+ * WebCoreSupport/WebSystemInterface.m:
+ (InitWebCoreSystemInterface):
+
+2006-06-15 Timothy Hatcher <timothy@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <ddkilzer@kilzer.net>
+
+ Reviewed by John Sullivan.
+
+ * Plugins/WebPluginController.m:
+ (-[WebPluginController _cancelOutstandingChecks]):
+ add nil check before calling CFSetApplyFunction
+
+2006-06-14 Levi Weintraub <lweintraub@apple.com>
+
+ Reviewed by justin
+
+ <http://bugs.webkit.org/show_bug.cgi?id=7580>
+ TinyMCE: Implement execCommand(formatBlock, ...)
+
+ * English.lproj/Localizable.strings:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge nameForUndoAction:]):
+
+2006-06-14 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4577988> 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 <sullivan@apple.com>
+
+ Reviewed by Tim O.
+
+ - fixed <rdar://problem/4498606> 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 <timo@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ - 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4526052> 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 <darin@apple.com>
+
+ - try to fix Windows build
+
+ * COM/WebKitDLL.cpp: (loadResourceIntoArray): Use Vector<char> instead of
+ DeprecatedByteArray.
+
+2006-06-11 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <sullivan@apple.com>
+
+ 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 <Graham.Dennis@gmail.com>
+
+ <http://bugs.webkit.org/show_bug.cgi?id=9384>
+ 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 <hyatt@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ Rename displaysWithFocusAttributes to isActive.
+
+ Reviewed by sfalken
+
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _updateFocusState]):
+
+2006-06-08 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by levi
+
+ <http://bugs.webkit.org/show_bug.cgi?id=4468>
+ 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 <timothy@apple.com>
+
+ Reviewed by Darin and John.
+
+ <rdar://problem/3600734> 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 <darin@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <adele@apple.com>
+
+ Reviewed by Justin.
+
+ * COM/WebView.cpp:
+ (WebView::keyPress): Added case for VK_RETURN.
+
+2006-06-06 Anders Carlsson <acarlsson@apple.com>
+
+ 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 <sfalken@apple.com>
+
+ Reviewed by hyatt.
+
+ Add implementation of loadHTMLString for Spinneret
+
+ * COM/WebFrame.cpp:
+ (WebFrame::loadHTMLString):
+
+2006-06-02 Steve Falkenburg <sfalken@apple.com>
+
+ 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 <darin@apple.com>
+
+ * WebCoreSupport/WebImageRendererFactory.m: Fix crash on Safari startup
+ by include NSObject as a superclass (oops!).
+
+2006-06-01 Darin Adler <darin@apple.com>
+
+ 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 <beidson@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <acarlsson@apple.com>
+
+ 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 <hyatt@apple.com>
+
+ 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 <harrison@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4514529> 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 <timo@apple.com>
+
+ Reviewed by Anders.
+
+ <http://bugs.webkit.org/show_bug.cgi?id=8347>
+ 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 <timothy@apple.com>
+
+ Reviewed by Tim O.
+
+ <rdar://problem/4559808> WebKit fails to compile for ppc64
+ <rdar://problem/4522085> 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.
+ <rdar://problem/4561772> HIWebView needs to be reworked to not use QuickDraw, needed for 64-bit
+
+ * Carbon/CarbonUtils.m: disabled this file in 64-bit <rdar://problem/4561772>
+ * 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 <rdar://problem/4561772>
+ * Carbon/HIWebView.m: disabled this file in 64-bit <rdar://problem/4561772>
+ (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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4558301> 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4557117> 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 <mjs@apple.com>
+
+ 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 <timothy@apple.com>
+
+ 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 <mjs@apple.com>
+
+ 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 <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4551938> 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 <sullivan@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fixed <rdar://problem/4552713> 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 <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4553450> 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 <timo@apple.com>
+
+ Reviewed by Kevin Decker and John Sullivan.
+
+ <rdar://problem/4550801> 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 <beidson@apple.com>
+
+ 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 <adele@apple.com>
+
+ 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 <textarea>
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView insertNewline:]): If we're in plain text mode, insert a line break instead of a paragraph separator.
+ (-[WebHTMLView insertParagraphSeparator:]): ditto.
+ * WebView/WebView.m: (-[WebView _menuForElement:defaultItems:]):
+ Checks for textareas as well as textfields before allowing the delegate to control
+ the context menu. This won't affect the old textareas because AppKit handles those context menus.
+
+2006-05-17 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Maciej.
+
+ First step towards making text-matching mechanism more flexible; updated for changes
+ to WebCoreFrameBridge calls.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView highlightAllMatchesForString:caseSensitive:]):
+ updated for name change in WebCoreFrameBridge, also now calls setMarkedTextMatchesAreHighlighted:
+ (-[WebHTMLView clearHighlightedMatches]):
+ updated for name change in WebCoreFrameBridge
+
+2006-05-16 Matt Gough <matt@softchaos.com>
+
+ Reviewed by Geoff.
+
+ Ensured all the public headers have a newline at their end.
+
+ Client code can now have 'Missing Newline at end of File' warnings enabled without emitting
+ such warnings against any WebKit includes.
+
+ * Misc/WebDownload.h:
+ * Plugins/npfunctions.h:
+ * WebView/WebResourceLoadDelegate.h:
+ * WebView/WebUIDelegate.h:
+ * WebView/WebView.h:
+
+2006-05-16 Tim Omernick <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8945 (REGRESSION: Scrolling is very slow when dragging
+ the thumb)
+
+ Rolled out one of my tweaks to the window display throttle hack (remember the last flush time instead
+ of the last display time). While that was technically a better approach, we discovered a problem
+ with how it interacts with NSView scroll tracking. Rather than further complicate this already
+ crazy hack, I'm reverting back to the simple version. This should yield similar numbers on iBench,
+ but not exhibit the nasty scrolling problem.
+
+ * Misc/WebNSWindowExtras.m:
+ (+[NSWindow _webkit_enableWindowDisplayThrottle]):
+ (+[NSWindow _webkit_disableWindowDisplayThrottle]):
+ (getWindowDisplayInfo):
+ (requestWindowDisplay):
+
+2006-05-16 bradeeoh <beidson@apple.com>
+
+ Reviewed by Maciej Stachowiak
+
+ - Fixed an old deprecated method in Misc/WebFileDatabase.m
+
+ * Misc/WebFileDatabase.m:
+ (UniqueFilePathForKey): changed `lossyCString` to `UTF8String`
+
+2006-05-16 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders.
+
+ - did the name change from "ImageElement" to "ImageForElement" that I said I would
+ (oops!)
+
+ * DefaultDelegates/WebDefaultContextMenuDelegate.m:
+ (-[WebDefaultUIDelegate copyImageToClipboard:]):
+ * Misc/WebNSPasteboardExtras.h:
+ * Misc/WebNSPasteboardExtras.m:
+ (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
+ * Misc/WebNSViewExtras.h:
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]):
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+ * WebView/WebView.m:
+ (-[WebView _writeImageForElement:withPasteboardTypes:toPasteboard:]):
+ (-[WebView writeElement:withPasteboardTypes:toPasteboard:]):
+ * WebView/WebViewInternal.h:
+
+2006-05-16 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders.
+
+ - http://bugs.webkit.org/show_bug.cgi?id=8940
+ remove extra copy of image code
+
+ * English.lproj/StringsNotToBeLocalized.txt: Updated for many recent changes.
+
+ * WebKit.xcodeproj/project.pbxproj: Removed files.
+ * WebCoreSupport/WebImageData.h: Removed.
+ * WebCoreSupport/WebImageData.m: Removed.
+ * WebCoreSupport/WebImageDecodeItem.h: Removed.
+ * WebCoreSupport/WebImageDecodeItem.m: Removed.
+ * WebCoreSupport/WebImageDecoder.h: Removed.
+ * WebCoreSupport/WebImageDecoder.m: Removed.
+ * WebCoreSupport/WebImageRenderer.h: Removed.
+ * WebCoreSupport/WebImageRenderer.m: Removed.
+
+ * WebCoreSupport/WebImageRendererFactory.h:
+ * WebCoreSupport/WebImageRendererFactory.m: Removed everything except for
+ shouldUseThreadedDecoding, setShouldUseThreadedDecoding, and imageDataForName:.
+
+ * Misc/WebNSPasteboardExtras.h: Removed WebImageRenderer parameter from
+ _web_declareAndWriteDragImage and renamed _web_declareAndWriteDragImageElement.
+ * Misc/WebNSPasteboardExtras.m:
+ (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Changed to
+ call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
+ -[WebImageRendererFactory supportedMIMETypes].
+ (-[NSPasteboard _web_declareAndWriteDragImageElement:URL:title:archive:source:]):
+ Removed WebImageRenderer parameter, and updated code since it was always nil.
+
+ * Misc/WebNSViewExtras.h: Removed WebImageRenderer parameter from
+ _web_dragImage and renamed _web_dragImageElement.
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _web_dragImageElement:rect:event:pasteboard:source:offset:]):
+ Removed WebImageRenderer parameter, and updated code since it was always nil.
+
+ * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Added some new
+ functions now used by WebCore.
+
+ * WebView/WebDataSource.m: (-[WebDataSource _documentFragmentWithArchive:]):
+ Call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
+ -[WebImageRendererFactory supportedMIMETypes].
+
+ * WebView/WebFrameView.m: Removed include of WebImageRenderer.h.
+
+ * WebView/WebHTMLRepresentation.m: (+[WebHTMLRepresentation supportedImageMIMETypes]):
+ Removed call to +[WebImageRendererFactory createSharedFactory].
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _imageExistsAtPaths:]): Call +[WebFrameBridge supportedImageResourceMIMETypes]
+ instead of -[WebImageRendererFactory supportedMIMETypes].
+ (-[WebHTMLView _documentFragmentWithPaths:]): Ditto.
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): Update
+ to no longer pass nil for an image to _web_declareAndWriteDragImageElement and to
+ _web_dragImageElement.
+ (-[WebHTMLView dealloc]): Remove call to now-unneeded _reset.
+ (-[WebHTMLView finalize]): Ditto.
+ (-[WebHTMLView viewDidMoveToWindow]): Remove logic for calling _reset, including the inWindow
+ boolean field.
+
+ * WebView/WebHTMLViewInternal.h: Removed inWindow boolean.
+ * WebView/WebHTMLViewPrivate.h: Removed _reset method.
+
+2006-05-16 Darin Adler <darin@apple.com>
+
+ Reviewed by Hyatt.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8898
+ REGRESSION: Attempting to right-click image in own tab on website causes crash
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8919
+ REGRESSION: image could not be dragged, subsequent click-drag activity caused crash
+
+ These fixes may become obsolete when Anders lands his standalone image viewer
+ patch, but in my tree they are needed to make Copy Image work after the fix
+ over on the WebCore side to avoid the crashes.
+
+ * Misc/WebNSPasteboardExtras.h: Change _web_writeImage parameter to an NSImage.
+ * Misc/WebNSPasteboardExtras.m:
+ (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Change parameter
+ to an NSImage instead of a WebImageRenderer.
+ (-[NSPasteboard _web_declareAndWriteDragImage:element:URL:title:archive:source:]):
+ Call -[WebImageRenderer image] to get an NSImage to pass to _web_writeImage.
+
+ * WebView/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
+ Get the image using WebElementImageKey if WebElementDOMNodeKey is nil.
+
+2006-05-16 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8921
+ Use WebCore to render full-frame images
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
+ Remove WebImageView handling.
+
+ (-[WebFrameBridge mainResourceURLResponse]):
+ New function which returns the URL response for the main resource. This is used by the
+ manual loading of images.
+
+ (-[WebFrameBridge imageTitleForFilename:size:]):
+ New function which returns a correctly translated image title given a filename and a size.
+
+ * WebCoreSupport/WebImageRenderer.m:
+ (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
+ Remove WebImageView handling.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Remove WebImageRepresentation and WebImageView.
+
+ * WebView/WebArchiver.h:
+ * WebView/WebArchiver.m:
+ (+[WebArchiver archiveMainResourceForFrame:]):
+ New functions which returns a WebArchive with just the main resource, ignoring any subresources.
+
+ * WebView/WebDataSource.m:
+ (+[WebDataSource _repTypesAllowImageTypeOmission:]):
+ Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
+
+ * WebView/WebFrameView.m:
+ (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
+ Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
+
+ (+[WebHTMLRepresentation supportedMIMETypes]):
+ Create an array of image and non-image MIME Types.
+
+ (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
+ (+[WebHTMLRepresentation supportedImageMIMETypes]):
+ New functions, separating the list of MIME types into image and non-image ones.
+
+ * WebView/WebHTMLView.m:
+ (+[WebHTMLView supportedImageMIMETypes]):
+ (+[WebHTMLView supportedNonImageMIMETypes]):
+ New functions which call down to WebHTMLRepresentation.
+
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+ If the image element comes from an ImageDocument, just use an archive of the main resource
+ instead of the generated HTML document.
+
+ * WebView/WebHTMLViewPrivate.h:
+ Declare new functions.
+
+ * WebView/WebImageRepresentation.h: Removed.
+ * WebView/WebImageRepresentation.m: Removed.
+ * WebView/WebImageView.h: Removed.
+ * WebView/WebImageView.m: Removed.
+
+2006-05-15 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Part of <rdar://problem/4466508> Add 64-bit support to the Netscape Plugin API
+
+ Added to the Netscape Plugin API the concept of "plugin drawing models". The drawing model
+ determines the kind of graphics context created by the browser for the plugin, as well as
+ the Mac types of various Netscape Plugin API data structures.
+
+ There is a drawing model to represent the old QuickDraw-based API. It is used by default
+ if QuickDraw is available on the system, unless the plugin specifies another drawing model.
+
+ The big change is the addition of the CoreGraphics drawing model. A plugin may request this
+ drawing model to obtain access to a CGContextRef for drawing, instead of a QuickDraw CGrafPtr.
+
+ * Plugins/WebBaseNetscapePluginView.h:
+ Added PluginPort union, which wraps a NP_Port and a NP_CGContext. This is to make access to
+ the nPort and lastSetPort ivars more convenient now that the port type differs based on the
+ drawing model.
+ Changed types of nPort and lastSetPort to PluginPort so they can be used with any drawing model.
+ Added drawingModel ivar.
+ * Plugins/WebBaseNetscapePluginView.m:
+ Renamed PortState to PortState_QD. PortState is now an opaque pointer. PortState_QD cannot be
+ used if QuickDraw is unavailable.
+ (-[WebBaseNetscapePluginView fixWindowPort]):
+ Cannot be used if QuickDraw is unavailable.
+ (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
+ Only fix window port if drawing model is QuickDraw.
+ Re-ordered some code so I could group QuickDraw-specific stuff into switch and if blocks (that's
+ why the diff here is so terrible).
+ Now returns a malloc()'ed PortState that the caller is responsible for freeing. Renamed to
+ better reflect this behavior.
+ Support for the CoreGraphics drawing model -- fill PortState_CG struct, save CGContext state.
+ (-[WebBaseNetscapePluginView restorePortState:]):
+ Switch based on drawing model.
+ Support for the CoreGraphics drawing model -- restore CGContext state saved earlier.
+ (-[WebBaseNetscapePluginView sendEvent:]):
+ Formatting.
+ Don't set save/set port state or set the window in CoreGraphics mode unless the event being
+ sent is an updateEvt. We can't provide the plugin with a CGContext outside of our view display
+ cycle.
+ Don't restore PortState if it's NULL (didn't used to be a pointer). Free when we're done with it.
+ (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
+ Formatting.
+ Switch how we compare ports based on the drawing model.
+ (-[WebBaseNetscapePluginView updateAndSetWindow]):
+ Fixed for CoreGraphics by triggering a redisplay instead of sending an update event to the plugin
+ outside of the view display cycle.
+ Don't restore PortState if it's NULL (didn't used to be a pointer). Free when we're done with it.
+ (-[WebBaseNetscapePluginView setWindowIfNecessary]):
+ Assert that the window is only set when updating in CoreGraphics mode.
+ Log differently depending on the drawing model.
+ (-[WebBaseNetscapePluginView start]):
+ Fall back on QuickDraw if the plugin does not specify a drawing model.
+ (-[WebBaseNetscapePluginView tellQuickTimeToChill]):
+ Cannot be used if QuickDraw is unavailable.
+ (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
+ Only call -tellQuickTimeToChill in QuickDraw mode.
+ (-[WebBaseNetscapePluginView viewHasMoved:]):
+ ditto
+ (-[WebBaseNetscapePluginView invalidateRegion:]):
+ NPRegion is a CGPathRef in CoreGraphics mode.
+ (-[WebBaseNetscapePluginView getVariable:value:]):
+ Added support for retriveing the NPNVpluginDrawingModel, NPNVsupportsQuickDrawBool, and
+ NPNVsupportsCoreGraphicsBool browser variables.
+ (-[WebBaseNetscapePluginView setVariable:value:]):
+ Added support for setting the NPNVpluginDrawingModel variable.
+
+2006-05-15 Tim Omernick <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ Follow-up to my previous PLT fix. I found upon further testing (by dramatically decreasing the
+ allowed display rate) that +_webkit_displayThrottledWindows did not always force a display when
+ necessary. The reason is that I was not giving a proper timeout to CFRunLoopRunInMode(). I was
+ passing 0, which was causing only "expired" timers to fire. This method is actually supposed to
+ block until all currently scheduled display timers fire.
+
+ I tested this change and found that it did not affect my PLT times when the display rate was
+ capped to 60 fps. It also behaves as expected when the display rate is set much lower (say, 1
+ display per second); my previous fix did not work well at such display rates.
+
+ * Misc/WebNSWindowExtras.m:
+ (+[NSWindow _webkit_displayThrottledWindows]):
+ Run the runloop for an amount of time equal to the minimum allowed interval between displays.
+ This ensures that we'll block until all currently scheduled display timers fire (but we won't
+ block for future display timers).
+
+2006-05-15 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - followup to previous fix; I hadn't tested quitting adequately
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView dealloc]):
+ call removeAllToolTips before clearing _private so that removeTrackingRect: override can work
+ properly. Normally removeAllToolTips would be called by super, but that's too late.
+ (-[WebHTMLView finalize]):
+ ditto
+
+2006-05-15 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Darin.
+
+ - fixed <rdar://problem/4503016> TOT assertion failure in -[WebHTMLView(WebPrivate) removeTrackingRect:]
+
+ We have some tricky code to deal with tracking rects, which succumbed to a fix in AppKit. Updated our
+ tricky code to work with the AppKit fix.
+
+ * WebView/WebHTMLViewInternal.h:
+ new instance variable lastToolTipTag
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView removeTrackingRect:]):
+ handle removing lastToolTipTag by calling super
+ (-[WebHTMLView _setToolTip:]):
+ save tool tip tag in lastToolTipTag; this apparently used to always return 0, so we formerly had no way
+ to distinguish it from the no-tool-tips-yet case.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Xcode removed some old cruft
+
+2006-05-15 Tim Omernick <timo@apple.com>
+
+ Reviewed by Darin.
+
+ Safari's Page Load Test (PLT) saturates the runloop with so many sources that timers are not allowed to fire
+ as frequently as they should. This is a general problem with the PLT -- because of this, it does not measure
+ work done in timer callbacks during/after the page load process.
+
+ Unfortunately, this aspect of the PLT interferes with our window display throttle hack. Because we throttle
+ display using timers, and the PLT starves timers, most of the pages loaded by the PLT do not actually display.
+ This makes the PLT run "too fast", yielding ridiculously fast numbers compared to when throttling is disabled.
+
+ I've added a new method that the PLT can call after each page load to force any starved display throttle timers
+ to fire. By doing this, Safari's PLT will be guaranteed to display each page at least once.
+
+ * Misc/WebNSWindowExtras.h:
+ * Misc/WebNSWindowExtras.m:
+ Added a special internal runloop mode for the throttle timers.
+ (+[NSWindow _webkit_displayThrottledWindows]):
+ Run the runloop in our special internal mode until there are no more sources to handle.
+ (requestWindowDisplay):
+ Schedule the timer in the new mode as well as the standard modes.
+
+2006-05-15 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8913
+ REGRESSION: Can view source for text files
+
+ * WebView/WebDocumentPrivate.h:
+ Add canSaveAsWebArchive.
+
+ * WebView/WebHTMLRepresentation.m:
+ (-[WebHTMLRepresentation canProvideDocumentSource]):
+ Call the bridge.
+
+ (-[WebHTMLRepresentation canSaveAsWebArchive]):
+ New function. This will be used in Safari ToT to determine if a page can be saved as an archive.
+
+2006-05-14 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8739
+ Crash in RenderTableSection::paint due to manipulating DOM on resize
+
+ Manual test: manual-tests/dom-manipulation-on-resize.html
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Relayout if necessary
+ after sending the resize event.
+
+2006-05-12 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Brady.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8876
+ - move most private WebDataSource methods to uninstalled header
+
+ I put the declarations for the ones only used in WebKit in WebDataSourceInternal.h
+ and removed two entirey unused ones.
+
+ * Plugins/WebNetscapePluginRepresentation.m:
+ * Plugins/WebNetscapePluginStream.m:
+ * Plugins/WebPluginController.m:
+ * Plugins/WebPluginDocumentView.m:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge dataSource]):
+ * WebCoreSupport/WebSubresourceLoader.m:
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _updateIconDatabaseWithURL:]):
+ (-[WebDataSource _loadIcon]):
+ (-[WebDataSource _clearErrors]):
+ (-[WebDataSource _commitLoadWithData:]):
+ (-[WebDataSource _doesProgressiveLoadWithMIMEType:]):
+ (-[WebDataSource _addResponse:]):
+ * WebView/WebDataSourceInternal.h: Added.
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebFrame.m:
+ * WebView/WebHTMLRepresentation.m:
+ * WebView/WebHTMLView.m:
+ * WebView/WebImageView.m:
+ * WebView/WebLoader.m:
+ * WebView/WebMainResourceLoader.m:
+ * WebView/WebPDFView.m:
+ * WebView/WebRenderNode.m:
+ * WebView/WebView.m:
+
+2006-05-12 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4542808> REGRESSION: benchjs test 1 has slowed by over 150% (8740)
+ <http://bugs.webkit.org/show_bug.cgi?id=8740>
+
+ Improvement to my NSWindow display throttle hack. Remember the last flush time instead of the last display time.
+ Our goal is to never draw less than 1/60th of a second after the window is flushed in order to avoid blocking on
+ a CG coalesced update. Using the last display time is close, but this is much more accurate. I have verified that
+ this further improves our score on BenchJS Test 1 (by 9.8% with the status bar shown compared to the previous build),
+ as well as on our internal PLT scores by a smaller percentage.
+
+ * Misc/WebNSWindowExtras.m:
+ Renamed lastDisplayTime to lastFlushTime.
+ (+[NSWindow _webkit_enableWindowDisplayThrottle]):
+ Replace -[NSWindow flushWindow] with our own implementation.
+ (+[NSWindow _webkit_disableWindowDisplayThrottle]):
+ Restore -[NSWindow flushWindow].
+ (replacementFlushWindow):
+ Use the last flush time instead of the last display time.
+ (getWindowDisplayInfo):
+ Renamed lastDisplayTime to lastFlushTime.
+ (requestWindowDisplay):
+ Moved some code to replacementFlushWindow().
+
+2006-05-11 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ Bug 8856: Web Inspector should show the Xpath for the selected node
+ http://bugs.webkit.org/show_bug.cgi?id=8856
+
+ Adds an Xpath area to the Node panel.
+
+ * WebInspector/webInspector/inspector.css:
+ * WebInspector/webInspector/inspector.html:
+ * WebInspector/webInspector/inspector.js:
+
+2006-05-11 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Anders.
+
+ Fixes <rdar://problem/4411845> lots of SPOD trying to scroll through
+ Markup & Content inspecting body at apple.com (6614)
+ http://bugs.webkit.org/show_bug.cgi?id=6614
+
+ Removed the Markup & Content pane when viewing a element.
+ This pane was not that useful and made the inspector really slow
+ when the markup was large. Only show this pane for text nodes.
+
+ * WebInspector/webInspector/inspector.css: use -webkit prefix
+ * WebInspector/webInspector/inspector.html:
+ * WebInspector/webInspector/inspector.js:
+
+2006-05-11 Sam Weinig <sam.weinig@gmail.com>
+
+ Reviewed by Timothy.
+
+ Patch for <http://bugs.webkit.org/show_bug.cgi?id=8810>
+ Bug 8810: Scrollbars in WebInspector rendered incorrectly
+
+ * WebInspector/webInspector/inspector.css:
+ Make scroll bars absolutely positioned.
+
+2006-05-10 Tim Omernick <timo@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4542808> REGRESSION: benchjs test 1 has slowed by over 150% (8740)
+ <http://bugs.webkit.org/show_bug.cgi?id=8740>
+
+ * Misc/WebNSWindowExtras.h:
+ * Misc/WebNSWindowExtras.m:
+ (+[NSWindow _webkit_enableWindowDisplayThrottle]):
+ Overrides certain NSWindow methods so that window autodisplay can be throttled to 60Hz.
+
+ (disableWindowDisplayThrottleApplierFunction):
+ CFDictionary applier function for when the throttle is disabled. Cancels all pending window displays,
+ and calls -displayIfNeeded on each window with a pending display.
+
+ (+[NSWindow _webkit_disableWindowDisplayThrottle]):
+ Restores default NSWindow method implementations and clears pending window displays.
+
+ (swizzleInstanceMethod):
+ Helper function to swizzle ObjC method implementations.
+
+ (replacementPostWindowNeedsDisplay):
+ Don't call into -[NSWindow _postWindowNeedsDisplay] if requestWindowDisplay() returns NO (this is the
+ function that throttles display).
+
+ (replacementClose):
+ Clean up the WindowDisplayInfo struct for the window, since it's about to go away.
+
+ (getWindowDisplayInfo):
+ Gets the WindowDisplayInfo struct for the window, or creates it if absent.
+
+ (requestWindowDisplay):
+ Returns YES if a display is allowed right now. Returns NO otherwise, and schedules a timer to try the
+ display again.
+
+ (cancelPendingWindowDisplay):
+ Cancels the pending display for the window, if any.
+
+ (-[NSWindow _webkit_doPendingPostWindowNeedsDisplay:]):
+ Try to call _postWindowNeedsDisplay again.
+
+ * WebView/WebFrameView.m:
+ (-[WebFrameView initWithFrame:]):
+ If the secret "WebKitThrottleWindowDisplay" default is set, then enable the NSWindow throttle.
+
+2006-05-10 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Maciej.
+
+ * WebView/WebHTMLView.m:
+ (+[WebHTMLView unsupportedTextMIMETypes]):
+ Add text/rtf
+
+2006-05-09 Levi Weintraub <lweintraub@apple.com>
+
+ Reviewed by justin.
+
+ <rdar://problem/4442395>
+ Tiny MCE: Link isn't inserted after dragging into textarea field
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:chosePlainText:]):
+ Modified to create an anchor object with a title as opposed to just the URL as text.
+
+2006-05-09 Tim Omernick <timo@apple.com>
+
+ Reviewed by Dave Harrison.
+
+ <rdar://problem/4523432> safari crashed right after disabling "block pop up windows" (or
+ other WebPreferences changes)
+
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]):
+ When the plugin view is removed from both its window and its hostWindow, stop observing
+ WebPreferences.
+
+2006-05-09 Anders Carlsson <acarlsson@apple.com>
+
+ Reviewed by Darin.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8808
+ WebCore should handle text files
+
+ * WebKit.exp:
+ Remove WebTextView.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Get rid of WebTextView and WebTextRepresentation.
+
+ * WebView/WebDataSource.m:
+ (+[WebDataSource _repTypesAllowImageTypeOmission:]):
+ * WebView/WebFrameView.m:
+ (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
+ * WebView/WebHTMLView.m:
+ The text MIME types are now handled by WebHTMLView.
+
+ (+[WebHTMLView unsupportedTextMIMETypes]):
+ New function, moved here from WebTextView.
+
+ * WebView/WebHTMLViewPrivate.h:
+ * WebView/WebTextRepresentation.h: Removed.
+ * WebView/WebTextRepresentation.m: Removed.
+ * WebView/WebTextView.h: Removed.
+ * WebView/WebTextView.m: Removed.
+
+ * WebView/WebView.m:
+ (+[WebView _viewClass:andRepresentationClass:forMIMEType:]):
+ Now special-case WebHTMLView instead of WebTextView for MIME types
+ that shouldn't be shown.
+
+2006-05-09 Maciej Stachowiak <mjs@apple.com>
+
+ Rubber stamped by Anders.
+
+ - renamed kxmlcore to wtf
+
+ kxmlcore --> wtf
+ KXMLCore --> WTF
+ KXC --> WTF
+
+ * Misc/WebKitLogging.h:
+ * Misc/WebKitLogging.m:
+ (initializeLogChannel):
+
+2006-05-09 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Anders.
+
+ Bug 8804: Inspector should support searching by Xpath query
+ http://bugs.webkit.org/show_bug.cgi?id=8804
+
+ * WebInspector/WebInspector.m:
+ (-[WebInspector _refreshSearch]):
+ * WebInspector/webInspector/inspector.js:
+
+2006-05-08 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ - refactor things so that WebKit doesn't save a WebResource for every loaded URL,
+ but rather retrieves the data from the WebCore cache as needed.
+ http://bugs.webkit.org/show_bug.cgi?id=8802
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge objectLoadedFromCacheWithURL:response:data:]):
+ (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
+ * WebCoreSupport/WebSubresourceLoader.m:
+ (-[WebSubresourceLoader didReceiveResponse:]):
+ * WebView/WebDataSource.m:
+ (-[WebDataSourcePrivate dealloc]):
+ (-[WebDataSource _setupForReplaceByMIMEType:]):
+ (-[WebDataSource _archivedSubresourceForURL:]):
+ (-[WebDataSource initWithRequest:]):
+ (-[WebDataSource subresources]):
+ (-[WebDataSource subresourceForURL:]):
+ (-[WebDataSource addSubresource:]):
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebFrame.m:
+ * WebView/WebFrameInternal.h:
+ * WebView/WebHTMLView.m:
+ * WebView/WebLoader.h:
+ * WebView/WebLoader.m:
+ (-[NSURLProtocol loadWithRequest:]):
+ (-[NSURLProtocol didFinishLoading]):
+ * WebView/WebUnarchivingState.h:
+ * WebView/WebUnarchivingState.m:
+ (-[WebUnarchivingState addResource:]):
+
+2006-05-04 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8594
+ REGRESSION: Exception on closing a page containing (just) an mp3
+
+ Test: plugins/pluginDocumentView-deallocated-dataSource.html
+
+ * Plugins/WebPluginDocumentView.m:
+ (-[WebPluginDocumentView dealloc]): Release the dataSource.
+ (-[WebPluginDocumentView setDataSource:]): Retain the dataSource.
+
+2006-05-04 Tim Omernick <timo@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4537606> Give Java WebKit plugin access to its own DOM element
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
+ Pass the DOMElement to the plugin if it's a WebKit plugin (we need to handle Netscape plugins
+ differently).
+
+2006-05-04 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4480186> Give WebKit plugins access to their own DOM element
+
+ This does not fix <rdar://problem/4480187> Give Netscape plugins access to their own DOM element --
+ we're not going to use the ObjC DOM API for that, but rather the NP bindings API.
+
+ * Plugins/WebPluginPackage.m:
+ Declared WebPlugInContainingElementKey. This is not a new plugin argument -- it's been in our public
+ headers since all along, but has never been concretely declared -- plugins that referenced it would not
+ link.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:]):
+ Added DOMElement parameter, which is now included in the plugin arguments dictionary.
+ (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:]):
+ ditto
+
+ * WebKit.exp:
+ Export WebPlugInContainingElementKey.
+
+2006-05-02 Darin Adler <darin@apple.com>
+
+ Reviewed by Eric.
+
+ - http://bugs.webkit.org/show_bug.cgi?id=8677
+ REGRESSION: wkSetUpFontCache() may be called before the SPIs are connected.
+
+ I don't know how reproduce this without one of Rosyna's hacks installed, so I
+ did not include a test.
+
+ * Misc/WebStringTruncator.m: (+[WebStringTruncator initialize]): Add call to
+ InitWebCoreSystemInterface.
+
+ * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Add a boolean
+ so we will only do this one time.
+
+2006-05-02 Adele Peterson <adele@apple.com>
+
+ Reviewed by Tim O.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=6988
+ REGRESSION: Display correct context menus for new text fields
+
+ * WebView/WebView.m: (-[WebView _menuForElement:defaultItems:]):
+ Don't let the UI delegate have control over the context menu for text fields.
+
+2006-05-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8658
+ Assertion failure in -[WebPluginContainerCheck _isForbiddenFileLoad]
+ (bridge is null) when clicking QuickTime object with href
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView setDataSource:]): Set the pluginController's dataSource.
+
+2006-05-01 Maciej Stachowiak <mjs@apple.com>
+
+ - fix build
+
+ * WebKit.exp: Add symbol that the new Safari will need.
+
+2006-05-01 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed <rdar://problem/3126419> history load enforces history limit, but deletes the newest instead of oldest items
+ - added notification reporting items discarded during load because the age limit or item count limit is exceeded
+ - a few other minor tweaks
+
+ * History/WebHistory.h:
+ fixed a typo and an incorrect method name
+
+ * History/WebHistoryPrivate.h:
+ Added declaration of WebHistoryItemsDiscardedWhileLoadingNotification. Also changed signature of
+ WebHistoryPrivate method -loadFromURL:error: to have new collectDiscardedItemsInto: parameter.
+ Also deleted declarations of two methods that didn't actually exist (loadHistory and initWithFile:),
+ and added comments about which methods should become public API, WebKit-internal, or file-internal.
+
+ * History/WebHistory.m:
+ (-[WebHistoryPrivate arrayRepresentation]):
+ This method, called only by _saveHistoryGuts:, used to deliberately leave out items that violated
+ either the age limit or the item count limit. Now all the items are included (and thus saved), and
+ all the pruning is done at load time, so clients can keep track of the pruned items by observing
+ the new WebHistoryItemsDiscardedWhileLoadingNotification
+ (-[WebHistoryPrivate _loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
+ Now keeps track of all the items that violated the age limit or item count limit in the new
+ collectedDiscardedItemsInto: parameter. Also, now processes items in forward order rather than
+ reverse order to fix 3126419. Now uses compare: rather than _webkit_compareDay: to check against
+ age limit; this is faster and also more correct (most noticeable with small age limits).
+ (-[WebHistoryPrivate loadFromURL:collectDiscardedItemsInto:error:]):
+ new collectDiscardedItemsInto: parameter, passed into _loadHistoryGuts:...
+ (-[WebHistory loadFromURL:error:]):
+ Now sends new WebHistoryItemsDiscardedWhileLoadingNotification if any items were discarded due
+ to age limit or item count limit.
+
+ * WebKit.exp:
+ exported symbol for WebHistoryItemsDiscardedWhileLoadingNotification
+
+2006-04-29 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Maciej.
+
+ Bug 8577: [TabBarView _web_superviewOfClass:stoppingAtClass:]
+ http://bugs.webkit.org/show_bug.cgi?id=8577
+
+ Added back _web_superviewOfClass:stoppingAtClass:.
+ This method was removed in r14032 (bug 8562), but Safari 2.0 still uses it.
+ We should remove this method once Open Source users have a new version
+ to use with TOT WebKit.
+
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _web_superviewOfClass:stoppingAtClass:]):
+
+2006-04-28 David Hyatt <hyatt@apple.com>
+
+ Double the cache size to account for our revised (more accurate)
+ measurement of the image buffers.
+
+ Reviewed by darin
+
+ * WebView/WebPreferences.m:
+ (+[WebPreferences initialize]):
+
+2006-04-28 David Hyatt <hyatt@apple.com>
+
+ Fix for 8586, move WebTextRenderer into WebCore.
+
+ Reviewed by darin
+
+ * Misc/WebKitNSStringExtras.m:
+ (-[NSString _web_drawAtPoint:font:textColor:]):
+ (-[NSString _web_widthWithFont:]):
+ * Misc/WebStringTruncator.m:
+ (+[WebStringTruncator centerTruncateString:toWidth:]):
+ (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
+ (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
+ (+[WebStringTruncator widthOfString:font:]):
+ * WebCoreSupport/WebSystemInterface.m:
+ (InitWebCoreSystemInterface):
+ * WebCoreSupport/WebTextRenderer.h: Removed.
+ * WebCoreSupport/WebTextRenderer.m: Removed.
+ * WebCoreSupport/WebTextRendererFactory.h: Removed.
+ * WebCoreSupport/WebTextRendererFactory.m: Removed.
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebFrameView.m:
+ (-[WebFrameView initWithFrame:]):
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _addToStyle:fontA:fontB:]):
+ * WebView/WebTextView.m:
+ (-[WebTextView setFixedWidthFont]):
+ * WebView/WebView.m:
+ (+[WebView _setAlwaysUseATSU:]):
+ (+[WebView _setShouldUseFontSmoothing:]):
+ (+[WebView _shouldUseFontSmoothing]):
+
+2006-04-28 Eric Seidel <eseidel@apple.com>
+
+ Reviewed by darin.
+
+ Misc. style cleanup.
+ http://bugs.webkit.org/show_bug.cgi?id=8643
+
+ * Misc/WebIconDatabase.m:
+ (-[NSMutableDictionary iconForURL:withSize:cache:]):
+ (-[NSMutableDictionary iconURLForURL:]):
+ (-[NSMutableDictionary retainIconForURL:]):
+ (-[NSMutableDictionary releaseIconForURL:]):
+ (-[WebIconDatabase _setIcon:forIconURL:]):
+ (-[WebIconDatabase _iconsForIconURLString:]):
+ (-[WebIconDatabase _forgetIconForIconURLString:]):
+ (-[WebIconDatabase _releaseIconForIconURLString:]):
+ (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
+ * Plugins/WebBasePluginPackage.m:
+ (+[WebBasePluginPackage pluginWithPath:]):
+ (-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
+ (-[WebBasePluginPackage initWithPath:]):
+ (-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]):
+ (-[WebBasePluginPackage pListForPath:createFile:]):
+ (-[WebBasePluginPackage getPluginInfoFromPLists]):
+ (-[WebBasePluginPackage load]):
+ (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
+ (-[WebBasePluginPackage isNativeLibraryData:]):
+ (-[NSArray _web_lowercaseStrings]):
+ * Plugins/WebNetscapePluginPackage.m:
+ (-[WebNetscapePluginPackage openResourceFile]):
+ (-[WebNetscapePluginPackage closeResourceFile:]):
+ (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
+ (-[WebNetscapePluginPackage getPluginInfoFromResources]):
+ (-[WebNetscapePluginPackage initWithPath:]):
+ (-[WebNetscapePluginPackage executableType]):
+ (-[WebNetscapePluginPackage unloadWithoutShutdown]):
+ (-[WebNetscapePluginPackage load]):
+ (-[WebNetscapePluginPackage unload]):
+ * Plugins/WebNetscapePluginRepresentation.m:
+ (-[WebNetscapePluginRepresentation redeliverStream]):
+ * Plugins/WebPluginDatabase.m:
+ (+[WebPluginDatabase installedPlugins]):
+ (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
+ (-[WebPluginDatabase pluginForExtension:]):
+ (pluginLocations):
+ (-[WebPluginDatabase init]):
+ (-[WebPluginDatabase refresh]):
+ * Plugins/npapi.m:
+ (NPN_MemAlloc):
+ (NPN_MemFree):
+ (pluginViewForInstance):
+ * WebCoreSupport/WebSubresourceLoader.m:
+ (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
+ (-[WebSubresourceLoader willSendRequest:redirectResponse:]):
+ * WebView/WebDataSource.m:
+ (-[WebDataSource isLoading]):
+ * WebView/WebFrame.m:
+ (-[WebFrame _loadDataSource:withLoadType:formState:]):
+ (-[WebFrame _subframeIsLoading]):
+ * WebView/WebView.m:
+ (-[WebView initWithFrame:]):
+ (-[WebView initWithFrame:frameName:groupName:]):
+
+2006-04-26 Tim Omernick <timo@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4525105> Repro TOT crash in [WebBaseNetscapePluginView dealloc] at coachella.com
+ <http://bugs.webkit.org/show_bug.cgi?id=8564> crashed when closing a tab
+
+ * WebView/WebFrame.m:
+ (-[WebFramePrivate dealloc]):
+ Assert that plugInViews has been released.
+ (-[WebFrame _addPlugInView:]):
+ New method. Adds the plug-in view to the plugInViews set and calls -setWebFrame: on it.
+ (-[WebFrame _removeAllPlugInViews]):
+ New method. Calls -setWebFrame:nil on all plug-in views and releases the plugInViews set.
+ (-[WebFrame _willCloseURL]):
+ New method. Dispose of plug-in views when leaving a page (or closing the WebView).
+
+ * WebView/WebFrameInternal.h:
+ Declared -_addPlugInView:, -_removeAllPlugInViews, -_willCloseURL
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
+ Call -[WebFrame _addPlugInView:] instead of directly setting plug-in views' frames. This
+ allows us to keep track of them so that we can explicitly dispose of them when leaving the page.
+ (-[WebFrameBridge closeURL]):
+ Override -[WebCoreFrameBridge closeURL] so that we can perform our own teardown when leaving
+ a page or closing the WebView.
+
+ * Plugins/WebBaseNetscapePluginView.h:
+ Declared -stop so that subclass WebNetscapePluginEmbeddedView can call it.
+
+ * Plugins/WebNetscapePluginEmbeddedView.m:
+ (-[WebNetscapePluginEmbeddedView setWebFrame:]):
+ Stop the plug-in when it is removed from its WebFrame.
+
+2006-04-25 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4472035> SPI that checks for URL policy fails in plugin documents
+
+ * Plugins/WebPluginController.h:
+ * Plugins/WebPluginController.m:
+ (-[WebPluginController URLPolicyCheckReferrer]):
+ New method. Get the referrer from the frame's data source's NSURLResponse. Note that for
+ document types loaded by WebCore, this URL is the same as -[WebCorePageBridge referrer],
+ since the response URL is what we pass to -[WebCorePageBridge openURL:].
+
+ * Plugins/WebPluginContainerCheck.m:
+ (-[WebPluginContainerCheck _isForbiddenFileLoad]):
+ Use the WebPluginController's -URLPolicyCheckReferrer instead of assuming that the bridge's
+ -referrer is valid. -[WebCorePageBridge referrer] is only set during the normal WebCore page
+ load process, which has nothing to do with loading standalone plugin documents.
+
+2006-04-25 Tim Omernick <timo@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc]
+ running layout tests
+
+ * Plugins/WebPluginPackage.m:
+ (-[WebPluginPackage unload]):
+ Clear isLoaded here. It turns out that only WebNetscapePluginPackage cleared its isLoaded
+ flag in -unload. We need to also do it here, because the superclass (WebBasePluginPackage)
+ asserts in -dealloc that -unload has been called.
+
+2006-04-25 Tim Omernick <timo@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/4526120> -[WebBasePluginPackage finalize] leaks the CFBundle (under GC only)
+
+ * Plugins/WebBasePluginPackage.m:
+ (-[WebBasePluginPackage finalize]):
+ Release the CFBundle here.
+
+2006-04-25 Tim Omernick <timo@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4472037>
+
+ Private extensions to the WebPlugin interface. A plugin may implement these methods to receive loading callbacks
+ for its main resource. Plug-ins that implement this SPI show better loading progress in the browser, can be saved
+ to disk, and are more efficient by avoiding making duplicate GET or POST requests for the plug-in's main resource.
+
+ I want to provide a solid API for plug-in networking, but time constraints require that I first provide this simple
+ SPI for internal clients.
+
+ * Plugins/WebPluginViewFactoryPrivate.h:
+ Added a new plugin argument, WebPlugInShouldLoadMainResourceKey. If YES, the plugin is responsible
+ for loading its own content. If NO, the plugin should wait for WebKit to send it the data via the
+ new request-sharing SPI.
+
+ * Plugins/WebPluginPrivate.h: Added.
+ Request-sharing SPI. See comments in code.
+
+ * Plugins/WebPluginDocumentView.h:
+ Hang onto the plugin view as an ivar so we can call the new resource loading methods on it.
+ * Plugins/WebPluginDocumentView.m:
+ (-[WebPluginDocumentView dealloc]):
+ Release pluginView ivar.
+ (-[WebPluginDocumentView setDataSource:]):
+ Pass NO for WebPlugInShouldLoadMainResourceKey to indicate to the plugin that it should not
+ load its own main resource -- the data will come from WebKit. This is only necessary for plugin
+ documents. By the time we create the view for a plugin document, we already have fetched some
+ of its main resource's data. Embedded plugins do not have this issue because WebKit is not
+ involved in loading their content.
+ Call -webPlugInMainResourceDidReceivResponse: on the plugin if necessary. This lets the plugin
+ know how much and what kind of data is going to be received.
+ (-[WebPluginDocumentView dataSourceUpdated:]):
+ If the plugin implements the new request-sharing SPI, don't cancel the in-progress request.
+ (-[WebPluginDocumentView receivedData:withDataSource:]):
+ Forward to the plugin via the new request-sharing SPI.
+ (-[WebPluginDocumentView receivedError:withDataSource:]):
+ ditto
+ (-[WebPluginDocumentView finishedLoadingWithDataSource:]):
+ ditto
+
+ * Plugins/WebPluginPackage.m:
+ Added WebPlugInShouldLoadMainResourceKey, tweaked some style a bit.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]):
+ Pass YES for WebPlugInShouldLoadMainResourceKey. Embedded plugins must load their own data.
+ (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
+ ditto
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Added WebPluginPrivate.h
+
+2006-04-24 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/4525364> REGRESSION (yesterday?): LOG() mechanism is broken
+
+ - initialize WebKit's log channels
+
+ * Misc/WebKitLogging.h:
+ * Misc/WebKitLogging.m:
+ (initializeLogChannel):
+ (WebKitInitializeLoggingChannelsIfNecessary):
+ * WebView/WebPreferences.m:
+ (+[WebPreferences initialize]):
+ * WebView/WebView.m:
+ (-[WebView _commonInitializationWithFrameName:groupName:]):
+
+2006-04-24 Maciej Stachowiak <mjs@apple.com>
+
+ Build fix:
+
+ - move some prematurely moved code back
+
+ * WebCoreSupport/WebFrameBridge.h:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge fini]):
+ (-[WebFrameBridge _preferences]):
+ (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]):
+ (-[WebFrameBridge keyboardUIMode]):
+
+2006-04-24 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - move more code from WebFrameBridge to WebCoreFrameBridge
+
+ * WebCoreSupport/WebFrameBridge.h:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge fini]):
+ (-[WebFrameBridge expiresTimeForResponse:]):
+ (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
+ (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
+ (-[WebFrameBridge valueForKey:keys:values:]):
+ (-[WebFrameBridge _preferences]):
+
+2006-04-24 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ - Remove use of _webSuperviewOfClass: and related
+ http://bugs.webkit.org/show_bug.cgi?id=8562
+
+ I removed all use of these, now objects get at each other via
+ actual pointers, not using the view hierarchy. However, I left two
+ of the calls in because other clients rely on them as SPI (ugh).
+
+ * History/WebHistoryItem.m:
+ * Misc/WebNSViewExtras.h:
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _web_superviewOfClass:]):
+ (-[NSView _web_parentWebFrameView]):
+ * Plugins/WebNetscapePluginDocumentView.m:
+ (-[WebNetscapePluginDocumentView layout]):
+ * Plugins/WebNetscapePluginEmbeddedView.h:
+ * Plugins/WebNetscapePluginEmbeddedView.m:
+ (-[WebNetscapePluginEmbeddedView setWebFrame:]):
+ (-[WebNetscapePluginEmbeddedView dataSource]):
+ * Plugins/WebNullPluginView.h:
+ * Plugins/WebNullPluginView.m:
+ (-[WebNullPluginView setWebFrame:]):
+ (-[WebNullPluginView viewDidMoveToWindow]):
+ * Plugins/WebPluginController.h:
+ * Plugins/WebPluginController.m:
+ (-[WebPluginController setDataSource:]):
+ (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
+ (-[WebPluginController webPlugInContainerShowStatus:]):
+ (-[WebPluginController webPlugInContainerSelectionColor]):
+ (-[WebPluginController webFrame]):
+ * Plugins/WebPluginDocumentView.h:
+ * Plugins/WebPluginDocumentView.m:
+ (-[WebPluginDocumentView setDataSource:]):
+ (-[WebPluginDocumentView layout]):
+ (-[WebPluginDocumentView currentWindow]):
+ (-[WebPluginDocumentView viewWillMoveToWindow:]):
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge formControlIsBecomingFirstResponder:]):
+ (-[WebFrameBridge formControlIsResigningFirstResponder:]):
+ (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
+ * WebCoreSupport/WebViewFactory.m:
+ (-[WebViewFactory bridgeForView:]):
+ * WebView/WebClipView.m:
+ (-[NSView initWithFrame:]):
+ * WebView/WebFrameView.m:
+ (-[WebFrameView _shouldDrawBorder]):
+ (-[WebFrameView webCoreBridge]):
+ * WebView/WebHTMLView.m:
+ (-[WebTextCompleteController dealloc]):
+ (-[WebHTMLView _dataSource]):
+ (-[WebHTMLView _bridge]):
+ (-[WebHTMLView _webView]):
+ (-[WebHTMLView _frameView]):
+ (-[WebHTMLView _web_firstResponderCausesFocusDisplay]):
+ (-[WebHTMLView becomeFirstResponder]):
+ (-[WebHTMLView setDataSource:]):
+ (-[WebHTMLView pageUp:]):
+ (-[WebHTMLView pageDown:]):
+ (-[WebHTMLView pageUpAndModifySelection:]):
+ (-[WebHTMLView pageDownAndModifySelection:]):
+ (-[WebHTMLView _frame]):
+ * WebView/WebHTMLViewInternal.h:
+ * WebView/WebImageView.h:
+ * WebView/WebImageView.m:
+ (-[WebImageView drawRect:]):
+ (-[WebImageView adjustFrameSize]):
+ (-[WebImageView setDataSource:]):
+ (-[WebImageView webView]):
+ (-[WebImageView writeImageToPasteboard:types:]):
+ (-[WebImageView copy:]):
+ (-[WebImageView elementAtPoint:]):
+ (-[WebImageView mouseDragged:]):
+ * WebView/WebPDFView.h:
+ * WebView/WebPDFView.m:
+ (-[WebPDFView _applyPDFDefaults]):
+ (-[WebPDFView _trackFirstResponder]):
+ (-[PDFPrefUpdatingProxy forwardInvocation:]):
+ * WebView/WebRenderNode.m:
+ (-[WebRenderNode initWithWebFrameView:]):
+ * WebView/WebTextView.h:
+ * WebView/WebTextView.m:
+ (-[WebTextView _textSizeMultiplierFromWebView]):
+ (-[WebTextView _preferences]):
+ (-[WebTextView setDataSource:]):
+ (-[WebTextView _webFrame]):
+ (-[WebTextView dragSelectionWithEvent:offset:slideBack:]):
+ (-[WebTextView menuForEvent:]):
+ (-[WebTextView resignFirstResponder]):
+ (-[WebTextView drawPageBorderWithSize:]):
+ (-[WebTextView knowsPageRange:]):
+ * WebView/WebView.m:
+ (-[WebView searchFor:direction:caseSensitive:wrap:]):
+ (containingFrameView):
+ (-[WebView _focusedFrame]):
+ (-[WebView _frameViewAtWindowPoint:]):
+
+2006-04-23 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - push WebFileButton and WebStringTruncator code down to WebCore
+ http://bugs.webkit.org/show_bug.cgi?id=8552
+
+ * Misc/WebStringTruncator.m:
+ (+[WebStringTruncator centerTruncateString:toWidth:]):
+ (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
+ (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
+ (+[WebStringTruncator widthOfString:font:]):
+ * WebCoreSupport/WebFileButton.h: Removed.
+ * WebCoreSupport/WebFileButton.m: Removed.
+ * WebCoreSupport/WebFrameBridge.h:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge runOpenPanelForFileButtonWithResultListener:]):
+ * WebCoreSupport/WebViewFactory.m:
+ (-[WebViewFactory fileButtonChooseFileLabel]):
+ (-[WebViewFactory fileButtonNoFileSelectedLabel]):
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-04-23 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ - remove WebCookieAdapter, WebCore can just use Foundation directly.
+
+ * WebCoreSupport/WebCookieAdapter.h: Removed.
+ * WebCoreSupport/WebCookieAdapter.m: Removed.
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebFrameView.m:
+ (-[WebFrameView initWithFrame:]):
+
+2006-04-23 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Adele.
+
+ - prune WebView SPI of unused calls
+
+ Specifically I moved methods that have no callers outside WebKit
+ to WebViewInternal.h or removed them entirely.
+
+ * DefaultDelegates/WebDefaultContextMenuDelegate.m:
+ * Plugins/WebBaseNetscapePluginView.m:
+ * Plugins/WebNetscapePluginDocumentView.m:
+ * Plugins/WebNetscapePluginStream.m:
+ * Plugins/WebNullPluginView.m:
+ * Plugins/WebPluginContainerCheck.m:
+ * Plugins/WebPluginController.m:
+ * WebCoreSupport/WebFrameBridge.m:
+ * WebCoreSupport/WebPageBridge.m:
+ * WebCoreSupport/WebSubresourceLoader.m:
+ * WebView/WebDataSource.m:
+ * WebView/WebHTMLView.m:
+ * WebView/WebImageView.m:
+ * WebView/WebLoader.m:
+ * WebView/WebMainResourceLoader.m:
+ * WebView/WebPDFView.m:
+ * WebView/WebScriptDebugDelegate.m:
+ * WebView/WebView.m:
+ (-[WebView _downloadURL:]):
+ * WebView/WebViewInternal.h:
+ * WebView/WebViewPrivate.h:
+
+2006-04-22 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ - remove WebKit copy of assertions code, use the assertions
+ stuff from JavaScriptCore instead.
+
+ * Carbon/HIViewAdapter.m:
+ * DOM/WebDOMOperations.m:
+ * DefaultDelegates/WebDefaultContextMenuDelegate.m:
+ * DefaultDelegates/WebDefaultPolicyDelegate.m:
+ (-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:frame:]):
+ * History/WebBackForwardList.m:
+ * History/WebHistory.m:
+ (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
+ (-[WebHistoryPrivate _saveHistoryGuts:URL:error:]):
+ * History/WebHistoryItem.m:
+ * Misc/WebAssertions.h: Removed.
+ * Misc/WebAssertions.m: Removed.
+ * Misc/WebDatabase.m:
+ * Misc/WebDownload.m:
+ * Misc/WebFileDatabase.m:
+ (SetThreadPriority):
+ * Misc/WebIconDatabase.m:
+ (-[NSMutableDictionary iconForURL:withSize:cache:]):
+ (-[NSMutableDictionary releaseIconForURL:]):
+ (-[NSMutableDictionary delayDatabaseCleanup]):
+ (-[NSMutableDictionary allowDatabaseCleanup]):
+ (-[WebIconDatabase _loadIconDictionaries]):
+ (-[WebIconDatabase _updateFileDatabase]):
+ (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
+ * Misc/WebIconLoader.m:
+ * Misc/WebKitLogging.h:
+ * Misc/WebKitLogging.m:
+ * Misc/WebKitSystemBits.m:
+ (initCapabilities):
+ * Misc/WebLRUFileList.m:
+ (WebLRUFileListRemoveOldestFileFromList):
+ (WebLRUFileListGetFileSize):
+ * Misc/WebLocalizableStrings.m:
+ * Misc/WebNSCalendarDateExtras.m:
+ * Misc/WebNSDataExtras.m:
+ * Misc/WebNSDictionaryExtras.m:
+ * Misc/WebNSFileManagerExtras.m:
+ * Misc/WebNSPasteboardExtras.m:
+ * Misc/WebNSURLExtras.m:
+ (hexDigit):
+ (hexDigitValue):
+ (allCharactersInIDNScriptWhiteList):
+ * Misc/WebNSURLRequestExtras.m:
+ * Misc/WebNSUserDefaultsExtras.m:
+ * Misc/WebStringTruncator.m:
+ * Panels/WebAuthenticationPanel.m:
+ (-[WebAuthenticationPanel loadNib]):
+ * Panels/WebPanelAuthenticationHandler.m:
+ * Plugins/WebBaseNetscapePluginStream.m:
+ (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
+ (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
+ * Plugins/WebBaseNetscapePluginView.m:
+ (TSMEventHandler):
+ (-[WebBaseNetscapePluginView start]):
+ (-[WebBaseNetscapePluginView status:]):
+ (-[WebBaseNetscapePluginView _printedPluginBitmap]):
+ * Plugins/WebBasePluginPackage.m:
+ * Plugins/WebNetscapePluginDocumentView.m:
+ * Plugins/WebNetscapePluginPackage.m:
+ (-[WebNetscapePluginPackage load]):
+ * Plugins/WebNetscapePluginRepresentation.m:
+ * Plugins/WebPluginContainerCheck.m:
+ * Plugins/WebPluginController.m:
+ (-[WebPluginController addPlugin:]):
+ (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
+ (-[WebPluginController webPlugInContainerShowStatus:]):
+ * Plugins/WebPluginDatabase.m:
+ * Plugins/WebPluginDocumentView.m:
+ * WebCoreSupport/WebCookieAdapter.m:
+ * WebCoreSupport/WebFileButton.m:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge runModal]):
+ * WebCoreSupport/WebImageData.m:
+ (-[WebImageData _checkSolidColor:]):
+ (-[WebImageData tileInRect:fromPoint:context:]):
+ (-[WebImageData scaleAndTileInRect:fromRect:withHorizontalTileRule:withVerticalTileRule:context:]):
+ * WebCoreSupport/WebImageDecoder.m:
+ * WebCoreSupport/WebImageRenderer.m:
+ (-[WebImageRenderer TIFFRepresentation]):
+ * WebCoreSupport/WebImageRendererFactory.m:
+ * WebCoreSupport/WebJavaScriptTextInputPanel.m:
+ * WebCoreSupport/WebKeyGenerator.m:
+ * WebCoreSupport/WebPageBridge.m:
+ * WebCoreSupport/WebSubresourceLoader.m:
+ * WebCoreSupport/WebTextRenderer.m:
+ (widthForGlyph):
+ (-[WebTextRenderer initWithFont:]):
+ (drawGlyphs):
+ (initializeATSUStyle):
+ (createATSULayoutParameters):
+ (getTextBounds):
+ (ATSU_draw):
+ * WebCoreSupport/WebTextRendererFactory.m:
+ * WebCoreSupport/WebViewFactory.m:
+ * WebKit.exp:
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebKitPrefix.h:
+ * WebView/WebArchiver.m:
+ (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]):
+ * WebView/WebClipView.m:
+ * WebView/WebDataProtocol.m:
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _startLoading]):
+ * WebView/WebFormDataStream.m:
+ (formEventCallback):
+ (webSetHTTPBody):
+ * WebView/WebFrame.m:
+ (-[WebFrame _transitionToCommitted:]):
+ * WebView/WebFrameView.m:
+ * WebView/WebHTMLRepresentation.m:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
+ (-[WebHTMLView drawSingleRect:]):
+ (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
+ (-[WebHTMLView _scaleFactorForPrintOperation:]):
+ (-[WebHTMLView deleteBackwardByDecomposingPreviousCharacter:]):
+ (-[WebHTMLView checkSpelling:]):
+ (-[WebHTMLView showGuessPanel:]):
+ (-[WebHTMLView _changeSpellingToWord:]):
+ (-[WebHTMLView ignoreSpelling:]):
+ (-[WebHTMLView performFindPanelAction:]):
+ (-[WebTextCompleteController doCompletion]):
+ * WebView/WebImageView.m:
+ * WebView/WebLoader.m:
+ (-[NSURLProtocol connection:willCacheResponse:]):
+ * WebView/WebPDFRepresentation.m:
+ (+[WebPDFRepresentation PDFDocumentClass]):
+ * WebView/WebPDFView.m:
+ (+[WebPDFView PDFKitBundle]):
+ (+[WebPDFView PDFViewClass]):
+ (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
+ * WebView/WebTextRepresentation.m:
+ * WebView/WebTextView.m:
+ * WebView/WebUnarchivingState.m:
+ * WebView/WebView.m:
+
+2006-04-22 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Eric.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8514
+ Bug 8514: Web Inspector hides when the app is in the background
+
+ Makes the inspector not hide in the background. Since the inspector is a floating panel
+ we need to call setFloatingPanel:NO when the app is switching into the background. Then
+ call setFloatingPanel:YES when the app is activated again. Without this the inspector
+ would float above all applications.
+
+ * WebInspector/WebInspector.m:
+ (-[NSWindow window]): setHidesOnDeactivate:NO
+ (-[NSWindow windowWillClose:]): de-regiser appliction active notifications
+ (-[NSWindow showWindow:]): register for appliction active notifications
+ (-[WebInspector _applicationWillResignActive]): setFloatingPanel:NO
+ (-[WebInspector _applicationDidBecomeActive]): setFloatingPanel:YES
+
+2006-04-21 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin.
+
+ - Fix for http://bugs.webkit.org/show_bug.cgi?id=8181
+ REGRESSION: After tabbing in page's field, attempting to tab from Google toolbar search to page fails on first try
+
+ Test: manual-tests/tabbing-input-google.html
+
+ * WebView/WebHTMLView.m: (-[WebHTMLView resignFirstResponder]):
+ When resigning first responder, reset willBecomeFirstResponderForNodeFocus, so when the WebHTMLView gets focus again
+ it knows it can start moving through the tab cycle.
+
+2006-04-20 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4476875> Support printing for embedded Netscape plugins
+
+ NOTE: This only works with the Flash plugin right now. It appears that the other
+ major plugins either have awful printing support, or no printing support. If someone
+ can find an example of any other embedded Netscape plugin printing in any browser on
+ the Mac, I will be happy to eat my own words!
+
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView drawRect:]):
+ When printing, get the printed bitmap via -_printedPluginBitmap, and draw it into the
+ plugin view.
+ (-[WebBaseNetscapePluginView _printedPluginBitmap]):
+ Call NPP_Print on the plugin to render it into a GWorld. This GWorld has the same
+ underlying buffer as an NSBitmapImageRep, which is returned to the caller.
+
+2006-04-20 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ WebKit part of:
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8276
+ REGRESSION (NativeTextField): Pasting a Finder item into a text field results in
+ a file: URL being pasted instead of just the file name
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8283
+ REGRESSION: File's path doesn't appear after dragging file into input field
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _plainTextFromPasteboard:]): Added method that tries to copy AppKit
+ text fields' logic for extracting plain text from the pasteboard.
+ (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Added helper method.
+ (-[WebHTMLView _shouldInsertText:replacingDOMRange:givenAction:]):
+ (-[WebHTMLView _shouldReplaceSelectionWithText:givenAction:]):
+ (-[WebHTMLView readSelectionFromPasteboard:]): Paste as plain text if
+ rich text is not allowed.
+ (-[WebHTMLView validateUserInterfaceItem:]): Changed to not allow pasteAsRichText:
+ if the paste is not going to be handled by the DOM and the selection
+ does not allow pasting rich text.
+ (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Paste as plain text if
+ rich text is not allowed.
+ (-[WebHTMLView paste:]): Ditto.
+ (-[WebHTMLView pasteAsPlainText:]):
+
+2006-04-20 Darin Adler <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - WebKit part of http://bugs.webkit.org/show_bug.cgi?id=8505
+ eliminate WebCoreGraphics bridge, demonstrate new SystemInterface technique
+
+ * WebCoreSupport/WebGraphicsBridge.h: Removed.
+ * WebCoreSupport/WebGraphicsBridge.m: Removed.
+ * WebCoreSupport/WebSystemInterface.h: Added.
+ * WebCoreSupport/WebSystemInterface.m: Added.
+
+ * WebKit.xcodeproj/project.pbxproj: Updated for removed and added files.
+
+ * WebCoreSupport/WebImageData.m: Removed unneeded include of WebGraphicsBridge.h.
+ * WebCoreSupport/WebImageRenderer.m: Ditto.
+ * WebCoreSupport/WebTextRenderer.m: Ditto.
+
+ * WebView/WebFrameView.m: (-[WebFrameView initWithFrame:]): Guarded all the one-time
+ initialization inside a boolean, just in case some things take a little time. Added
+ a call to InitWebCoreSystemInterface to the one-time initialization here. Later, we
+ will need to add it in some other places if we call code that requires the use of
+ WebCoreSystemInterface functions from anywhere that can be invoked before creations
+ of the first WebFrameView, but for now there is no need.
+
+2006-04-19 James G. Speth <speth@end.com>
+
+ Reviewed by Timothy.
+
+ http://bugs.webkit.org/show_bug.cgi?id=8442
+ Bug 8442: improvements to Cocoa bindings support in WebView - code simplification
+
+ Removes the WebController class added earlier; changes NSTreeController and
+ WebView to together without it. Now you can just bind the contentObject binding
+ of the tree controller directly to the mainFrameDocument key of the WebView.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge windowObjectCleared]):
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _setTitle:]):
+ * WebView/WebFrame.m:
+ (-[WebFrame _closeOldDataSources]):
+ * WebView/WebView.m:
+ (-[WebView _progressStarted:]):
+ (-[WebView _finalProgressComplete]):
+ (-[WebView _commonInitializationWithFrameName:groupName:]):
+ (-[WebView setMainFrameDocumentReady:]):
+ (-[WebView mainFrameDocument]):
+ * WebView/WebViewPrivate.h:
+
+2006-04-19 James G. Speth <speth@end.com>
+
+ Reviewed by Timothy.
+
+ http://bugs.webkit.org/show_bug.cgi?id=6635
+ Bug 6635: Crash selecting inspector nodes for tabs that aren't foremost
+
+ Stop observing window will close notifications before we tell the highlight window to close,
+ this prevents the crash. Also prevent drawing highlights for hidden tabs.
+
+ * WebInspector/WebInspector.m:
+ (-[WebInspector _highlightNode:]):
+ * WebInspector/WebNodeHighlight.m:
+ (-[WebNodeHighlight expire]):
+
+2006-04-19 James G. Speth <speth@end.com>
+
+ Reviewed by Timothy.
+
+ http://bugs.webkit.org/show_bug.cgi?id=6637
+ Bug 6637: selecting node in Inspector after closing window crashes Safari
+
+ When the window the Web Inspector was inspecting is closed, the inspector goes into its
+ no-selection state. Choosing to inspect another element activates it again. The inspector
+ will also follow the WebView if the URL changes and select the root element on the new page.
+
+ * WebInspector/WebInspector.m:
+ (-[NSWindow setWebFrame:]):
+ (-[NSWindow setRootDOMNode:]):
+ (-[WebInspector _revealAndSelectNodeInTree:]):
+ (-[WebInspector _update]):
+ (-[WebInspector _updateRoot]):
+ (-[WebInspector inspectedWebViewProgressFinished:]):
+ (-[WebInspector inspectedWindowWillClose:]):
+ (-[WebInspector webView:didFinishLoadForFrame:]):
+ * WebInspector/WebInspectorPanel.m:
+ (-[WebInspectorPanel canBecomeMainWindow]):
+
+2006-04-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Beth.
+
+ * WebInspector/webInspector/inspector.css: Add "-webkit-" prefixes to the border
+ radius properties to make the corners rounded again.
+
+2006-04-16 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ - WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=8324
+ REGRESSION: textarea :focus not applied immediately
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge formControlIsBecomingFirstResponder:]): Added. Calls the ancestor
+ WebHTMLView's _formControlIsBecomingFirstResponder:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _updateFocusState:]): If a descendant is becoming first responder,
+ enable focused appearance.
+ (-[WebHTMLView _formControlIsBecomingFirstResponder:]): Added. Calls _updateFocusState,
+ causing the frame to display with focus attributes.
+ * WebView/WebHTMLViewInternal.h:
+
+2006-04-14 James G. Speth <speth@end.com>
+
+ Reviewed by Timothy.
+
+ Bug 8389: support for Cocoa bindings - binding an NSTreeController to the WebView's DOM
+ http://bugs.webkit.org/show_bug.cgi?id=8389
+
+ Added a controller class, WebController, that is a subclass of
+ NSTreeController that has a new outlet/binding for the WebView.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge windowObjectCleared]): notify bindings about the document change
+ * WebView/WebView.m:
+ (-[WebView _progressStarted:]): notify bindings about the document change
+ (-[WebView _finalProgressComplete]): notify bindings about the document change
+ (-[WebView _declaredKeys]): added a key for the main frame document
+ (-[WebController init]):
+ (-[WebController exposedBindings]):
+ (-[WebController valueClassForBinding:]):
+ (-[WebController setContent:]):
+ (-[WebController webView]):
+ (-[WebController setWebView:]):
+ (-[WebView mainFrameDocument]): get the main frame's DOMDocument
+ * WebView/WebViewPrivate.h: Adds mainFrameDocument to pending public.
+
+2006-04-12 David Harrison <harrison@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker does not respect paragraph boundary
+ <rdar://problem/4414575> AX: Dictionary popup cannot find some words on Dictionary.app
+
+ (see related changes in WebCore)
+
+ Tests added:
+ * editing/selection/extend-by-sentence-001.html: Added.
+ * fast/dom/inner-text-001.html: Added.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView validateUserInterfaceItem:]):
+ (-[WebHTMLView moveToBeginningOfSentence:]):
+ (-[WebHTMLView moveToBeginningOfSentenceAndModifySelection:]):
+ (-[WebHTMLView moveToEndOfSentence:]):
+ (-[WebHTMLView moveToEndOfSentenceAndModifySelection:]):
+ (-[WebHTMLView selectSentence:]):
+ * WebView/WebView.m:
+ * WebView/WebViewPrivate.h:
+ Add sentence navigation and selection.
+
+2006-04-12 Tim Omernick <timo@apple.com>
+
+ Reviewed by Darin.
+
+ Part of <rdar://problem/4482530>
+
+ * WebView/WebView.m:
+ (-[WebView _focusedFrame]):
+ Fixed up the logic here to take into account immediate subviews of WebView, which are not actually in a WebFrameView
+ (they are peers to the main frame's WebFrameView).
+
+2006-04-10 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed <rdar://problem/4139799> Seed: Safari: Private Browsing leaves traces in Icon Cache
+
+ * Misc/WebIconDatabasePrivate.h:
+ new ivars: pageURLsBoundDuringPrivateBrowsing, iconURLsBoundDuringPrivateBrowsing, and privateBrowsingEnabled
+
+ * Misc/WebIconDatabase.m:
+ (-[NSMutableDictionary init]):
+ initialize new ivars, and listen for notifications that WebPreferences changed so we can react to changes
+ to private browsing.
+ (-[NSMutableDictionary iconForURL:withSize:cache:]):
+ Don't remove icon URL from extraRetain dictionary; that's now done in _forgetIconForIconURLString. (I left a
+ comment here earlier about why I was worried about this change, but I convinced myself that it's fine.)
+ (-[WebIconDatabase removeAllIcons]):
+ Removed no-longer-true (and never very clear) comment, and braces. Also remove all objects from the two
+ private-browsing-related dictionaries.
+ (-[WebIconDatabase _setIcon:forIconURL:]):
+ remember icon URL if private browsing is enabled
+ (-[WebIconDatabase _setHaveNoIconForIconURL:]):
+ remember icon URL if private browsing is enabled
+ (-[WebIconDatabase _setIconURL:forURL:]):
+ added an assert that helped me out at one point
+ (-[WebIconDatabase _clearDictionaries]):
+ clear the two new dictionaries too
+ (-[WebIconDatabase _loadIconDictionaries]):
+ made an existing ERROR not fire in the expected case where there are no icons at all on disk
+ (-[WebIconDatabase _updateFileDatabase]):
+ when saving the pageURLToIconURL dictionary to disk, first remove any values that were created during
+ private browsing
+ (-[WebIconDatabase _retainIconForIconURLString:]):
+ skip the code that deals with saving changes to disk if private browsing is enabled
+ (-[WebIconDatabase _forgetIconForIconURLString:]):
+ Remove the icon URL from extraRetain dictionary here. We're forgetting everything about this icon URL
+ so we should forget its former extraRetain count too.
+ (-[WebIconDatabase _resetCachedWebPreferences:]):
+ Cache the new value of private browsing. If it has now been turned off, forget everything we learned
+ while it was on. This causes (e.g.) icons for bookmarks or pre-existing history items to be forgotten
+ if the icon was only learned during private browsing.
+
+ * History/WebHistoryItem.m:
+ removed an unnecessary #import I happened to notice
+
+2006-04-10 David Hyatt <hyatt@apple.com>
+
+ Make the broken CG focus ring painting work when WebCore sets a clip
+ (in addition to respecting the dirty rect clip).
+
+ Reviewed by darin
+
+ * WebCoreSupport/WebGraphicsBridge.m:
+ (-[WebGraphicsBridge drawFocusRingWithPath:radius:color:clipRect:]):
+
+2006-04-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8100
+ REGRESSION (NativeTextField): Right-aligned and RTL text jitters in new text fields
+
+ * WebCoreSupport/WebTextRenderer.m:
+ (overrideLayoutOperation): For RTL runs, apply the word-rounding on the left.
+ (CG_floatWidthForRun): For RTL runs, apply the last character's rounding
+ on the left by adjusting the start position.
+ (initializeWidthIterator): Added finalRoundingWidth field to WidthIterator.
+ (advanceWidthIterator): For RTL runs, apply rounding on the left of the character,
+ by increasing the width of the next character (which is the character to the left). For
+ the last character, keep the rounding width in the iterator's finalRoundingWidth, to be used by
+ CG_floatWidthForRun().
+
+2006-04-08 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ - fixed http://bugs.webkit.org/show_bug.cgi?id=8260
+ REGRESSION: Assertion failure: ![_private->iconsToSaveWithURLs containsObject:iconURLString]
+ in WebIconDatabase.m:695-[WebIconDatabase(WebInternal) _retainIconForIconURLString:]
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase _retainIconForIconURLString:]):
+ This new assertion was one block too high; moved it in.
+
+2006-04-07 David Hyatt <hyatt@apple.com>
+
+ A fix that makes coalesced updates work much better (and makes our
+ single animated GIF timer work better). The new rect painting algorithm
+ for WebHTMLView will use the single unioned rect if the # of rects exceeds
+ a threshold (10 is my initial cut), or if the union has enough "wasted"
+ additional pixels (conservatively set at 75%).
+
+ Reviewed by darin
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView drawSingleRect:]):
+ (-[WebHTMLView drawRect:]):
+
+2006-04-07 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - simplify archive loading
+
+ * WebView/WebDataSource.m:
+ (-[WebDataSource representation]): fix whitespace
+ * WebView/WebHTMLRepresentation.m:
+ (-[WebHTMLRepresentation loadArchive]): Use WebFrame's loadArchive: instead
+ of trying to do a manual load here.
+ (-[WebHTMLRepresentation documentSource]): No more special case for WebArchive.
+
+2006-04-07 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed <rdar://problem/4507054> If an icon file is removed from disk behind Safari's back,
+ Safari will not try to refetch it
+
+ In addition to letting WebIconDatabase recover from disk/memory mismatches as per 4507054, I also found
+ a bug in the way icons are remembered that could account for some of the other cases where
+ site icons didn't appear (and you'd get an ERROR on debug builds about WebIconDatabase saying it
+ had some icon when it really doesn't).
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase iconForURL:withSize:cache:]):
+ When the icon file for a previously-saved site icon isn't found, forget about the darn icon URL thoroughly
+ so that this situation is self-correcting. Formerly, once you got into this state WebKit would never find
+ the icon again (short of removing the entire icon database cleanly). Note that this does *not* change
+ the behavior of sites that didn't have a site icon when WebKit checked -- these will continue to not
+ return a site icon indefinitely (that's a separate, possibly performance-sensitive issue).
+ (-[WebIconDatabase _retainIconForIconURLString:]):
+ This code did the wrong thing in the case where an icon was in the process of being forgotten about. In
+ that case, the icon would still be in _private->iconsOnDiskWithURLs, so we wouldn't try to save it here,
+ so the new icon wouldn't stick.
+
+2006-04-07 David Hyatt <hyatt@apple.com>
+
+ Re-enable coalesced updates. Our move to a single timer has essentially
+ implemented coalescing of updates anyway, so the regression has already
+ come back. Since we have to deal with that now anyway, there's no reason
+ to visually tear also. :)
+
+ Reviewed by darin
+
+ * ChangeLog:
+ * WebView/WebView.m:
+ (-[WebView _commonInitializationWithFrameName:groupName:]):
+
+2006-04-05 Darin Adler <darin@apple.com>
+
+ - fixed a storage leak from that last check-in
+
+ * WebView/WebUnarchivingState.m: (-[WebUnarchivingState dealloc]):
+ Release the two dictionaries.
+
+2006-04-05 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ - start on factoring WebArchive unpacking more into a separate class.
+ http://bugs.webkit.org/show_bug.cgi?id=8208
+
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebDataSource.m:
+ (-[WebDataSourcePrivate dealloc]):
+ (-[WebDataSource _addToUnarchiveState:]):
+ (-[WebDataSource _popSubframeArchiveWithName:]):
+ (-[WebDataSource _documentFragmentWithArchive:]):
+ (-[WebDataSource _setupForReplaceByMIMEType:]):
+ (-[WebDataSource subresourceForURL:]):
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebFrame.m:
+ (-[WebFrame _loadRequest:archive:]):
+ (-[WebFrame loadRequest:]):
+ (-[WebFrame loadArchive:]):
+ * WebView/WebFramePrivate.h:
+ * WebView/WebHTMLRepresentation.m:
+ (-[WebHTMLRepresentation loadArchive]):
+ * WebView/WebUnarchivingState.h: Added.
+ * WebView/WebUnarchivingState.m: Added.
+ (-[WebUnarchivingState init]):
+ (-[WebUnarchivingState addArchive:]):
+ (-[WebUnarchivingState archivedResourceForURL:]):
+ (-[WebUnarchivingState popSubframeArchiveWithFrameName:]):
+
+2006-04-04 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ The Debug and Release frameworks are now built with install paths relative to the build products directory.
+ This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
+2006-04-04 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ - WebKit part of <rdar://problem/4498418> "Autosaved" searchterms are saved during private browsing
+
+ * WebView/WebView.m:
+ (-[WebView _updateWebCoreSettingsFromPreferences:]):
+ Pass private browsing setting down to WebCore.
+
+2006-04-03 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ - re-fixed <rdar://problem/4481198> REGRESSION (TOT): search results list in bookmarks view
+ remains when search text is deleted
+
+ * WebView/WebView.m:
+ (-[WebView searchFor:direction:caseSensitive:wrap:]):
+ I fixed this recently, but then broke it again by adding an early bail-out to this method. So
+ now I'm removing the early bail-out.
+
+2006-04-02 Trey Matteson <trey@usa.net>
+
+ Reviewed by Maciej.
+
+ fix http://bugs.webkit.org/show_bug.cgi?id=8121
+ REGRESSION: 404s are not displayed
+
+ * WebView/WebMainResourceLoader.m:
+ (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
+ Only cancel failed loads for object elements, not for frames or a whole page.
+
+2006-04-02 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Hyatt.
+
+ - fixed <rdar://problem/4198619> REGRESSION: tabbing through links fails after hitting text field w/ sys's "tab to all controls" off
+ - fixed <rdar://problem/4463760> REGRESSION: Can't tab from old text field (like password fields) to new text field (6811)
+ (http://bugs.webkit.org/show_bug.cgi?id=6811)
+ - fixed tab and shift tab don't select the right things
+ http://bugs.webkit.org/show_bug.cgi?id=5685
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge willMakeFirstResponderForNodeFocus]): New method
+ - let WebHTMLView know that the next time it becomes first
+ responder, it's to change focus within the page and the right node
+ has already been set, so it should not move focus forward or
+ backward inside it.
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView needsPanelToBecomeKey]): Override to return YES, oddly enough this
+ is the right way to tell AppKit that you should be in the tab cycle loop.
+ (-[WebHTMLView becomeFirstResponder]): Don't move forward or back in tab cycle
+ when this becomeFirstResponder is for tabbing from a control in the page.
+ (-[WebHTMLView _willMakeFirstResponderForNodeFocus]): Note that the next
+ time this view becomes first responder, it will be for in-page focus
+ navigation.
+ * WebView/WebHTMLViewInternal.h:
+
+2006-04-01 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=8105
+ REGRESSION (NativeTextField): Option-delete deletes one space before the deleted word
+
+ Test: fast/forms/input-text-option-delete.html
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Pass NO for
+ smartDeleteOK. Smart deletion only applies to deleting a word at a time, and none of
+ the callers of this function that delete a word at a time want smart deletion.
+ (-[WebHTMLView deleteToEndOfLine:]): Fixed tiny formatting glitch.
+
+2006-03-31 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ We need to set reachedTerminalState to YES before we release
+ the resources to prevent a double dealloc of WebView
+
+ Fixes <rdar://problem/4372628> crash deallocating a WebView in -[WebFrame stopLoading]
+
+ * WebView/WebLoader.m:
+ (-[NSURLProtocol releaseResources]): set reachedTerminalState earlier
+
+2006-03-31 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ Some cleanup in the WebIconDatabase code in a fruitless search for the cause
+ of the mysterious -[WebFileDatabase performSetObject:forKey] crash
+
+ * Misc/WebIconDatabase.m:
+ (-[WebIconDatabase _createFileDatabase]):
+ removed obsolete comment
+ (-[WebIconDatabase _loadIconDictionaries]):
+ Added ERRORs for unexpected early returns. Made dictionaries be autoreleased until
+ the end of the method where they are retained, so that the early returns don't leak;
+ added ASSERTs that the _private->dictionary values aren't being leaked.
+ (-[WebIconDatabase _updateFileDatabase]):
+ Added an ERROR for an unexpected early return, and made a trivial style fix.
+
+2006-03-31 Trey Matteson <trey@usa.net>
+
+ Reviewed by Maciej, landed by ap.
+
+ http://bugs.webkit.org/show_bug.cgi?id=7739
+ REGRESSION: Assertion failure loading acid2 test in -[WebCoreFrameBridge installInFrame:]
+
+ Tests: http/tests/misc/acid2.html, http/tests/misc/acid2-pixel.html
+
+ The gist of this change is that we must cancel the load from the Webkit side when we
+ realize we're switching to the fallback content. This is somewhat a temp workaround
+ since control of loading will be moving to WebCore.
+
+ * WebView/WebMainResourceLoader.m:
+ (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
+
+2006-03-30 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by darin
+
+ http://bugs.webkit.org/show_bug.cgi?id=6989
+ REGRESSION: Plain-text mode needed for contenteditable area used in new text field
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _canEditRichly]): Added.
+ (-[WebHTMLView _canIncreaseSelectionListLevel]): Use _canEditRichly
+ (-[WebHTMLView _canDecreaseSelectionListLevel]): Ditto.
+ (-[WebHTMLView _increaseSelectionListLevel]):
+ (-[WebHTMLView _decreaseSelectionListLevel]):
+ (-[WebHTMLView validateUserInterfaceItem:]):
+ Split rich text editing actions off from ones that can be applied anywhere.
+ (-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
+ (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]):
+ (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]):
+ * WebView/WebHTMLViewPrivate.h:
+
+2006-03-29 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4495316> REGRESSION (420+): After page has loaded, spinning progress indicator is displayed on
+ tab at versiontracker.com
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _receivedMainResourceError:]):
+ Call -_clientRedirectCancelledOrFinished: here so that the frame load delegate is notified that the redirect's
+ status has changed, if there was a redirect. The frame load delegate may have saved some state about
+ the redirect in its -webView:willPerformClientRedirectToURL:delay:fireDate:forFrame:. Since we are definitely
+ not going to use this provisional resource, as it was cancelled, notify the frame load delegate that the redirect
+ has ended.
+ The fix for 4432562 was similar to this, but only took care of the case where the redirect load was actually
+ committed to the frame. The new call to -_clientRedirectCancelledOrFinished: handles the case where the redirect
+ load was successful, but was not committed. This happens with downloads.
+
+2006-03-29 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed these bugs:
+ <rdar://problem/4483806> REGRESSION (417.8-TOT): PDFs don't scale correctly with auto-size (5356)
+ <rdar://problem/3874856> Safari PDF display should be full width by default rather than
+ sized to show the entire page
+
+ * WebView/WebPDFRepresentation.m:
+ (-[WebPDFRepresentation finishedLoadingWithDataSource:]):
+ Let the WebPDFView handle setting the document, because that's the best time to apply
+ the sizing-related preferences.
+
+ * WebView/WebPDFView.h:
+ eliminated firstLayoutDone ivar and -PDFSubview public method; added -setPDFDocument:
+
+ * WebView/WebPDFView.m:
+ (-[WebPDFView initWithFrame:]):
+ eliminate use of obsolete firstLayoutDone ivar
+ (-[WebPDFView _applyPDFDefaults]):
+ renamed from _readPDFDefaults for clarity
+ (-[WebPDFView layout]):
+ removed code that applied the preferences here. This was too early to handle auto-sizing correctly,
+ because -layout can be called before the document exists, and calling setAutoSize:YES at that
+ point confuses PDFView into setting the scale factor to 20 (the maximum).
+ (-[WebPDFView setPDFDocument:]):
+ New method, does what WebPDFRepresentation used to do and also applies the preferences here.
+ This is a good place to apply them because the document is guaranteed to now exist (of course).
+ (-[WebPDFView PDFSubview]):
+ Moved this into a new FileInternal category because it's still needed by another class in
+ this file but no longer needs to be public.
+
+ * WebView/WebPreferences.m:
+ (+[WebPreferences initialize]):
+ Change WebKitPDFScaleFactorPreferenceKey to 0, which represents auto-size. This fixes 3874856,
+ but wasn't feasible until 4483806 was fixed.
+
+2006-03-28 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ - added a build step that checks for init routines
+
+ * WebKit.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
+ check-for-global-initializers script.
+
+2006-03-28 Tim Omernick <timo@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/3694090> -[WebBaseNetscapePluginView finalize] is incorrect; design change needed
+
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView initWithFrame:]):
+ Don't observe preferences changes here -- we only want to observe preferences while the view is
+ installed in the view hierarchy. Plugins will appropriately start and stop themselves when added to
+ or removed from a window.
+ (-[WebBaseNetscapePluginView dealloc]):
+ Don't remove observers here -- they should have been removed when the view was removed from its
+ window.
+ (-[WebBaseNetscapePluginView finalize]):
+ ditto
+ (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
+ Stop observing preferences when the view is removed from its window.
+ (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
+ Start observing preferences when the view is added to a window.
+
+2006-03-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/3694090> -[WebBaseNetscapePluginView finalize] is incorrect; design change needed
+
+ * ChangeLog:
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView dealloc]):
+ Instead of calling -stop, assert that the plugin is not running. A plugin view cannot be deallocated
+ until it is removed from its window. When a plugin view is removed from its window, it calls -stop
+ on itself. Therefore I believe that this call to -stop is unnecessary; if I'm wrong, then the
+ assertion will help catch any edge cases.
+ (-[WebBaseNetscapePluginView finalize]):
+ ditto
+
+2006-03-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/3694086> -[WebBaseNetscapePluginStream finalize] is incorrect; design change needed
+
+ * Plugins/WebBaseNetscapePluginStream.m:
+ (-[WebBaseNetscapePluginStream dealloc]):
+ Assert that the stream file path either never existed, or was deleted and NULL-ed out. The stream file
+ is now deleted immediately after calling NPP_StreamAsFile().
+ (-[WebBaseNetscapePluginStream finalize]):
+ ditto
+ (-[WebBaseNetscapePluginStream _destroyStream]):
+ Delete the file after calling NPP_StreamAsFile(), instead of in -dealloc/-finalize. It should be OK
+ to delete the file here -- NPP_StreamAsFile() is always called immediately before NPP_DestroyStream()
+ (the stream destruction function), so there can be no expectation that a plugin will read the stream file
+ asynchronously after NPP_StreamAsFile() is called.
+
+2006-03-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Eric.
+
+ <rdar://problem/3694093> -[WebBasePluginPackage finalize] is incorrect; design change needed
+
+ Call -unload on plug-in packages instead of relying on -dealloc/-finalize to do it. Currently
+ the only place plug-in packages are deallocated is when refreshing the set of plugins, as when
+ handling JavaScript's navigator.plugins.refresh().
+
+ * Plugins/WebBasePluginPackage.m:
+ (-[WebBasePluginPackage dealloc]):
+ Assert that the plug-in has been unloaded by the time -dealloc is called.
+ (-[WebBasePluginPackage finalize]):
+ ditto
+
+ * Plugins/WebPluginDatabase.m:
+ (-[WebPluginDatabase refresh]):
+ Call -unload on the plug-in packages before releasing them.
+
+2006-03-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Part of <rdar://problem/4448350> Deprecated ObjC language API used in JavaScriptCore, WebCore,
+ WebKit and WebBrowser
+
+ * Carbon/HIViewAdapter.h:
+ HIViewAdapter is no longer an NSView subclass, since we no longer pose it as NSView.
+ * Carbon/HIViewAdapter.m:
+ (+[NSView bindHIViewToNSView:nsView:]):
+ Replace individual NSView methods instead of posing as NSView.
+ (_webkit_NSView_setNeedsDisplay):
+ Replacement implementation of -[NSView setNeedsDisplay:].
+ (_webkit_NSView_setNeedsDisplayInRect):
+ Replacement implementation of -[NSView setNeedsDisplayInRect:]
+ (_webkit_NSView_nextValidKeyView):
+ Replacement implementation of -[NSView nextValidKeyView]
+
+2006-03-27 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Removed two overzealous assertions that the steps to reproduce 4451831 were running into.
+ Improved comments to match.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge _nextKeyViewOutsideWebFrameViewsWithValidityCheck:]):
+ Remove assertion that _inNextKeyViewOutsideWebFrameViews should always be false here.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView nextValidKeyView]):
+ Removed assertion that the frame should never be the main frame here.
+
+2006-03-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Removed tabs & reformatted code.
+
+ * Carbon/HIViewAdapter.m:
+ (+[NSView bindHIViewToNSView:nsView:]):
+ (+[NSView getHIViewForNSView:]):
+ (+[NSView unbindNSView:]):
+ (-[NSView setNeedsDisplay:]):
+ (-[NSView setNeedsDisplayInRect:]):
+ (-[NSView nextValidKeyView]):
+ (SetViewNeedsDisplay):
+
+2006-03-26 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by darin
+
+ <http://bugs.webkit.org/show_bug.cgi?id=7974>
+ Add EditActions and WebUndoActions for CreateLink and Unlink
+
+ * English.lproj/Localizable.strings:
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge nameForUndoAction:]):
+
+2006-03-23 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ At John's suggestion, renamed a private WebFrame method and tightened up some of the redirect logic I recently touched.
+
+ * WebView/WebFramePrivate.h:
+ Renamed -_clientRedirectCancelled: to -_clientRedirectCancelledOrFinished:, since we call this both when a redirect is
+ cancelled and when a redirect is successfully committed.
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge reportClientRedirectCancelled:]):
+ Call renamed WebFrame method.
+ * WebView/WebFrame.m:
+ Added sentRedirectNotification flag to WebFramePrivate. This flag is set when we notify the frame load delegate that a
+ redirect will occur. We check this flag when committing a provisional load to ensure that the frame load delegate is
+ notified that the redirect finished.
+ (-[WebFrame _commitProvisionalLoad:]):
+ After committing a provisional load, make sure that the frame load delegate is notified that there is no longer a pending
+ redirect.
+ (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
+ Set the new sentRedirectNotification flag.
+ (-[WebFrame _clientRedirectCancelledOrFinished:]):
+ Renamed method.
+ Clear the sentRedirectNotification flag.
+ (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
+ Call renamed method.
+
+2006-03-23 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/4439752> TinyMCE: "Search in Google" context menu is active but fails to work when selection is active
+ in textarea field.
+
+ * DefaultDelegates/WebDefaultContextMenuDelegate.m:
+ (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
+ Added a representedObject parameter, which is set on the newly created menu item.
+ (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
+ Instead of setting the representedObject on each menu item after creating them all, pass the element to
+ -menuItemWithTag:target:representedObject:.
+ (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
+ ditto. This fixes 4439752 because this method failed to set the representedObject on the menu items as
+ -contextMenuItemsForElement:defaultMenuItems: did.
+
+2006-03-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Eric.
+
+ - fix <rdar://problem/4380465> repro crash when unsuccessfully attempting to import image from Services menu
+
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _imageElementWithImageResource:]): Quietly do nothing if passed nil.
+ (-[WebDataSource _documentFragmentWithImageResource:]): Ditto.
+
+2006-03-22 Tim Omernick <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ Even better fix for <rdar://problem/4432562>. We need to notify the frame delegate of a finished redirect for both
+ "fast" and "slow" redirects, after committing the load. My previous change only notified for "fast", history-locking
+ redirects. Now we notify the frame delegate after committing any kind of provisional load, not just in the case of
+ a fast redirect.
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _transitionToCommitted:]):
+ (-[WebFrame _commitProvisionalLoad:]):
+
+2006-03-22 Tim Omernick <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ Better fix for <rdar://problem/4432562> REGRESSION (TOT): Safari's "stop loading" active, "view source" inactive after page load [7058]
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _transitionToCommitted:]):
+ Cancel the client redirect when we commit the provisional load, if we were waiting for a redirect.
+ This is a better fix for 7058 (<rdar://problem/4432562>). The original fix for 7058 changed the timing of the redirect cancel
+ in such a way that WebKit was precluded from ever reusing back/forward list entries for redirects. Clearing the redirect state
+ here actually makes logical sense, as the redirect's target page is being committed at this point.
+
+2006-03-21 Darin Adler <darin@apple.com>
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=3784
+ <rdar://problem/4483827> JavaScript save dialog disappears right away (sheet triggers blur event) (3784)
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _updateFocusState]): Treat window as having focus if its sheet is key.
+ (-[WebHTMLView addWindowObservers]): Observe all focus notifications, not just the ones involving this window.
+ (-[WebHTMLView removeWindowObservers]): Ditto.
+ (-[WebHTMLView windowDidBecomeKey:]): Add checks so that we call the methods only when appropriate,
+ since this will now be called for all windows.
+ (-[WebHTMLView windowDidResignKey:]): Ditto.
+
+2006-03-21 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin.
+
+ - Fix for http://bugs.webkit.org/show_bug.cgi?id=6813
+ elementAtPoint needs to return input element when clicking on new text field
+
+ * WebView/WebDocumentInternal.h: Added elementAtPoint:allowShadowContent:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView elementAtPoint:]): Does not allow shadow content. This way, by default, callers would get the input element instead of the inner div.
+ (-[WebHTMLView elementAtPoint:allowShadowContent:]): Allows callers to specify whether or not the element can be a shadow node.
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): Allows shadow content when getting element.
+ (-[WebHTMLView _mayStartDragAtEventLocation:]): ditto.
+ (-[WebHTMLView _isSelectionEvent:]): ditto.
+ (-[WebHTMLView _canProcessDragWithDraggingInfo:]): ditto.
+ * WebView/WebFrame.m: (-[WebFrame _actionInformationForNavigationType:event:originalURL:]): Does not allow shadow content when getting element.
+ * WebView/WebImageView.m: (-[WebImageView elementAtPoint:allowShadowContent:]): Added to conform to the WebDocumentElement protocol.
+ * WebView/WebPDFView.m: (-[WebPDFView elementAtPoint:allowShadowContent:]): ditto.
+ * WebView/WebTextView.m: (-[WebTextView elementAtPoint:allowShadowContent:]): ditto.
+
+2006-03-21 Tim Omernick <timo@apple.com>
+
+ Reviewed by Tim Hatcher and Darin.
+
+ <rdar://problem/4427068> LMGetCurApRefNum, CloseConnection and GetDiskFragment deprecated, used in Netscape
+ plugin code
+
+ * Plugins/WebNetscapeDeprecatedFunctions.h: Added.
+ * Plugins/WebNetscapeDeprecatedFunctions.c: Added.
+ Added wrappers for deprecated CFM and LowMem functions. These exist in a separate file so that we can set
+ -Wno-deprecated-declarations on this one file without ignoring other deprecated function usage elsewhere.
+ (WebGetDiskFragment):
+ (WebCloseConnection):
+ (WebLMGetCurApRefNum):
+ (WebLMSetCurApRefNum):
+
+ * Plugins/WebNetscapePluginPackage.h:
+ Don't include connID ivar in 64-bit, since CFM is not supported in 64-bit.
+ * Plugins/WebNetscapePluginPackage.m:
+ (+[WebNetscapePluginPackage initialize]):
+ Don't bother setting the resource refNum in 64-bit, because the API to get and set it does not exist.
+ A theoretical 64-bit plugin couldn't possibly rely this, since there is no API.
+ (-[WebNetscapePluginPackage unloadWithoutShutdown]):
+ No need to close the connID in 64-bit.
+ (-[WebNetscapePluginPackage load]):
+ Don't load CFM bundles in 64-bit, because CFM is not supported.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Added WebNetscapeDeprecatedFunctions.[hm].
+
+2006-03-21 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ - fixed <rdar://problem/4485637> Implementors of searchFor:direction:caseSensitive:wrap: should bail
+ out early if search string is empty
+
+ This doesn't change any existing behavior, but avoids unnecessary work.
+
+ * Misc/WebSearchableTextView.m:
+ (-[WebSearchableTextView searchFor:direction:caseSensitive:wrap:]):
+ bail out immediately (returning NO) if search string is empty
+
+ * WebView/WebHTMLView.m:
+ (-[WebView searchFor:direction:caseSensitive:wrap:]):
+ ditto
+
+ * WebView/WebPDFView.m:
+ (-[WebPDFView searchFor:direction:caseSensitive:wrap:]):
+ ditto
+
+ * WebView/WebView.m:
+ (-[WebView searchFor:direction:caseSensitive:wrap:]):
+ ditto
+
+2006-03-20 Tim Omernick <timo@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Moved -_contentView from WebFrameViewInternal to WebFrameViewPrivate. Safari
+ needs this.
+
+ * WebView/WebFrameView.m:
+ (-[WebFrameView _contentView]):
+ * WebView/WebFrameViewInternal.h:
+ * WebView/WebFrameViewPrivate.h:
+
+2006-03-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Reviewed by Darin, landed by Beth.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=7693
+ WebKit relies on unpredictable timing for onload events
+
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _receivedMainResourceError:complete:]): Check for
+ completion on the WebCore side before checking on the WebKit side,
+ to ensure that the onload event is emitted before the WebFrame load
+ delegate is sent the webView:didFinishLoadForFrame: message. For
+ DumpRenderTree, this ensures that the render tree is dumped after
+ the onload handler is run.
+ * WebView/WebLoader.m:
+ (-[NSURLProtocol didFailWithError:]): If load has already been
+ cancelled (which could happen if the parent's onload handler caused
+ the frame to detach), do nothing.
+
+2006-03-17 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Beth Dakin
+
+ - fixed <rdar://problem/4239051> Sometimes "Copy Link" in Safari results in a
+ URL on the pasteboard with no usable "title"
+
+ * History/WebURLsWithTitles.m:
+ (+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]):
+ trim whitespace from titles that are put on pasteboard. This leaves an empty string
+ for the title in cases where there's no displayed text, like an image in an <a> element
+ that happens to have whitespace in the source, e.g. <a href="foo"> <img whatever></a>
+
+2006-03-17 Darin Adler <darin@apple.com>
+
+ - missing bit of my check-in yesterday
+
+ Maciej moved setWindowFrame for me, but I also had removed
+ setWindowContentRect.
+
+ * WebCoreSupport/WebFrameBridge.m: Removed unused setWindowContextRect and
+ windowContentRect methods.
+
+2006-03-17 Adele Peterson <adele@apple.com>
+
+ Reviewed by Hyatt.
+
+ WebKit part of fix for:
+ http://bugs.webkit.org/show_bug.cgi?id=7797
+ Can't set background color on new text fields
+
+ Added function to draw bezeled text field without drawing background.
+
+ * WebCoreSupport/WebGraphicsBridge.m:
+ (-[WebGraphicsBridge drawBezeledTextFieldCell:enabled:]): Added.
+
+2006-03-16 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Eric.
+
+ - move setWindowFrame / windowFrame to WebPageBridge to fix build
+
+ * WebCoreSupport/WebFrameBridge.m:
+ * WebCoreSupport/WebPageBridge.m:
+ (-[WebPageBridge setWindowFrame:]):
+ (-[WebPageBridge windowFrame]):
+
+2006-03-15 Darin Adler <darin@apple.com>
+
+ Fix by Patrick Beard, reviewed by me.
+
+ - fix <rdar://problem/4478181> WebPluginController leaks NSArray and NSMutableSet objects
+
+ * Plugins/WebPluginController.m:
+ (-[WebPluginController initWithDocumentView:]): Call CFMakeCollectable on the CFSet
+ so we can act like it's an NSSet.
+ (-[WebPluginController dealloc]): Release _views and _checksInProgress.
+
+2006-03-13 Tim Omernick <timo@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/4476873> Support printing for plugin documents (not embedded plugins)
+
+ * WebView/WebFrameViewPrivate.h:
+ * WebView/WebFrameView.m:
+ (-[WebFrameView documentViewShouldHandlePrint]):
+ Called by the host application before it initializes and runs a print operation. If NO
+ is returned, the host application will abort its print operation and call
+ -printDocumentView on the WebFrameView. The document view is then expected to run its
+ own print operation. If YES is returned, the host application's print operation will
+ continue as normal.
+ (-[WebFrameView printDocumentView]):
+ Called by the host application when the WebFrameView returns YES from -documentViewShouldHandlePrint.
+
+ * Plugins/WebNetscapePluginDocumentView.m:
+ (-[WebNetscapePluginDocumentView documentViewShouldHandlePrint]):
+ Allow the plugin to take over printing if it defines an NPP_Print function
+ (-[WebNetscapePluginDocumentView printDocumentView]):
+ Print the plugin document.
+
+2006-03-13 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by timo.
+
+ - Fixed the load progress indicator to give more incremental feedback,
+ and to stop spending so much time near 100%.
+
+ I did two things:
+ (1) Fixed some bugs and a misspelling in the previous heuristic's
+ implementation
+ (2) Added two new rules to the heuristic:
+ (a) Treat the first layout as the half-way point.
+ (b) Just like we jump the first 10% to indicate that a load has
+ started, jump the last 10% to indicate that a load has finished.
+
+ Rule 2a is good for two reasons. First, it seems unnatural for loading
+ to be "more than half done" when you can't even see anything. Second,
+ in the early stages of laading our estimate of how much we'll need to
+ load is often off by as much as 6000% (e.g., cnn.com). So anything that
+ makes the progress indicator more conservative in the early stages of
+ loading is helpful.
+
+ Rule 2b is good because it's confusing for loading to be "100% done"
+ but still ongoing.
+
+ FIXME: The indicator still isn't perfect. For example, the old behavior
+ shows up @ moviefone.com. Two areas for future work:
+ (1) Estimate number of linked resources. Our code estimates the size
+ of a single resource, but does nothing to estimate the number of
+ resources that resource might link to. This is the key to why we're
+ so wrong at the beginning.
+ (2) Improve "when to do first layout" heuristic. A JavaScript query
+ for a style property forces layout, creating a phantom first layout
+ with no content, essentially nullifying 2a for certain pages.
+
+ Filed <rdar://problem/4475834> to track estimating the number of
+ linked resources. Phantom layouts are already on Hyatt's radar.
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _setState:]): Update firstLayoutDone
+ (-[WebFrame _numPendingOrLoadingRequests:]): Bug fix: In the recurisve
+ case, query 'frame' instead of 'self', so that we actually recurse.
+ (-[WebFrame _firstLayoutDone]): New method
+ (-[WebFrame _didFirstLayout]): Update firstLayoutDone
+ * WebView/WebFramePrivate.h: Added firstLayoutDone ivar
+ * WebView/WebView.m:
+ (-[WebView _incrementProgressForConnectionDelegate:data:]):
+ (1) Implemented 2a and 2b
+ (2) Bug fix: only update the 'last time I sent a notification' time if
+ we actually send a notification.
+ (3) Don't test for progress < 0 because ensuring progress < max
+ also ensures max - progress > 0. (Do still test for progress > max
+ because rounding errors make that a possibility -- although a very
+ minor one.)
+ (4) Query only the loading frame and its subframes for pending
+ requests instead of defaulting to the main frame. This is a slight
+ optimization in cases where the main frame did not begin the load,
+ and it makes the code more consistent.
+
+2006-03-13 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ - fixed <rdar://problem/4475857> API: Setting a history item limit programmatically doesn't work
+
+ * History/WebHistory.m:
+ (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
+ use [self historyItemLimit], which prefers the explicitly-set value and falls back to the
+ NSUserDefaults value, instead of using the NSUserDefaults value explicitly.
+
+2006-03-10 Darin Adler <darin@apple.com>
+
+ Reviewed by Adele.
+
+ * WebCoreSupport/WebFrameBridge.m: Remove unused requestedURLString method.
+
+2006-03-10 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ - change how frame namespacing works to be more completely on the WebCore side
+
+ * WebView/WebFrameInternal.h: Remove _setFrameNamespace: and _frameNamespace.
+ * WebView/WebFrame.m: Ditto.
+
+ * WebView/WebView.m:
+ (-[WebView setGroupName:]): Call -[WebCorePageBridge setGroupName:].
+ (-[WebView groupName]): Call -[WebCorePageBridge groupName].
+
+2006-03-09 Alexey Proskuryakov <ap@nypop.com>
+
+ Reviewed by Darin.
+
+ - http://bugs.webkit.org/show_bug.cgi?id=7656
+ Query string always appended to Flash URLs, instead of being replaced.
+
+ * Misc/WebNSURLExtras.h: Added _webkit_URLByRemovingResourceSpecifier.
+ * Misc/WebNSURLExtras.m:
+ (+[NSURL _web_URLWithData:relativeToURL:]): Call _webkit_URLByRemovingResourceSpecifier to
+ work around CFURL not removing non-path components from base URLs in some cases.
+ (-[NSURL _webkit_URLByRemovingComponent:]): New generic function for removing URL components.
+ (-[NSURL _webkit_URLByRemovingFragment]): Moved implementation to the above method.
+ (-[NSURL _webkit_URLByRemovingResourceSpecifier]): Added.
+
+2006-03-07 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=7655
+ unwanted output while running layout tests
+
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _setRepresentation:]): Clear the flag that records whether we've sent
+ all the data to the representation or not; need this to prevent telling the same representation
+ both that we've succeeded and then later that we've failed.
+ (-[WebDataSource _setMainDocumentError:]): Don't send an error if representationFinishedLoading
+ is already YES. Set representationFinishedLoading.
+ (-[WebDataSource _finishedLoading]): Set representationFinishedLoading.
+ (-[WebDataSource _setupForReplaceByMIMEType:]): Ditto.
+
+2006-03-06 Tim Omernick <timo@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/4457574> assertion failure watching trailers at netflix.com -[WebNetscapePluginRepresentation
+ receivedData:withDataSource:] + 684
+
+ * Plugins/WebNetscapePluginRepresentation.m:
+ (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
+ Moved the ASSERT(instance) to the block that actually requires an assertion -- the plugin view should never
+ have a NULL instance by the time we start the NPStream (by calling -startStreamWithResponse:).
+ Some stream teardown logic changed with my fix to 4153419: when a WebBaseNetscapePluginStream is destroyed,
+ it now clears its NPP instance backpointer. The WebBaseNetscapePluginStream may be destroyed from within
+ -startStreamWithResponse: if NPP_NewStream() returns an error. We can handle this gracefully by changing
+ the assertion before -receivedData: to a simple NULL check.
+ This is unrelated to the Radar, but prior to this fix, we would attempt an NPP_Write() with the initial
+ stream data even if NPP_NewStream() returned an error. Seems like that alone could cause issues, though
+ I'm guessing that plugins handle this in practice.
+
+2006-03-03 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ <rdar://problem/4411822> wrong element shown in Inspector inspecting main image at apple.com
+ <rdar://problem/4411908> in the Web Inspector, state of disclosure triangles should be preserved after search
+ http://bugs.webkit.org/show_bug.cgi?id=6616
+ Bug 6616: Double-clicking on a search result seems broken
+ http://bugs.webkit.org/show_bug.cgi?id=6709
+ Bug 6709: TypeError: Value undefined (result of expression treeScrollbar.refresh) is not object.
+
+ Code clean up and move more code into JavaScript.
+ Removes a few unused ObjC methods.
+ Many search fixes. Reveals the focused node when exiting the search.
+ Shows a "No Selection" screen when there are no search results.
+ Shows a node count for the number of results.
+ Fixes a couple of TypeErrors that show on the console.
+ Uses the system selection color in the Style pane tables.
+
+ * English.lproj/Localizable.strings: removed localized strings
+ * WebInspector.subproj/WebInspector.m:
+ (-[WebInspector init]):
+ (-[WebInspector dealloc]):
+ (-[WebInspector window]):
+ (-[WebInspector setSearchQuery:]):
+ (-[WebInspector resizeTopArea]):
+ (-[WebInspector searchPerformed:]): called from JavaScript when a search happens
+ (-[WebInspector _toggleIgnoreWhitespace:]):
+ (-[WebInspector _exitSearch:]): exit search results on double click
+ (-[WebInspector _focusRootNode:]):
+ (-[WebInspector _revealAndSelectNodeInTree:]):
+ (-[WebInspector _refreshSearch]):
+ (-[WebInspector _update]):
+ (-[WebInspector _updateTraversalButtons]):
+ (-[WebInspector _updateRoot]):
+ (-[WebInspector _updateTreeScrollbar]):
+ (-[WebInspector _updateSystemColors]): update CSS with system colors
+ (-[WebInspector webView:didFinishLoadForFrame:]):
+ (-[WebInspector webView:plugInViewWithArguments:]):
+ (-[WebInspector outlineViewSelectionDidChange:]): test for webViewLoaded
+ (-[WebInspectorPrivate init]): alloc rightArrowImage and downArrowImage
+ (-[WebInspectorPrivate dealloc]): no more matchedRules
+ (-[DOMNode _displayName]): removed localization UI_STRING calls.
+ * WebInspector.subproj/WebInspectorInternal.h:
+ * WebInspector.subproj/webInspector/inspector.css:
+ * WebInspector.subproj/webInspector/inspector.html:
+ * WebInspector.subproj/webInspector/inspector.js:
+
+2006-03-02 Alexey Proskuryakov <ap@nypop.com>
+
+ Fixed a typo in the comments added in the previous checkin.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
+ * WebCoreSupport/WebSubresourceLoader.m:
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forDataSource:]):
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forDataSource:]):
+
+2006-03-02 Alexey Proskuryakov <ap@nypop.com>
+
+ Reviewed by Darin.
+
+ - http://bugs.webkit.org/show_bug.cgi?id=7540
+ REGRESSION: frequent cache-related crashes
+
+ - http://bugs.webkit.org/show_bug.cgi?id=7393
+ A stale comment about XMLHttpRequest responses being never cached
+
+ * WebCoreSupport/WebFrameBridge.m: Don't call setHTTPHeader if the method is GET.
+ (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
+ * WebCoreSupport/WebSubresourceLoader.m: Ditto. Also removed a stale comment about
+ XMLHTTPRequests.
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forDataSource:]):
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forDataSource:]):
+
+2006-02-23 David Harrison <harrison@apple.com>
+
+ Reviewed by Justin.
+
+ <rdar://problem/4359736> Support outlining ability with lists
+
+ Added Mail SPI for list level changes. It is SPI because it is not complete support
+ for outlining. See <rdar://problem/4457070> "API for html lists as note outlines".
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _canIncreaseSelectionListLevel]):
+ (-[WebHTMLView _canDecreaseSelectionListLevel]):
+ (-[WebHTMLView _increaseSelectionListLevel]):
+ (-[WebHTMLView _decreaseSelectionListLevel]):
+ * WebView/WebHTMLViewPrivate.h:
+
+2006-03-01 Alexey Proskuryakov <ap@nypop.com>
+
+ Reviewed by Darin.
+
+ - http://bugs.webkit.org/show_bug.cgi?id=3812
+ XMLHttpRequest: PUT, DELETE, HEAD and all other methods but POST actually do a GET.
+
+ All WebKit changes are to use the method parameter passed from WebCore.
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
+ (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
+ (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
+ * WebCoreSupport/WebSubresourceLoader.h:
+ * WebCoreSupport/WebSubresourceLoader.m:
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forDataSource:]):
+ (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forDataSource:]):
+
+2006-03-01 Timothy Hatcher <timothy@apple.com>
+
+ Reviewed by Darin.
+
+ http://bugs.webkit.org/show_bug.cgi?id=7450
+ elementAtPoint is expensive and should return a smart dictionary
+
+ <rdar://problem/2952761> moving the mouse around eats more CPU than I would expect (7450)
+
+ elementAtPoint for WebHTMLView now returns a WebElementDictionary,
+ when objectForKey is called it will lookup in the DOM, cache and return the value
+
+ * Misc/WebElementDictionary.h: Added.
+ * Misc/WebElementDictionary.m: Added.
+ (addLookupKey):
+ (cacheValueForKey):
+ (+[WebElementDictionary initializeLookupTable]):
+ (-[WebElementDictionary initWithInnerNonSharedNode:innerNode:URLElement:andPoint:]):
+ (-[WebElementDictionary dealloc]):
+ (-[WebElementDictionary _fillCache]):
+ (-[WebElementDictionary count]):
+ (-[WebElementDictionary keyEnumerator]):
+ (-[WebElementDictionary objectForKey:]):
+ (-[WebElementDictionary _domNode]):
+ (-[WebElementDictionary _webFrame]):
+ (-[WebElementDictionary _targetWebFrame]):
+ (-[WebElementDictionary _title]):
+ (-[WebElementDictionary _imageRect]):
+ (-[WebElementDictionary _isSelected]):
+ * Misc/WebNSViewExtras.m:
+ (-[NSView _web_dragImage:element:rect:event:pasteboard:source:offset:]):
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _updateMouseoverWithEvent:]):
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+ (-[WebHTMLView elementAtPoint:]):
+ * WebView/WebView.m:
+ * WebView/WebViewPrivate.h:
+
+2006-02-28 Darin Adler <darin@apple.com>
+
+ Reviewed by Adele.
+
+ - remove obsolete WebCoreScrollView class
+
+ * WebView/WebDynamicScrollBarsView.h: Change base class to NSScrollView instead of WebCoreScrollView.
+ * WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView autoforwardsScrollWheelEvents]): Added.
+
+2006-02-28 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Eric Seidel
+
+ Wean WebKit from one more SPI call. We learned about this new-to-Tiger
+ API from filing Radar 4433222.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _autoscroll]):
+ use public CGEventSourceButtonState() instead of WKMouseIsDown() (which was using SPI internally)
+
+2006-02-27 Tim Omernick <timo@apple.com>
+
+ Reviewed by Adele.
+
+ <rdar://problem/4222043> Safari should reduce null events sent to invisible plugins
+
+ * Plugins/WebBaseNetscapePluginView.h:
+ * Plugins/WebBaseNetscapePluginView.m:
+ (-[WebBaseNetscapePluginView restartNullEvents]):
+ Check to see if the plugin view is completely obscured (scrolled out of view, for example). If it is
+ obscured and it wasn't before, or the other way around, then restart the null event timer so it can
+ fire at the appropriate rate.
+ (-[WebBaseNetscapePluginView viewHasMoved:]):
+ If a plugin is obscured, send it null events as if it were in an inactive window.
+
+2006-02-26 Mitz Pettel <opendarwin.org@mitzpettel.com>
+
+ Test: fast/frames/empty-frame-document.html
+
+ Reviewed by Darin.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=7293
+ REGRESSION: Using Javascript Bookmarklets that reference location.href on a blank tab crashes WebKit
+
+ The crash happened because an empty frame did not have a document.
+
+ * WebView/WebFrame.m:
+ (-[WebFrame _commitProvisionalLoad:]): Use "about:blank" instead of an empty URL for empty
+ frames. This causes a document to be created for the frame.
+
+2006-02-21 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by Darin.
+
+ Backed out my previous check in. Since these methods are internal to WebKit (and not private)
+ it's perfectly OK for them to remain as categories.
+ * ChangeLog:
+ * WebView/WebPreferences.m:
+ (-[WebPreferences _integerValueForKey:]):
+ (-[WebPreferences _setIntegerValue:forKey:]):
+ (-[WebPreferences _floatValueForKey:]):
+ (-[WebPreferences _setFloatValue:forKey:]):
+ (-[WebPreferences _boolValueForKey:]):
+ (-[WebPreferences _setBoolValue:forKey:]):
+ * WebView/WebPreferencesPrivate.h:
+
+2006-02-20 Darin Adler <darin@apple.com>
+
+ Collaborated with Graham Dennis <Graham.Dennis@gmail.com> on this.
+
+ - WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=6831
+ contentEditable outline darkens as caret moves
+
+ * WebCoreSupport/WebGraphicsBridge.m:
+ (-[WebGraphicsBridge drawFocusRingWithPath:radius:color:]):
+ Replaced the old bridge function that set up style with this one that renders a path.
+
+2006-02-19 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - cut out a little unneeded bridge code
+
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge webView]): Added. Helper, since the WebCore side of the bridge no longer
+ has this method.
+ (-[WebFrameBridge createWindowWithURL:]): Removed the frameName parameter -- this is now
+ handled on the WebCore side. Also return a page bridge instead of a frame bridge.
+ (-[WebFrameBridge createModalDialogWithURL:]): Changed to return a page bridge instead of
+ a frame bridge.
+
+ * WebView/WebFrame.m: (-[WebFrame webView]): Change to get the webView from the page bridge
+ instead of the frame bridge, since it's a per-page thing.
+
+ * WebView/WebView.m: Removed init method since it just does what the default does (calls
+ initWithFrame: with a zero rect).
+ (-[WebView initWithCoder:]): Added checking so that if the obejcts have the wrong type
+ we will fail gracefully instead of hitting "method not found" and the like.
+ (-[WebView setPreferencesIdentifier:]): Fix storage leak. The WebPreferences object was
+ not released.
+ (-[WebView mainFrame]): Removed excess "return nil".
+ (-[WebView _pageBridge]): Added. Helper to let you go from the WebView to the bridge
+ from outside the WebView class.
+ * WebView/WebViewInternal.h: Put _pageBridge into an internal header.
+
+ * WebCoreSupport/WebPageBridge.m: (-[WebPageBridge outerView]): Added. Replaces "webView"
+ as public method to tell the WebCore side about the view everything's embedded in.
+
+ - other cleanup
+
+ * WebCoreSupport/WebPageBridge.h: Removed some unneeded declarations.
+
+ * Plugins/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView loadPluginRequest:]):
+ Rearrange code so it doesn't have to get the main frame twice.
+
+2006-02-18 Maciej Stachowiak <mjs@apple.com>
+
+ Not reviewed.
+
+ - fix build broken by my last checkin, the remaining code was not doing anything.
+
+ * WebView/WebDataSource.m:
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebFrame.m:
+ (-[WebFrame _createPageCacheForItem:]):
+
+2006-02-16 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - removed a few unused fields and methods of WebDataSource
+
+ * WebView/WebDataSource.m:
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebView.m:
+ (+[WebView _MIMETypeForFile:]):
+ (-[WebView _updateWebCoreSettingsFromPreferences:]):
+
+2006-02-15 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by darin
+
+ <http://bugs.webkit.org/show_bug.cgi?id=7148>
+ Add drag and drop support to DumpRenderTree
+
+ Added a UI delegate method so that DumpRenderTree can perform dragging on its own.
+ Made _updateFocusState SPI, to allow us to test the behavior and appearance of
+ windows that have or don't have focus.
+
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _updateFocusState]):
+ (-[WebHTMLView viewDidMoveToWindow]):
+ (-[WebHTMLView windowDidBecomeKey:]):
+ (-[WebHTMLView windowDidResignKey:]):
+ (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
+ (-[WebHTMLView becomeFirstResponder]):
+ (-[WebHTMLView resignFirstResponder]):
+ (-[WebHTMLView _formControlIsResigningFirstResponder:]):
+ * WebView/WebHTMLViewInternal.h:
+ * WebView/WebHTMLViewPrivate.h:
+ * WebView/WebUIDelegatePrivate.h:
+ * WebView/WebView.m:
+
+2006-02-15 Darin Adler <darin@apple.com>
+
+ * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
+
+2006-02-15 Maciej Stachowiak <mjs@apple.com>
+
+ Rubber stamped by Anders.
+
+ * WebView/WebControllerPolicyHandlerDelegate.h: Removed.
+
+2006-02-15 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ - remove some voodoo code
+
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _setLoading:]): Removed useless ref/deref of self and WebView.
+ A WebDataSource cannot be loading unless it is still connected to the WebView that
+ owns it and retained by it, because getting disconnected stops loading.
+
+2006-02-13 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Anders.
+
+ Improvements to frame loading:
+
+ - remove LayoutAcceptable state entirely
+ - fix WebImageView to work right without LayoutAcceptable state
+ - move guts of commitIfReady: to WebFrame
+ - try to separate page cache loading from normal loading a bit more
+
+ * English.lproj/StringsNotToBeLocalized.txt:
+ * WebView/WebDataSource.m:
+ (-[WebDataSource _prepareForLoadStart]):
+ (-[WebDataSource _loadFromPageCache:]):
+ (-[WebDataSource _startLoading]):
+ (-[WebDataSource _commitIfReady]):
+ (-[WebDataSource _setupForReplaceByMIMEType:]):
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebFrame.m:
+ (-[WebFrame _transitionToCommitted:]):
+ (-[WebFrame _commitProvisionalLoad:]):
+ (-[WebFrame _checkLoadCompleteForThisFrame]):
+ (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
+ * WebView/WebFramePrivate.h:
+ * WebView/WebImageRepresentation.h:
+ * WebView/WebImageRepresentation.m:
+ * WebView/WebImageView.m:
+ (-[WebImageView dataSourceUpdated:]):
+ (-[WebImageView setNeedsLayout:]):
+ (-[WebImageView writeImageToPasteboard:types:]):
+ (-[WebImageView copy:]):
+ (-[WebImageView mouseDragged:]):
+ * WebView/WebView.m:
+ (-[WebView _finishedLoadingResourceFromDataSource:]):
+ (-[WebView _mainReceivedBytesSoFar:fromDataSource:complete:]):
+
+2006-02-13 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Tim Omernick.
+
+ Support for highlighting multiple text matches.
+
+ * WebView/WebHTMLViewPrivate.h:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView highlightAllMatchesForString:caseSensitive:]):
+ new method, calls through to bridge
+ (-[WebHTMLView clearHighlightedMatches]):
+ ditto
+
+ * WebView/WebViewPrivate.h:
+ * WebView/WebView.m:
+ (-[WebView highlightAllMatchesForString:caseSensitive:]):
+ new method, calls through to documentView. For now this is hardwired to only work
+ with WebHTMLViews.
+ (-[WebView clearHighlightedMatches]):
+ ditto
+
+2006-02-13 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - move pointer from frame to page over to WebCore
+
+ * WebCoreSupport/WebPageBridge.m: (-[WebPageBridge initWithMainFrameName:webView:frameView:]):
+ Call super init to create the page before creating the main frame and calling setMainFrame: with it.
+
+ * WebCoreSupport/WebFrameBridge.h: Remove page pointer, and change init function parameters.
+ * WebCoreSupport/WebFrameBridge.m:
+ (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): New function that is used only for
+ the main frame. Passes the page over to the other side of the bridge.
+ (-[WebFrameBridge initSubframeWithRenderer:frameName:view:]): New function that is used only for
+ subframes. Passes the renderer over to the other side of the bridge.
+ (-[WebFrameBridge mainFrame]):
+ (-[WebFrameBridge webView]):
+ (-[WebFrameBridge createWindowWithURL:frameName:]):
+ (-[WebFrameBridge showWindow]):
+ (-[WebFrameBridge areToolbarsVisible]):
+ (-[WebFrameBridge setToolbarsVisible:]):
+ (-[WebFrameBridge isStatusbarVisible]):
+ (-[WebFrameBridge setStatusbarVisible:]):
+ (-[WebFrameBridge setWindowFrame:]):
+ (-[WebFrameBridge windowFrame]):
+ (-[WebFrameBridge setWindowContentRect:]):
+ (-[WebFrameBridge windowContentRect]):
+ (-[WebFrameBridge setWindowIsResizable:]):
+ (-[WebFrameBridge windowIsResizable]):
+ (-[WebFrameBridge firstResponder]):
+ (-[WebFrameBridge makeFirstResponder:]):
+ (-[WebFrameBridge closeWindowSoon]):
+ (-[WebFrameBridge runJavaScriptAlertPanelWithMessage:]):
+ (-[WebFrameBridge runJavaScriptConfirmPanelWithMessage:]):
+ (-[WebFrameBridge canRunBeforeUnloadConfirmPanel]):
+ (-[WebFrameBridge runBeforeUnloadConfirmPanelWithMessage:]):
+ (-[WebFrameBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
+ (-[WebFrameBridge addMessageToConsole:]):
+ (-[WebFrameBridge runOpenPanelForFileButtonWithResultListener:]):
+ (-[WebFrameBridge setStatusText:]):
+ (-[WebFrameBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
+ (-[WebFrameBridge focusWindow]):
+ (-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
+ (-[WebFrameBridge userAgentForURL:]):
+ (-[WebFrameBridge _nextKeyViewOutsideWebFrameViewsWithValidityCheck:]):
+ (-[WebFrameBridge previousKeyViewOutsideWebFrameViews]):
+ (-[WebFrameBridge defersLoading]):
+ (-[WebFrameBridge setDefersLoading:]):
+ (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
+ (-[WebFrameBridge _preferences]):
+ (-[WebFrameBridge selectWordBeforeMenuEvent]):
+ (-[WebFrameBridge historyLength]):
+ (-[WebFrameBridge canGoBackOrForward:]):
+ (-[WebFrameBridge goBackOrForward:]):
+ (-[WebFrameBridge print]):
+ (-[WebFrameBridge pollForAppletInView:]):
+ (-[WebFrameBridge respondToChangedContents]):
+ (-[WebFrameBridge respondToChangedSelection]):
+ (-[WebFrameBridge undoManager]):
+ (-[WebFrameBridge issueCutCommand]):
+ (-[WebFrameBridge issueCopyCommand]):
+ (-[WebFrameBridge issuePasteCommand]):
+ (-[WebFrameBridge issuePasteAndMatchStyleCommand]):
+ (-[WebFrameBridge canPaste]):
+ (-[WebFrameBridge overrideMediaType]):
+ (-[WebFrameBridge isEditable]):
+ (-[WebFrameBridge shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
+ (-[WebFrameBridge shouldBeginEditing:]):
+ (-[WebFrameBridge shouldEndEditing:]):
+ (-[WebFrameBridge windowObjectCleared]):
+ (-[WebFrameBridge spellCheckerDocumentTag]):
+ (-[WebFrameBridge isContinuousSpellCheckingEnabled]):
+ (-[WebFrameBridge didFirstLayout]):
+ (-[WebFrameBridge dashboardRegionsChanged:]):
+ (-[WebFrameBridge createModalDialogWithURL:]):
+ (-[WebFrameBridge canRunModal]):
+ (-[WebFrameBridge runModal]):
+ Change all calls to [_page webView] to use [self webView] instead.
+
+=== WebKit-521.7
+
+2006-02-11 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Hyatt.
+
+ - factor WebArchive creation code out of other classes into new WebArchiver
+ http://bugs.webkit.org/show_bug.cgi?id=7208
+
+ * DOM/WebDOMOperations.m:
+ (-[DOMNode webArchive]):
+ (-[DOMRange webArchive]):
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebView/WebArchiver.h: Added.
+ * WebView/WebArchiver.m: Added.
+ (+[WebArchiver _subframeArchivesForFrame:]):
+ (+[WebArchiver archiveFrame:]):
+ (+[WebArchiver _archiveCurrentStateForFrame:]):
+ (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]):
+ (+[WebArchiver archiveRange:]):
+ (+[WebArchiver archiveNode:]):
+ (+[WebArchiver archiveSelectionInFrame:]):
+ * WebView/WebDataSource.m:
+ (-[WebDataSource webArchive]):
+ * WebView/WebDataSourcePrivate.h:
+ * WebView/WebHTMLView.m:
+ (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
+ (-[WebHTMLView _writeSelectionToPasteboard:]):
+ * WebView/WebHTMLViewPrivate.h:
+
+2006-02-11 Darin Adler <darin@apple.com>
+
+ * English.lproj/StringsNotToBeLocalized.txt: Updated paths for recent changes in directory structure.
+
+2006-02-11 David Kilzer <ddkilzer@kilzer.net>
+
+ Reviewed by John Sullivan.
+
+ - Fix http://bugs.webkit.org/show_bug.cgi?id=7171
+ No description in WebKitErrors.m for WebKitErrorPlugInWillHandleLoad
+
+ * English.lproj/Localizable.strings: Added new UI_STRING().
+ * Misc/WebKitErrors.m: Added #define for description.
+ (registerErrors): Added dictionary entry.
+
+2006-02-09 Tim Omernick <timo@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ <rdar://problem/4153419> CrashTracer: 576 crashes in Safari at com.apple.WebKit: NPN_DestroyStream + 56
+
+ I never could reproduce this crasher, which seems to be caused by the Speed Download plugin. However,
+ I did find a way to make the affected code more bulletproof for those who are experiencing the crash.
+
+ * Plugins/WebBaseNetscapePluginStream.h:
+ Keep a WebBaseNetscapePluginView instead of the WebNetscapePluginPackage, since the plugin view could
+ potentially be deallocated before the stream finishes loading.
+ * Plugins/WebBaseNetscapePluginStream.m:
+ (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]):
+ Use pluginView instead of plugin.
+ (-[WebBaseNetscapePluginStream dealloc]):
+ Assert that the plugin instance has been nulled out, since that's now part of the stream's teardown
+ phase.
+ Release pluginView instead of plugin.
+ (-[WebBaseNetscapePluginStream setPluginPointer:]):
+ Retain the plugin view instead of the plugin package, since the plugin view could be deallocated while
+ the stream is running.
+ This method now accepts a NULL argument so that we can easily clear out the pluginView backpointer
+ (and other ivars derived from it).
+ (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
+ Use pluginView instead of plugin.
+ (-[WebBaseNetscapePluginStream _destroyStream]):
+ ditto
+ (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
+ ditto
+ (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError]):
+ Set the plugin instance to NULL, so that the pluginView backpointer is released. This method is called
+ for every plugin view's stream when the plugin view is stopped/destroyed.
+ (-[WebBaseNetscapePluginStream _deliverData]):
+ Use pluginView instead of plugin.
+
+== Rolled over to ChangeLog-2006-02-09 ==