2010-02-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> Reviewed by Kenneth Rohde Christiansen. Support frameset flattening https://bugs.webkit.org/show_bug.cgi?id=32717 Add support for enabling/disabling FrameSet Flattening on the Windows port. * Interfaces/IWebPreferencesPrivate.idl: * WebPreferenceKeysPrivate.h: * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::isFrameSetFlatteningEnabled): (WebPreferences::setFrameSetFlatteningEnabled): * WebPreferences.h: * WebView.cpp: (WebView::notifyPreferencesChanged): 2010-02-10 Adam Roben <aroben@apple.com> Remove unnecessary #include of shfolder.h shfolder.h has been deprecated in newer versions of the Windows SDK. Fixes <http://webkit.org/b/34803> WebPreferences.cpp fails to compile under VS2010 RC due to #include of shfolder.h. Reviewed by Darin Adler. * WebPreferences.cpp: Removed #include. 2010-02-08 Charlie Reis <creis@chromium.org> Reviewed by Darin Adler. onbeforeunload not called at window close + frame or iframe focused https://bugs.webkit.org/show_bug.cgi?id=27481 Chromium and WebKit on Windows will now fire beforeunload handlers even if an inner frame is focused. Layout tests aren't able to test this bug, since it requires closing the actual browser window, not calling window.close(). Instead, test with WebCore/manual-tests/onbeforeunload-focused-iframe.html. * WebView.cpp: (WebView::shouldClose): 2010-02-08 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Include header position in World Transform used for plugin positioning. https://bugs.webkit.org/show_bug.cgi?id=34709 * WebFrame.cpp: (WebFrame::spoolPage): Correct WinCairo plugin print positioning to account for header size. Existing code ignored this, causing plugins to overlay other elements. 2010-02-04 Alice Liu <alice.liu@apple.com> Reviewed by Jon Honeycutt. https://bugs.webkit.org/show_bug.cgi?id=34612 " MSAA: accSelect returns error codes for most elements that arent listbox or menupopup related" <rdar://problem/7436861> * AccessibleBase.cpp: (AccessibleBase::accSelect): - Stop sending E_INVALIDARG for elements that request TAKE_SELECTION that aren't beneath listboxes or menupopups. This was too restrictive since any element can be selectable. - Correct the misinterpretation of MSDN's stipulation of situations involving adding, removing, and extending selection on single-select elements 2010-02-04 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Properly handle margin settings when printing Plugins in WinCairo. https://bugs.webkit.org/show_bug.cgi?id=34613 * WebFrame.cpp: (WebFrame::spoolPage): Adjust the GraphicsContext passed to the paintContents method so that the World Transform is properly positioned to account for margin settings at the time that PluginViewWin.cpp processes the drawing operations. 2010-02-04 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Properly handle margin settings in WinCairo. https://bugs.webkit.org/show_bug.cgi?id=34545 * WebFrame.cpp: (scaleFactor): Require the margin information as an input parameter, and use them when computing the scaling factor. (WebFrame::drawHeader): Pass margin size to scaleFactor. (WebFrame::drawFooter): Pass margin size to scaleFactor. (WebFrame::spoolPage): 1. Pass margin size to scaleFactor. 2. Recognize that the return value of printerMarginRect is already in device units, and therefore scale it so that the Cairo drawing is correct. 3. Remove scaling call for margins in GDI code, as it is already in scaled units. 2010-02-03 Brian Weinstein <bweinstein@apple.com> Reviewed by Steve Falkenburg. Scroll does not work with IBM Thinkpad. <https://bugs.webkit.org/show_bug.cgi?id=14227> <rdar://7142545> When initializing the WebView, add two scrollbar Windows inside of our WebView, to allow it to receive WM_VSCROLL and WM_HSCROLL events. (similar to what Firefox did in: <https://bugzilla.mozilla.org/show_bug.cgi?id=507222>. Only do this if the user has installed some kind of Trackpoint driver, using an algorithm like <https://bugzilla.mozilla.org/show_bug.cgi?id=514927>. Also, add code to handle WM_HSCROLL and WM_VSCROLL messages to scroll the WebView. * WebView.cpp: (WebView::verticalScroll): Handle the WM_VSCROLL messages, and scroll up and down by lines or pages. (WebView::horizontalScroll): Handle the WM_HSCROLL messages, and scroll left or right by lines or pages. (WebView::WebViewWndProc): Add cases for WM_VSCROLL and WM_HSCROLL. (WebView::initWithFrame): Call shouldInitializeTrackPointHack, and if we should, create vertical and horizontal scrollbars to receive WM_VSCROLL and WM_HSCROLL messages. (WebView::shouldInitializeTrackPointHack): Check if there is a registry key for the some kind of IBM Trackpoint driver. * WebView.h: 2010-02-02 Steve Falkenburg <sfalken@apple.com> Reviewed by Darin Adler. Copyright year updating for Windows version resources should be automatic https://bugs.webkit.org/show_bug.cgi?id=34503 * WebKit.vcproj/WebKit.rc: 2010-02-02 Adam Roben <aroben@apple.com> Stop copying WebCore's IDL files from SRCROOT to OBJROOT WebKit doesn't use these anymore (as of r52921). Part of Bug 34496: Clean up WebCore's IDL/script copying <https://bugs.webkit.org/show_bug.cgi?id=34496> Reviewed by Steve Falkenburg. * WebKit.vcproj/WebKit.make: 2010-01-29 Gavin Barraclough <barraclough@apple.com> Reviewed by Sam Weinig + Oliver Hunt. Bug 34346 - With JSC bindings, make processingUserGesture work with events in Isolated Worlds Pass processeing user gensture flag to media play/pause methods. * FullscreenVideoController.cpp: (FullscreenVideoController::play): (FullscreenVideoController::pause): 2010-01-29 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Drag and Drop: Windows uses "stop" sign as cursor when dragging https://bugs.webkit.org/show_bug.cgi?id=34305 <rdar://problem/7589672> Add a preference in WebKit (that defaults to false), for whether or not we should show the custom cursors during drag and drop. However, this is currently only used on Windows, and only used to hide the "drop not allowed" icon inside the WebView is the preference is set to true. This will be off by default, so no change in behavior. * Interfaces/IWebPreferencesPrivate.idl: Added new functions. * Interfaces/WebKit.idl: Touched to force Interfaces build. * WebDropSource.cpp: (WebDropSource::GiveFeedback): Implementation of conditional showing cursor logic. * WebPreferenceKeysPrivate.h: Added new preference key. * WebPreferences.cpp: Added new functions. (WebPreferences::setCustomDragCursorsEnabled): (WebPreferences::customDragCursorsEnabled): * WebPreferences.h: Added new functions. 2010-01-28 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Crash when posting a notification for a detached object https://bugs.webkit.org/show_bug.cgi?id=34309 <rdar://problem/7409759> Reviewed by Darin Adler. * AccessibleBase.cpp: (AccessibleBase::QueryService): If an unrecognized service ID is passed, return early. Otherwise, return the result of QueryInterface. (AccessibleBase::QueryInterface): Add static_casts. Check for new UUIDs. (AccessibleBase::isSameObject): Query the object for AccessibleBase. Return whether the pointers or the wrapped objects match. * AccessibleBase.h: Give the class a UUID so we can query for it in isSameObject(). Inherit from IAccessibleComparable; inherit from IServiceProvider so clients can use QueryService to query for a custom interface. * Interfaces/AccessibleComparable.idl: Added. Declares a function that can be called to compare to accessible objects. * Interfaces/WebKit.idl: Include the new IDL. * WebKit.vcproj/Interfaces.vcproj: Add the new IDL to the project. 2010-01-27 Aaron Boodman <aa@chromium.org> Expand NotificationCenter::checkPermission() interface. It now passes the full URL instead of just the origin. https://bugs.webkit.org/show_bug.cgi?id=34238 * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: (WebDesktopNotificationsDelegate::checkPermission): * WebCoreSupport/WebDesktopNotificationsDelegate.h: 2010-01-27 Adam Roben <aroben@apple.com> Make it possible to instantiate WebSerializedJSValue using WebKitCreateInstance Reviewed by Dave Hyatt. * ForEachCoClass.h: * WebKitClassFactory.cpp: Added WebSerializedJSValue. 2010-01-26 Steve Falkenburg <sfalken@apple.com> Reviewed by Oliver Hunt. Windows build references non-existent include paths https://bugs.webkit.org/show_bug.cgi?id=34175 * WebKit.vcproj/WebKit.vcproj: 2010-01-25 Steve Falkenburg <sfalken@apple.com> Reviewed by Simon Fraser. A WebGeolocationControllerClient is leaked for every WebView https://bugs.webkit.org/show_bug.cgi?id=34145 * WebCoreSupport/WebGeolocationControllerClient.cpp: (WebGeolocationControllerClient::geolocationDestroyed): Added. * WebCoreSupport/WebGeolocationControllerClient.h: 2010-01-23 Dan Bernstein <mitz@apple.com> Reviewed by Maciej Stachowiak. <rdar://problem/7569820> svg/custom/text-zoom.xhtml fails on Windows https://bugs.webkit.org/show_bug.cgi?id=34006 * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Added WebKitZoomsTextOnlyPreferenceKey with a default value of true. 2010-01-20 Steve Falkenburg <sfalken@apple.com> Reviewed by Sam Weinig. Add missing implementation for WebGeolocationPosition::initWithTimestamp. * WebGeolocationPosition.cpp: (WebGeolocationPosition::initWithTimestamp): Implemented. 2010-01-20 Jon Honeycutt <jhoneycutt@apple.com> MSAA: accSelect() is not implemented https://bugs.webkit.org/show_bug.cgi?id=33918 <rdar://problem/7436861> Reviewed by Darin Adler. * AccessibleBase.cpp: (AccessibleBase::accSelect): If there is an invalid combination of state flags, return early. If the caller passed the "take focus" flag, focus the object. If the "take selection" flag was passed, check whether the parent object is an AccessibilityListBox; if so, call the object's setSelectedChildren() function. If the parent is an AccessibilityMenuListPopup, call the child object's setSelected() function. Otherwise, if the parent is some other, unsupported object, return early. If the selection flags include "add", "remove", or "extend" selection, and the parent object is not multi-selectable, return early. Otherwise, set or unset the child's selected flag based on the passed flag. 2010-01-20 Steve Falkenburg <sfalken@apple.com> Reviewed by Darin Adler and Adam Roben. Feature defines are difficult to maintain on Windows builds https://bugs.webkit.org/show_bug.cgi?id=33883 FeatureDefines.vsprops are now maintained in a way similar to Configurations/FeatureDefines.xcconfig, with the added advantage of having a single FeatureDefines file across all projects. * WebKit.vcproj/Interfaces.vcproj: Add FeatureDefines.vsprops inherited property sheet. * WebKit.vcproj/WebKit.sln: Set up Cairo configuration for WebCoreGenerated. * WebKit.vcproj/WebKit.vcproj: Remove ENABLE_ preprocessor definitions. Add FeatureDefines.vsprops inherited property sheet. * WebKit.vcproj/WebKitGUID.vcproj: Add FeatureDefines.vsprops inherited property sheet. 2010-01-17 Jon Honeycutt <jhoneycutt@apple.com> MSAA: The child <option> elements of a non-multiple <select> are not exposed https://bugs.webkit.org/show_bug.cgi?id=33773 <rdar://problem/7550556> Reviewed by Alice Liu. * AccessibleBase.cpp: (AccessibleBase::get_accState): If the object is invisible, set the invisible state flag. If the object is collapsed, set the collapsed state. If the object is a combo box, set the has popup flag, and if it's not collapsed, set the expanded flag. (MSAARole): Add new WebCore to MSAA role mappings. * WebCoreLocalizedStrings.cpp: (WebCore::AXMenuListActionVerb): Return the action verb that Firefox uses for <select> elements with popups. (WebCore::AXMenuListPopupActionVerb): Return the verb that Firefox uses for a popup list. 2010-01-19 John Sullivan <sullivan@apple.com> https://bugs.webkit.org/show_bug.cgi?id=33854 Would like a variant of WebHTMLRepresentation's searchForLabelsBeforeElement that returns more info about where the result was found Reviewed by Darin Adler * Interfaces/IWebHTMLRepresentation.idl: Created variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove. * Interfaces/WebKit.idl: Touched in order to get other idl change to propagate correctly. * WebHTMLRepresentation.cpp: (WebHTMLRepresentation::deprecatedSearchForLabels): Renamed since iDL doesn't support two functions with the same name but different signatures. (WebHTMLRepresentation::searchForLabels): Implemented variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove. * WebHTMLRepresentation.h: Declared variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove. 2010-01-19 Adam Roben <aroben@apple.com> Windows build fix * WebScriptWorld.cpp: Added missing #include. 2010-01-19 Dave Hyatt <hyatt@apple.com> Build bustage fix. Make sure the newly added scriptWorldForGlobalContext function is [local] in the IDL. * Interfaces/IWebScriptWorld.idl: 2010-01-19 Dave Hyatt <hyatt@apple.com> Reviewed by Adam Roben. Add an API to obtain a WebScriptWorld from a JSGlobalContextRef. * Interfaces/IWebScriptWorld.idl: * WebScriptWorld.cpp: (WebScriptWorld::scriptWorldForGlobalContext): * WebScriptWorld.h: 2010-01-18 Adam Roben <aroben@apple.com> Add IWebViewPrivate::setDomainRelaxationForbiddenForURLScheme WebKit/win part of fixing <http://webkit.org/b/33806> <rdar://problem/7552837> Would like API to disallow setting of document.domain for pages with certain URL schemes Reviewed by Sam Weinig. * Interfaces/IWebViewPrivate.idl: Added setDomainRelaxationForbiddenForURLScheme. * Interfaces/WebKit.idl: Touched to force a build. * WebView.cpp: (WebView::setDomainRelaxationForbiddenForURLScheme): * WebView.h: Added. Calls through to SecurityOrigin. 2010-01-18 Chris Marrin <cmarrin@apple.com> Reviewed by Darin Adler. Use new setScrollFrame API https://bugs.webkit.org/show_bug.cgi?id=32279 * WebView.cpp: (WebView::updateRootLayerContents): 2010-01-15 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Screen rect for <option> elements is always the zero rect https://bugs.webkit.org/show_bug.cgi?id=33758 Reviewed by Oliver Hunt. * AccessibleBase.cpp: (AccessibleBase::accLocation): Use elementRect() rather than boundingBoxRect(), which AccessibilityListBoxOption overrides. 2010-01-15 Jon Honeycutt <jhoneycutt@apple.com> get_accParent should try to retrieve parent AccessibilityObject, before calling upon window https://bugs.webkit.org/show_bug.cgi?id=22893 Reviewed by Darin Adler. * AccessibleBase.cpp: (AccessibleBase::get_accParent): If the object has a parent object, return it. If not, return the accessible for the WebView window. 2010-01-12 Jon Honeycutt <jhoneycutt@apple.com> MSAA: selected, selectable, extended selectable, and multiple selectable states are not reported https://bugs.webkit.org/show_bug.cgi?id=33574 <rdar://problem/7536826> Reviewed by Darin Adler. * AccessibleBase.cpp: (AccessibleBase::get_accState): Remove the call to isMultiSelect(). Call the correctly-named isMultiSelectable(), and if it returns true, set both the "extended selectable" and "multiple selectable" states. Check whether the object is selected or selectable, and report those states. 2010-01-13 Steve Falkenburg <sfalken@apple.com> Reviewed by Adam Roben. Add additional Geolocation interfaces in WebKit for Windows. * Interfaces/IWebGeolocationPolicyListener.idl: Added. * Interfaces/IWebUIDelegatePrivate.idl: Add decidePolicyForGeolocationRequest to IWebUIDelegatePrivate2. Append since this version hasn't shipped. * Interfaces/WebKit.idl: Add include of IWebGeolocationPolicyListener.idl. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::requestGeolocationPermissionForFrame): Call into decidePolicyForGeolocationRequest. * WebCoreSupport/WebGeolocationControllerClient.cpp: (WebGeolocationControllerClient::WebGeolocationControllerClient): Moved *. * WebGeolocationPolicyListener.cpp: Added. * WebGeolocationPolicyListener.h: Added. * WebKit.vcproj/Interfaces.vcproj: Added IWebGeolocationPolicyListener. * WebKit.vcproj/WebKit.vcproj: Added WebGeolocationPolicyListener, WebGeolocationPolicyListener. * WebView.cpp: (WebView::setGeolocationProvider): Removed extraneous STDMETHODCALLTYPE. (WebView::geolocationProvider): Removed extraneous STDMETHODCALLTYPE. (WebView::geolocationDidChangePosition): Removed extraneous STDMETHODCALLTYPE. (WebView::geolocationDidFailWithError): Removed extraneous STDMETHODCALLTYPE. 2010-01-12 Steve Falkenburg <sfalken@apple.com> Reviewed by Adam Roben, Sam Weinig. Add Geolocation interfaces in WebKit for Windows. * ForEachCoClass.h: Added WebGeolocationPosition. * Interfaces/IWebError.idl: * Interfaces/IWebGeolocationPosition.idl: Added. * Interfaces/IWebGeolocationProvider.idl: Added. * Interfaces/IWebViewPrivate.idl: * Interfaces/WebKit.idl: * WebCoreSupport/WebGeolocationControllerClient.cpp: Added. (WebGeolocationControllerClient::WebGeolocationControllerClient): (WebGeolocationControllerClient::startUpdating): (WebGeolocationControllerClient::stopUpdating): (WebGeolocationControllerClient::lastPosition): * WebCoreSupport/WebGeolocationControllerClient.h: Added. * WebGeolocationPosition.cpp: Added IWebGeolocationPosition implementation. * WebGeolocationPosition.h: Added IWebGeolocationPosition implementation. * WebKit.vcproj/Interfaces.vcproj: Added IWebGeolocationPosition.idl, IWebGeolocationProvider.idl, relocated JavaScriptCoreAPITypes.idl, WebScrollbarTypes.idl * WebKit.vcproj/WebKit.vcproj: Added WebGeolocationPosition.h/.cpp, WebGeolocationControllerClient.h/cpp, * WebKitClassFactory.cpp: Add WebGeolocationPosition include. * WebView.cpp: (WebView::initWithFrame): Create WebGeolocationControllerClient if Geolocation is enabled. (WebView::setGeolocationProvider): Added Geolocation-specific method. (WebView::geolocationProvider): Added Geolocation-specific method. (WebView::geolocationDidChangePosition): Added Geolocation-specific method. (WebView::geolocationDidFailWithError): Added Geolocation-specific method. * WebView.h: Added setGeolocationProvider, geolocationProvider, geolocationDidChangePosition, geolocationDidFailWithError. 2010-01-11 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility role of <select multiple> elements is wrong https://bugs.webkit.org/show_bug.cgi?id=33522 Reviewed by Darin Adler. * AccessibleBase.cpp: (MSAARole): Map the WebCore::ListBox and WebCore::ListBoxOption roles to the MSAA "list" and "list item" roles. 2010-01-08 Brent Fulgham <bfulgham@webkit.org> Build fix, no review. Protect video control logic inside ENABLE(VIDEO). * WebView.cpp: (WebView::enterFullscreenForNode): (WebView::exitFullscreen): * WebView.h: 2010-01-08 Chris Marrin <cmarrin@apple.com> Reviewed by Adam Roben. Implement full-screen video for Windows https://bugs.webkit.org/show_bug.cgi?id=31318 This adds a full-screen controller, FullscreenVideoController, which manages going in and out of full-screen. The actual full-screen window is created and managed by logic added to QTMovieWin. FullscreenVideoController also creates and manages a HUD. The HUD renders and manages events to control the playing video. Movie controller events go to FullscreenVideoController which then sends them to HTMLMediaElement, which is passed to the controller by WebView, which gets the call to go into full-screen mode from HTMLMediaElement via ChromeClient. I've also updated the icons so the related sets (Play/Pause and volume high/volume low/exit fullscreen) are the same size. This allows me to position them using common code. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::supportsFullscreenForNode): (WebChromeClient::enterFullscreenForNode): (WebChromeClient::exitFullscreenForNode): * WebCoreSupport/WebChromeClient.h: * WebKit.vcproj/WebKit.vcproj: * WebKit.vcproj/fsVideoAudioVolumeHigh.png: * WebKit.vcproj/fsVideoAudioVolumeLow.png: * WebKit.vcproj/fsVideoExitFullscreen.png: * WebKit.vcproj/fsVideoPause.png: * WebKit.vcproj/fsVideoPlay.png: * WebKitDLL.cpp: (loadResourceIntoBuffer): * FullscreenVideoController.cpp: Added. * FullscreenVideoController.h: Added. * WebView.cpp: (WebView::enterFullscreenForNode): (WebView::exitFullscreen): * WebView.h: 2010-01-08 Brent Fulgham <bfulgham@webkit.org> Unreviewed correction. Accidentally left unnecessary modification to hdcFromContext in when landing r52995. * WebFrame.cpp: (hdcFromContext): Back out unneeded modification. 2010-01-08 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Use correct cairo surface data type for handling print operations. https://bugs.webkit.org/show_bug.cgi?id=33022. * WebFrame.cpp: (scaleFactor): Handle 'scale = 0' case. (WebFrame::spoolPage): Use scaleFactor helper function. Account for margin size in region passed to header/footer routines. (WebFrame::spoolPages): Properly clean up Cairo surface. 2010-01-07 Kent Tamura <tkent@chromium.org> Reviewed by Maciej Stachowiak. Remove COM code generation files. https://bugs.webkit.org/show_bug.cgi?id=32854 * WebKit.vcproj/DerivedSources.make: Removed. * WebKit.vcproj/build-generated-files.sh: Removed. 2010-01-05 Adam Roben <aroben@apple.com> Make IWebView::close and destroying a WebView's HWND optional for WebKit clients WebView will now take care of these operations itself when its last reference is released, if they haven't already been done. IWebView::close now also destroys the WebView's HWND. All WebKit clients were already performing these operations in succession anyway, or were attempting to by calling IWebView::close then destroying the WebView's host window (which actually resulted in the WebView's HWND leaking, and the crash in the below bug). Fixes <rdar://problem/7374218> <http://webkit.org/b/32827> Crash when calling IWebView::close, then releasing the WebView, without calling DestroyWindow Fixes a few WebViewDestruction tests, too. Reviewed by Steve Falkenburg. * WebView.cpp: (WebView::~WebView): Don't try to destroy m_viewWindow here. That should already have happened. Assert that this is the case. (WebView::close): If m_viewWindow isn't already being destroyed, destroy it now. Moved the call to revokeDragDrop() here from our WM_DESTROY handler because it needs to be done before m_viewWindow is nulled out. (WebView::WebViewWndProc): Removed call to revokeDragDrop() that close() now performs. (WebView::Release): If our last reference is being released, call close() so that clients don't have to. (It's harmless to call close() multiple times.) We do this here instead of in the destructor because close() can cause AddRef() and Release() to be called, and calling those from within the destructor leads to double-destruction. (WebView::setHostWindow): Removed an unnecessary (and now harmful) null-check. (WebView::revokeDragDrop): Changed an assertion into a run-time check, since this will now sometimes be called when m_viewWindow hasn't been created yet. Changed the IsWindow call to a null-check because we never hold onto a destroyed m_viewWindow. (WebView::windowAncestryDidChange): If we don't have a view window, stop tracking changes to our parent's active state. 2010-01-05 Adam Roben <aroben@apple.com> Make it safe to call IWebView::close when IWebView::initWithFrame hasn't been called Part of <rdar://problem/7374218> <http://webkit.org/b/32827> Crash when IWebView::close, then releasing the WebView, without calling DestroyWindow Reviewed by Steve Falkenburg. * WebView.cpp: (WebView::close): Null-check m_page and m_preferences before using them. They will be null if initWithFrame was never called. 2010-01-05 Adam Roben <aroben@apple.com> Add assertions to catch double-destruction of WebViews earlier I basically copied the m_deletionHasBegun logic from WTF::RefCounted. Fixes <http://webkit.org/b/33219>. Reviewed by Darin Adler. * WebView.cpp: (WebView::WebView): Initialize m_deletionHasBegun (WebView::AddRef): Assert that deletion hasn't already begun. (WebView::Release): Assert that deletion hasn't already begun, then record when deletion *does* begin. * WebView.h: Added m_deletionHasBegun. 2010-01-05 Adam Roben <aroben@apple.com> Remove dead code in WebViewWndProc Fixes <http://webkit.org/b/33218>. Reviewed by Darin Adler. * WebView.cpp: (WebView::WebViewWndProc): Removed a redundant isBeingDestroyed check. We bail out much earlier in this function if isBeingDestroyed is true. 2010-01-04 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility role of <select> elements is wrong https://bugs.webkit.org/show_bug.cgi?id=33192 Reviewed by Sam Weinig. * AccessibleBase.cpp: (MSAARole): Map WebCore::PopUpButtonRole to MSAA's ROLE_SYSTEM_COMBOBOX. 2010-01-04 Alexey Proskuryakov <ap@apple.com> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=33181 The first letter is not removed properly from inline input hole * WebView.cpp: (WebView::onIMEEndComposition): If composition is ended before it was confirmed, cancel it. 2010-01-04 Alexey Proskuryakov <ap@apple.com> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=33161 Assertion failure in WebView when using Chinese Simplified IME * WebView.cpp: (WebView::onIMERequestCharPosition): Changed the assertion into release mode check. We can't make assertions about arguments passed from outside WebKit. 2010-01-04 Alexey Proskuryakov <ap@apple.com> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=33157 Implement TextInput logging channel on Windows * WebKitLogging.cpp: (WebKitInitializeLoggingChannelsIfNecessary): * WebKitLogging.h: Added a TextInput channel in place of unused Network one. * WebView.cpp: (WebView::WebViewWndProc): Changed onIMERequest to return result directly. We never forward it to DefWindowProc, so there is no need to return an unused boolean result for "handled". (WebView::onIMEStartComposition): Added logging. (imeCompositionArgumentNames): A helper function for detailed logging in onIMEComposition. (imeNotificationName): A helper function for detailed logging in onIMENotify. (imeRequestName): A helper function for detailed logging in onIMERequest. (WebView::onIMEComposition): Added logging. (WebView::onIMEEndComposition): Ditto. (WebView::onIMEChar): Ditto. (WebView::onIMENotify): Ditto. (WebView::onIMERequestCharPosition): Changed to return result directly. (WebView::onIMERequestReconvertString): Ditto. (WebView::onIMERequest): Changed to return result directly. Added logging. (WebView::onIMESelect): Added logging. (WebView::onIMESetContext): Added logging. * WebView.h: onIMERequest functions now return result directly. 2010-01-04 Adam Roben <aroben@apple.com> Add WebKitAPITest Fixes <http://webkit.org/b/33167>. Reviewed by Sam Weinig. * WebKit.vcproj/WebKit.sln: Added WebKitAPITest.vcproj. It builds just after DumpRenderTree.vcproj. 2010-01-04 Dan Bernstein <mitz@apple.com> Reviewed by Ada Chan and Mark Rowe. Updated copyright string * WebKit.vcproj/WebKit.rc: 2009-12-22 Darin Adler <darin@apple.com> Another try at fixing Windows build. * WebKitPrefix.cpp: Touch it. 2009-12-22 Darin Adler <darin@apple.com> Reviewed by Mark Rowe. Turn off datagrid by default, at least for all platforms Apple ships. The datagrid implementation isn't ready for general web use yet. * WebKit.vcproj/WebKit.vcproj: Turn off datagrid by default. 2009-12-21 Adam Roben <aroben@apple.com> Fix non-ACCELERATED_COMPOSITING builds * WebPreferences.cpp: (WebPreferences::acceleratedCompositingEnabled): Guard use of WKCACFLayerRenderer with USE(ACCELERATED_COMPOSITING). 2009-12-18 Adam Roben <aroben@apple.com> Add IWebPreferencesPrivate::[set]AcceleratedCompositingEnabled Fixes <http://webkit.org/b/32745>. Reviewed by Ada Chan. * Interfaces/IWebPreferencesPrivate.idl: Added [set]AcceleratedCompositingEnabled. * Interfaces/WebKit.idl: Touched to force a build. * WebPreferenceKeysPrivate.h: Added WebKitAcceleratedCompositingEnabledPreferenceKey. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Make accelerated compositing be on by default. (WebPreferences::setAcceleratedCompositingEnabled): Store the new value. (WebPreferences::acceleratedCompositingEnabled): If accelerated compositing isn't available, return false. Otherwise, return the value stored in preferences. * WebPreferences.h: Added [set]AcceleratedCompositingAvailable. * WebView.cpp: (WebView::notifyPreferencesChanged): Just pass the value from WebPreferences on down. 2009-12-17 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility role of list items is wrong https://bugs.webkit.org/show_bug.cgi?id=32688 Reviewed by Adam Roben. * AccessibleBase.cpp: (MSAARole): Make the WebCore list item role map to the MSAA list item role. 2009-12-17 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility role of list markers is wrong https://bugs.webkit.org/show_bug.cgi?id=32687 Reviewed by Adam Roben. * AccessibleBase.cpp: (MSAARole): Make the WebCore list marker role map to the MSAA static text role. 2009-12-18 Adam Roben <aroben@apple.com> Add #includes needed after WebCore clean-up Rubber-stamped by Anders Carlsson. Fixes <http://webkit.org/b/32718>. * WebCoreSupport/WebContextMenuClient.cpp: * WebDataSource.cpp: * WebHTMLRepresentation.cpp: * WebView.cpp: * WebView.h: 2009-12-17 Benjamin Otte <otte@gnome.org> Reviewed by Adam Roben. Don't include all JSC headers everywhere https://bugs.webkit.org/show_bug.cgi?id=32663 * WebCoreLocalizedStrings.cpp: Added now-needed #include of MathExtras.h. 2009-12-17 Adam Roben <aroben@apple.com> Remove WebKit.sln's Debug_All and Debug_Internal configurations These configurations aren't buildable by people outside of Apple, and Apple doesn't use this solution file. Fixes <http://webkit.org/b/31000> Windows WebKit Build Configuration should default to Debug instead of Debug_all. Rubber-stamped by Dan Bernstein. * WebKit.vcproj/WebKit.sln: 2009-12-16 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility role of text nodes is wrong https://bugs.webkit.org/show_bug.cgi?id=32631 <rdar://problem/7369084> Reviewed by Alice Liu. * AccessibleBase.cpp: (MSAARole): If the role is WebCore::EditableTextRole, return ROLE_SYSTEM_TEXT. (AccessibleBase::role): Call roleValueForMSAA(). 2009-12-14 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Provide working printing support for WinCairo port. * WebFrame.cpp: (WebFrame::spoolPage): Conditionalize initialization of PlatformGraphicsContext handling for CG vs. Cairo. (scaleFactor): Add helper function. (hdcFromContext): Add helper function. (WebFrame::drawHeader): Correct Cairo variation. (WebFrame::drawFooter): Correct Cairo variation. (WebFrame::spoolPages): Correct Cairo variation. 2009-12-13 Sam Weinig <sam@webkit.org> Reviewed by Dan Bernstein. Fix for https://bugs.webkit.org/show_bug.cgi?id=32499 Add client based Geolocation provider Add first cut of a client based Geolocation provider. This is guarded by ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a GeolocationControllerClient interface that no-one currently implements, but will in a subsequent patch. * WebView.cpp: (WebView::initWithFrame): 2009-12-14 Adam Roben <aroben@apple.com> Change IWebFramePrivate's vtable to be compatible with Safari 4.0.4 Reviewed by Steve Falkenburg. Fixes <http://webkit.org/b/32433> REGRESSION (r51567): Right click on a link element crashes WebKit nightly * Interfaces/IWebFramePrivate.idl: Moved pauseSVGAnimation to the end of the interface so the vtable that Safari 4.0.4 sees is unchanged. 2009-12-14 Adam Roben <aroben@apple.com> Build fix * WebKit.vcproj/WebKit.vcproj: Added $(DXSDK_DIR)\Lib\x86 to the libpath for all non-Cairo configurations (it was missing from most of them). 2009-12-11 Chris Marrin <cmarrin@apple.com> Reviewed by Jon Honeycutt. Added icons for full-screen video on Windows https://bugs.webkit.org/show_bug.cgi?id=31318 * WebKit.vcproj/WebKit.rc: * WebKit.vcproj/WebKit.vcproj: * WebKit.vcproj/fsVideoAudioVolumeHigh.png: Added. * WebKit.vcproj/fsVideoAudioVolumeLow.png: Added. * WebKit.vcproj/fsVideoExitFullscreen.png: Added. * WebKit.vcproj/fsVideoPause.png: Added. * WebKit.vcproj/fsVideoPlay.png: Added. * WebKit.vcproj/resource.h: 2009-12-11 Chris Marrin <cmarrin@apple.com> Reviewed by Adam Roben. Delay load DLLs for accelerated compositing https://bugs.webkit.org/show_bug.cgi?id=31856 If the DLLs (d3d9 and QuartzCore). are not present it turns off accelerated compositing and avoids calling any of the functions in the DLLs. * WebView.cpp: (WebView::notifyPreferencesChanged): 2009-12-10 Jon Honeycutt <jhoneycutt@apple.com> Pass more information about a plug-in to the PluginHalterDelegate Reviewed by Adam Roben. * Interfaces/IWebPluginHalterDelegate.idl: Add new parameters. * WebCoreSupport/WebPluginHalterClient.cpp: (WebPluginHalterClient::shouldHaltPlugin): Update for new parameters. Pass them when making the delegate call. * WebCoreSupport/WebPluginHalterClient.h: Update for new parameters. 2009-12-09 Brent Fulgham <bfulgham@webkit.org> Revert incorrect commit-box update r51911. It mistakenly set the selectAll implementation in the deslectAll method. * WebFrame.cpp: (WebFrame::deselectAll): 2009-12-09 Brent Fulgham <bfulgham@webkit.org> Reviewed by Darin Adler. Provide an implementation for 'selectAll' https://bugs.webkit.org/show_bug.cgi?id=32296 * WebFrame.cpp: (WebFrame::selectAll): Implement "SelectAll" command. 2009-12-09 Brent Fulgham <bfulgham@webkit.org> Reviewed by Darin Adler. Provide an implementation for 'selectAll' https://bugs.webkit.org/show_bug.cgi?id=32296 * WebFrame.cpp: (WebFrame::selectAll): Implement "SelectAll" command. 2009-12-08 Chris Marrin <cmarrin@apple.com> Reviewed by Adam Roben. Delay load DLLs for accelerated compositing https://bugs.webkit.org/show_bug.cgi?id=31856 If the DLLs (d3d9 and QuartzCore). are not present it turns off accelerated compositing and avoids calling any of the functions in the DLLs. * WebView.cpp: * WebView.h: 2009-12-08 Adam Roben <aroben@apple.com> Windows build fix * Interfaces/WebKit.idl: Touched this to force Interfaces.vcproj to rebuild. 2009-12-08 John Sullivan <sullivan@apple.com> Reviewed by Dan Bernstein Split two-clause assertions into two separate assertions. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::isTextField): Split a two-clause assertion into two separate assertions. (DOMHTMLInputElement::rectOnScreen): Added the two assertions here that all other functions in this group shared. (DOMHTMLInputElement::selectedRange): Split a two-clause assertion into two separate assertions. (DOMHTMLInputElement::setAutofilled): Split a two-clause assertion into two separate assertions. (DOMHTMLInputElement::isAutofilled): Split a two-clause assertion into two separate assertions. 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> Rubber-stamped by Maciej Stachowiak. Turn on (SVG) Filters for Win. https://bugs.webkit.org/show_bug.cgi?id=32224 * WebKit.vcproj/WebKit.vcproj: 2009-12-08 John Sullivan <sullivan@apple.com> Add isAutofilled getter to match existing setter. Reviewed by Ada Chan. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::isAutofilled): Implemented new cover function. * DOMHTMLClasses.h: Declared new cover function. * Interfaces/DOMPrivate.idl: Declared new interface. 2009-12-07 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (Windows build fix part III). * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): 2009-12-07 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (Windows build fix part II). * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): 2009-12-03 Brady Eidson <beidson@apple.com> Reviewed by Sam Weinig. <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API * Interfaces/IWebFrameLoadDelegatePrivate2.idl: * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidPushStateWithinPage): (WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): (WebFrameLoaderClient::dispatchDidPopStateWithinPage): * WebCoreSupport/WebFrameLoaderClient.h: 2009-12-03 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> Reviewed by Timothy Hatcher. Web Inspector: Simplify the settings support in inspector controller. https://bugs.webkit.org/show_bug.cgi?id=32076 * WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::attachWindow): (WebInspectorClient::detachWindow): (WebInspectorClient::showWindowWithoutNotifications): * WebCoreSupport/WebInspectorClient.h: 2009-12-03 Ben Murdoch <benm@google.com> Reviewed by Brady Eidson. [Android] The FrameLoaderClient is unaware of BackForwardList changes. https://bugs.webkit.org/show_bug.cgi?id=31914 * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug). (WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto. (WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto. * WebCoreSupport/WebFrameLoaderClient.h: 2009-12-02 Timothy Hatcher <timothy@apple.com> Move setValueForUser to the end of the DOMHTMLInputElement interface so it is fine for binary compatibility. Directed by Steve Falkenburg. * Interfaces/DOMHTML.idl: 2009-12-02 Timothy Hatcher <timothy@apple.com> Expose setValueForUser for the COM DOMHTMLInputElement. <rdar://problem/6760590> Would like a way to detect a login form AutoFill from JavaScript Reviewed by Dan Bernstein. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::setValueForUser): * Interfaces/DOMHTML.idl: 2009-12-01 Nikolas Zimmermann <nzimmermann@rim.com> Not reviewed. Try to fix windows build. * WebFrame.cpp: 2009-12-01 Nikolas Zimmermann <nzimmermann@rim.com> Reviewed by Simon Fraser. Add SVG animation test framework with 'snapshot' functionality https://bugs.webkit.org/show_bug.cgi?id=31897 Add API used by the new 'sampleSVGAnimationForElementAtTime' DRT method, forwarding the call to SVGDocumentExtensions, if SVG is enabled. Implemented just like the existing pauseAnimation* methods for CSS animations. * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: (WebFrame::pauseSVGAnimation): * WebFrame.h: 2009-11-30 Adam Roben <aroben@apple.com> Fix double-free of BSTRs passed to WebNavigationData::createInstance WebFrameLoaderClient::updateGlobalHistory was converting WebCore::Strings to WebCore::BStrings, then passing them to WebNavigationData::createInstance. But the latter function takes BSTR parameters and adopts them into WebCore::BStrings. So the end result was that two WebCore::BStrings would end up freeing each underlying BSTR. The fix is to only convert to WebCore::BString inside WebNavigationData. Fixes <http://webkit.org/b/31998> <rdar://problem/7383452> REGRESSION (r49564): Crash in updateGlobalHistory when running Javascript iBench test I couldn't find a way to reproduce this in DumpRenderTree. Reviewed by Steve Falkenburg. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::updateGlobalHistory): Pass WebCore::Strings to WebNavigationData::createInstance. * WebNavigationData.cpp: (WebNavigationData::WebNavigationData): (WebNavigationData::createInstance): * WebNavigationData.h: Changed to take const WebCore::String&s instead of BSTRs and to convert the Strings to BStrings at this level. 2009-11-30 Steve Falkenburg <sfalken@apple.com> Reviewed by Adam Roben. WebKit clients that don't implement didClearWindowObjectForFrameInScriptWorld should fall back to didClearWindowObject https://bugs.webkit.org/show_bug.cgi?id=31986 * WebFrame.cpp: (WebFrame::dispatchDidClearWindowObjectInWorld): Fall back if E_NOTIMPL returned. 2009-11-24 Chris Marrin <cmarrin@apple.com> Another Windows build fix Got rid of d3d.lib and d3dx9.lib dependency. Not needed until we turn on ACCELERATED_COMPOSITING * WebKit.vcproj/WebKit.vcproj: 2009-11-24 Chris Marrin <cmarrin@apple.com> Fixed Windows build Got rid of QuartzCore.lib dependency. Not needed until we turn on ACCELERATED_COMPOSITING * WebKit.vcproj/WebKit.vcproj: 2009-11-24 Chris Marrin <cmarrin@apple.com> Reviewed by Simon Fraser. Implement accelerated compositing https://bugs.webkit.org/show_bug.cgi?id=27314 This is the WebKit side of the implementation. It plumbs the root layer from WebCore. It also makes changes to WebView which places the backing store of the page into the root compositing layer so it is properly composited with all the other layers. This deals with resizing, scrolling, and incremental repaint of the page. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::attachRootGraphicsLayer): (WebChromeClient::scheduleCompositingLayerSync): * WebCoreSupport/WebChromeClient.h: (WebChromeClient::setNeedsOneShotDrawingSynchronization): * WebKit.vcproj/WebKit.vcproj: * WebView.cpp: (WebView::WebView): (WebView::close): (WebView::repaint): (WebView::scrollBackingStore): (WebView::paint): (WebViewWndProc): (WebView::setRootChildLayer): (WebView::setAcceleratedCompositing): (WebView::setRootLayerContents): * WebView.h: (WebView::isAcceleratedCompositing): (WebView::resizeLayerWindow): (WebView::layerWindowBecameVisible): (WebView::setRootLayerNeedsDisplay): 2009-11-23 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Kenneth Rohde Christiansen. Include "config.h" to meet Coding Style Guidelines https://bugs.webkit.org/show_bug.cgi?id=31792 * GEN_DOMObject.cpp: * WebScriptObject.cpp: 2009-11-21 Jon Honeycutt <jhoneycutt@apple.com> Windows build fix. Unreviewed. * Interfaces/IWebSerializedJSValue.idl: 2009-11-20 Jon Honeycutt <jhoneycutt@apple.com> DOMElement::tagName() is unimplemented https://bugs.webkit.org/show_bug.cgi?id=31746 Reviewed by Darin Adler. * DOMCoreClasses.cpp: (DOMElement::tagName): Create a BString from the element's tag name, and release its BSTR into result. 2009-11-20 Jon Honeycutt <jhoneycutt@apple.com> DOMNode::childNodes() is unimplemented https://bugs.webkit.org/show_bug.cgi?id=31745 Reviewed by Darin Adler. * DOMCoreClasses.cpp: (DOMNode::childNodes): Create a DOMNodeList from the node's child nodes. 2009-11-20 Dave Hyatt <hyatt@apple.com> Reviewed by Jon Honeycutt. Change WebSerializedJSValue on Windows to have a zero-argument createInstance call. Move the serialization into a separate serialize() function that can be called after the object has been created. Fix a typo in serialize() caused when fixing build bustage (put a ! back in). * Interfaces/IWebSerializedJSValue.idl: * WebSerializedJSValue.cpp: (WebSerializedJSValue::WebSerializedJSValue): (WebSerializedJSValue::createInstance): (WebSerializedJSValue::serialize): (WebSerializedJSValue::deserialize): * WebSerializedJSValue.h: 2009-11-20 Brian Weinstein <bweinstein@apple.com> Reviewed by Dave Hyatt. Another go at the Windows Build Fix - this is a couple steps of it, so a little more involved than most build fixes. * Interfaces/IWebSerializedJSValue.idl: * Interfaces/JavaScriptCoreAPITypes.idl: * WebKit.vcproj/Interfaces.vcproj: * WebSerializedJSValue.cpp: (WebSerializedJSValue::deserialize): * WebSerializedJSValue.h: 2009-11-20 Brian Weinstein <bweinstein@apple.com> Reviewed by Dave Hyatt. Build fix for Windows - only declare JSContextRef once, instead of in two different idl files. Create a new file to hold the definition of JSContextRef. * Interfaces/IWebFrameLoadDelegate.idl: * Interfaces/IWebSerializedJSValue.idl: * Interfaces/JavaScriptCoreAPITypes.idl: Added. * Interfaces/WebKit.idl: * WebKit.vcproj/Interfaces.vcproj: 2009-11-20 Dave Hyatt <hyatt@apple.com> Reviewed by Oliver Hunt and Jon Honeycutt. Add support for WebSerializedJSValue to WebKit. This object wraps the SerializedScriptValue functionality in WebCore and exposes the ability to do JS value serialization/deserialization to WebKit clients. * Interfaces/IWebSerializedJSValue.idl: Added. * Interfaces/WebKit.idl: * WebKit.vcproj/WebKit.vcproj: * WebSerializedJSValue.cpp: Added. (WebSerializedJSValue::WebSerializedJSValue): (WebSerializedJSValue::~WebSerializedJSValue): (WebSerializedJSValue::createInstance): (WebSerializedJSValue::AddRef): (WebSerializedJSValue::Release): (WebSerializedJSValue::QueryInterface): (WebSerializedJSValue::deserialize): * WebSerializedJSValue.h: Added. 2009-11-19 Alexey Proskuryakov <ap@apple.com> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=31690 Make SocketStreamHandleCFNet work on Windows * WebDownloadCFNet.cpp: (WebDownload::init): (WebDownload::initWithRequest): (WebDownload::initToResumeWithBundle): Update for loaderRunLoop() now being in its own header. 2009-11-19 Eric Carlson <eric.carlson@apple.com> Reviewed by Dan Bernstein. <rdar://problem/7035231> Support closed caption in <video> element * WebCoreLocalizedStrings.cpp: (WebCore::localizedMediaControlElementString): (WebCore::localizedMediaControlElementHelpText): Add accessibility help strings for media controller closed caption button. 2009-11-18 Michelangelo De Simone <micdesim@gmail.com> Reviewed by Darin Adler. Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>. Support for validationMessage attribute, as per HTML5 specs. * WebCoreLocalizedStrings.cpp: (WebCore::validationMessageValueMissingText): (WebCore::validationMessageTypeMismatchText): (WebCore::validationMessagePatternMismatchText): (WebCore::validationMessageTooLongText): (WebCore::validationMessageRangeUnderflowText): (WebCore::validationMessageRangeOverflowText): (WebCore::validationMessageStepMismatchText): 2009-11-18 Daniel Bates <dbates@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=31186 Changes associated with renaming RenderTextControl::isUserEdited. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::isUserEdited): Formerly named isUserEdited. (DOMHTMLTextAreaElement::isUserEdited): Ditto. 2009-11-12 Jon Honeycutt <jhoneycutt@apple.com> Implement DOMHTMLInputElement::replaceCharactersInRange(). https://bugs.webkit.org/show_bug.cgi?id=31492 Reviewed by Dan Bernstein. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::replaceCharactersInRange): Get the text of the input field. Replace the given range with the replacement text, and set this new string as the input element's value. Select from index to the end of the field. This matches the implementation in the Obj-C bindings. 2009-11-12 Jon Honeycutt <jhoneycutt@apple.com> DOMHTMLOptionElement is missing some functionality. https://bugs.webkit.org/show_bug.cgi?id=31491 Reviewed by Dan Bernstein. * DOMHTMLClasses.cpp: (DOMHTMLOptionElement::text): Cast m_element to an HTMLOptionElement, and call its text() function. (DOMHTMLOptionElement::label): Ditto, for label(). 2009-11-12 Jon Honeycutt <jhoneycutt@apple.com> DOMHTMLSelectElement is missing some implementation. https://bugs.webkit.org/show_bug.cgi?id=31489 Reviewed by Dan Bernstein. * DOMHTMLClasses.cpp: (DOMHTMLSelectElement::options): Cast m_element to an HTMLSelectElement. If it has no options, return E_FAIL. Otherwise, create a DOMHTMLOptionsCollection to wrap the options, and return it. (DOMHTMLSelectElement::activateItemAtIndex): If the index is out of bounds, return E_FAIL. Otherwise, select the item. 2009-11-12 Jon Honeycutt <jhoneycutt@apple.com> DOMHTMLOptionsCollection is missing some implementation. https://bugs.webkit.org/show_bug.cgi?id=31488 Reviewed by Dan Bernstein. * DOMHTMLClasses.cpp: (DOMHTMLOptionsCollection::DOMHTMLOptionsCollection): Initialize m_collection. (DOMHTMLOptionsCollection::createInstance): Create a DOMHTMLOptionsCollection. If we fail to query for IDOMHTMLOptionsCollection, delete it, and return 0. Otherwise, return the result. (DOMHTMLOptionsCollection::length): (DOMHTMLOptionsCollection::item): Create a DOMNode for the WebCore Node. If this is 0, return E_FAIL. (DOMHTMLOptionsCollection::namedItem): Correct the signature of this function. * DOMHTMLClasses.h: Declare DOMHTMLOptionsCollection::createInstance(). Correct the signature of namedItem() to match IDOMHTMLOptionsCollection. Add a member to DOMHTMLOptionsCollection to hold the WebCore object. 2009-11-12 Jon Honeycutt <jhoneycutt@apple.com> DOMHTMLInputElement::rectOnScreen() returns the wrong rect https://bugs.webkit.org/show_bug.cgi?id=31487 Reviewed by Darin Adler. * DOMHTMLClasses.cpp: (DOMHTMLInputElement::rectOnScreen): Return the rect on screen, not the rect in the window. 2009-11-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by NOBODY - Build Fix. Correct build error in Debug_Cairo target after @49705. * WebKit.vcproj/WebKit.vcproj: Revise JavaScriptCore.lib dependency to have proper "_debug" suffix needed by the Debug_Cairo target. 2009-11-17 Brian Weinstein <bweinstein@apple.com> Reviewed by NOBODY - Build Fix. Touch files to try to fix the build. * Interfaces/IWebInspector.idl: * Interfaces/WebKit.idl: * WebKit.vcproj/Interfaces.vcproj: 2009-11-17 Pavel Feldman <pfeldman@chromium.org> Reviewed by Timothy Hatcher. Web Inspector: Make DRT show web inspector for tests in inspector/ folder. - Updated DRT to show/close inspector for all tests under /inspector - Introduced LayoutTestController::setTimelineProfilingEnabled and WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled - Removed reload on each inspector test - Renamed fast/inspector to fast/inspector-support in order not to trigger inspector for those. - Reimplemented timeline tests in order to get rid of reload there. - Moved tests that don't require harness into the fast group. https://bugs.webkit.org/show_bug.cgi?id=31472 * Interfaces/IWebInspector.idl: * WebInspector.cpp: (WebInspector::isTimelineProfilingEnabled): (WebInspector::setTimelineProfilingEnabled): * WebInspector.h: 2009-11-13 Adam Roben <aroben@apple.com> Build fix * Interfaces/WebKit.idl: Touch this to force interfaces to rebuild. 2009-11-13 Adam Roben <aroben@apple.com> Tell the WebFrameLoadDelegate when window objects in isolated worlds are cleared Fixes <http://webkit.org/b/31124>. Reviewed by Dave Hyatt. * Interfaces/IWebFrameLoadDelegatePrivate2.idl: Added didClearWindowObjectForFrameInScriptWorld. * WebFrame.cpp: (WebFrame::dispatchDidClearWindowObjectInWorld): * WebFrame.h: Replaced windowObjectCleared with this function. If the delegate implements IWebFrameLoadDelegatePrivate2, call didClearWindowObjectForFrameInScriptWorld. Otherwise, if the passed-in world is the mainThreadNormalWorld(), call didClearWindowObjectForFrame. * WebScriptWorld.cpp: (allWorlds): Added. Returns a HashMap of all the WebScriptWorlds in existence. (WebScriptWorld::WebScriptWorld): Add ourselves to allWorlds(). (WebScriptWorld::~WebScriptWorld): Remove ourselves from allWorlds(). (WebScriptWorld::standardWorld): Added this non-COM getter for the standard world, which the COM getter now calls through to. (WebScriptWorld::findOrCreateWorld): Added. Returns the existing WebScriptWorld for this DOMWrapperWorld, or a new one if one doesn't already exist. * WebScriptWorld.h: Added new standardWorld overload, made one overload of createInstance private, and added findOrCreateWorld. 2009-11-13 Adam Roben <aroben@apple.com> Build fix * Interfaces/WebKit.idl: Un-sort the #includes again. Apparently they are order-dependent! 2009-11-13 Adam Roben <aroben@apple.com> Touch WebKit.idl to fix the Windows build * Interfaces/WebKit.idl: Sorted #includes. 2009-11-13 Adam Roben <aroben@apple.com> Finish replacing worldIDs with world objects The only remaining use of worldIDs was in a method only used by DRT for the isolated worlds tests. Fixes <http://webkit.org/b/31414> Replace worldIDs with world objects Reviewed by Mark Rowe. * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: (WebFrame::stringByEvaluatingJavaScriptInScriptWorld): * WebFrame.h: Renamed from stringByEvaluatingJavaScriptInIsolatedWorld. Now takes an IWebScriptWorld instead of a worldID, so we don't need to maintain a map of worldID -> world anymore. 2009-11-12 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Darin Adler. externalRepresentation should take Frame as the argument https://bugs.webkit.org/show_bug.cgi?id=31393 No new tests as this is just a refactoring. * WebFrame.cpp: (WebFrame::renderTreeAsExternalRepresentation): 2009-11-12 Adam Roben <aroben@apple.com> Replace worldIDs with world objects WebScriptWorld is the new object that represents a world. The only place worldID is still used is in IWebFramePrivate::stringByEvaluatingJavaScriptInIsolatedWorld, but that will change soon. Part of <http://webkit.org/b/31414> Implement new SPI for dealing with user scripts/stylesheets and isolated worlds Reviewed by Sam Weinig. * ForEachCoClass.h: Added WebScriptWorld. * Interfaces/IWebFramePrivate.idl: Replaced contextForWorldID with contextForWorld. * Interfaces/IWebScriptWorld.idl: Added. * Interfaces/IWebViewPrivate.idl: Changed the user script/stylesheet functions to take an IWebScriptWorld instead of a worldID. * Interfaces/WebKit.idl: Added WebScriptWorld. * WebFrame.cpp: (WebFrame::contextForWorld): Renamed from contextForWorldID. Now takes an IWebScriptWorld. (WebFrame::stringByEvaluatingJavaScriptInIsolatedWorld): Moved the bizarre world caching/creation logic that DRT depends on here from the findWorld function in ScriptController.cpp. Updated to use ScriptController::executeScriptInWorld instead of ScriptController::executeScriptInIsolatedWorld. * WebFrame.h: Replaced contextForWorldID with contextForWorld. * WebScriptWorld.cpp: Added. (WebScriptWorld::WebScriptWorld): (WebScriptWorld::~WebScriptWorld): (WebScriptWorld::createInstance): (WebScriptWorld::AddRef): (WebScriptWorld::Release): (WebScriptWorld::QueryInterface): Standard COM class implementations. (WebScriptWorld::standardWorld): Returns a shared instance that represents WebCore's mainThreadNormalWorld(). * WebScriptWorld.h: Added. (WebScriptWorld::world): Simple getter. * WebKit.vcproj/Interfaces.vcproj: Added IWebScriptWorld.idl. * WebKit.vcproj/WebKit.vcproj: Added WebScriptWorld. * WebKitClassFactory.cpp: Added WebScriptWorld. * WebView.cpp: (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): (WebView::removeUserScriptFromGroup): (WebView::removeUserStyleSheetFromGroup): (WebView::removeUserScriptsFromGroup): (WebView::removeUserStyleSheetsFromGroup): * WebView.h: Changed these functions to take an IWebScriptWorld instead of a worldID. 2009-11-12 Adam Roben <aroben@apple.com> Small clean-up in WebView's user content functions Preparation for <http://webkit.org/b/31414> Implement new SPI for dealing with user scripts/stylesheets and isolated worlds Reviewed by Dave Hyatt. * WebView.cpp: (toString): (toKURL): Added these helper functions to convert BSTRs to WebCore types. (toStringVector): (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): (WebView::removeUserScriptFromGroup): (WebView::removeUserStyleSheetFromGroup): (WebView::removeUserScriptsFromGroup): (WebView::removeUserStyleSheetsFromGroup): (WebView::removeAllUserContentFromGroup): Use the new helper functions. 2009-11-11 Beth Dakin <bdakin@apple.com> Build fix. No review needed. * WebKitGraphics.cpp: (WebDrawText): 2009-11-10 Daniel Bates <dbates@webkit.org> Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=30754 Modified WebDropSource::QueryContinueDrag so as to not call EventHandler::dragSourceMovedTo. * WebDropSource.cpp: (WebDropSource::QueryContinueDrag): Removed call to EventHandler::dragSourceMovedTo. 2009-11-10 Alexey Proskuryakov <ap@apple.com> Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=31312 Decouple authentication panel callbacks from ResourceHandle * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): * WebURLAuthenticationChallenge.cpp: (WebURLAuthenticationChallenge::initWithAuthenticationChallenge): (WebURLAuthenticationChallenge::sender): * WebURLAuthenticationChallengeSender.cpp: (WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender): (WebURLAuthenticationChallengeSender::createInstance): (WebURLAuthenticationChallengeSender::authenticationClient): * WebURLAuthenticationChallengeSender.h: * WebURLAuthenticationChallengeSenderCFNet.cpp: (WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge): (WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge): (WebURLAuthenticationChallengeSender::useCredential): Adjusted for WebCore changes. 2009-11-10 Brian Weinstein <bweinstein@apple.com> Reviewed by NOBODY - Build Fix. Updated fillRoundedRect to take a ColorSpace argument. * WebCoreSupport/WebDragClient.cpp: (WebDragClient::createDragImageForLink): 2009-11-08 Janne Koskinen <janne.p.koskinen@digia.com> Reviewed by Holger Freyther. ResourceRequest to be class instead of struct https://bugs.webkit.org/show_bug.cgi?id=30670 Started as a compilation fix for Symbian where the compiler makes a distinction between class and struct in function argument signatures. Changed forward declaration of ResourceRequest to have class in the forward declaration instead of struct. * WebDownload.h: 2009-11-05 Adam Roben <aroben@apple.com> Make CFDictionaryPropertyBag::createInstance return a COMPtr I also cleaned up CFDictionaryPropertyBag's class declaration a little while I was at it. Part of <http://webkit.org/b/25294> <rdar://problem/6803127> All WebKit/win classes should return COMPtrs from their static constructor members Reviewed by Steve Falkenburg. * CFDictionaryPropertyBag.cpp: (CFDictionaryPropertyBag::CFDictionaryPropertyBag): Changed to initialize m_refCount to 0. m_refCount gets increased to 1 by createInstance. (CFDictionaryPropertyBag::createInstance): Changed to return a COMPtr. * CFDictionaryPropertyBag.h: - Updated copyright years - Fixed header guard to match current style - Replaced #include of CoreFoundation.h with forward-declaration of CFMutableDictionaryRef - Added #include of COMPtr.h - Fixed opening brace placement in class declaration - Made createInstance return a COMPtr - Made constructor/destructor private - Made QueryInterface and IPropertyBag functions private - Removed unnecessary parameter names and MIDL comments * WebCache.cpp: (WebCache::statistics): Updated for change to CFDictionaryPropertyBag::createInstance. Now uses releaseRef to place the IPropertyBag pointers into the s array. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidFailToStartPlugin): * WebDatabaseManager.cpp: (WebDatabaseManager::dispatchDidModifyDatabase): * WebFrame.cpp: (WebFrame::createJavaAppletWidget): Updated for change to CFDictionaryPropertyBag::createInstance. * WebHistory.cpp: Removed releaseUserInfo, which is no longer needed. That function was also doing an unnecessary call to setDictionary(0). (createUserInfoFromArray): (createUserInfoFromHistoryItem): Changed to return COMPtr. (WebHistory::loadFromURL): Updated for change to CFDictionaryPropertyBag::createInstance. (WebHistory::removeAllItems): Updated for change to CFDictionaryPropertyBag::createInstance, which fixed a leak! We had forgotten to call releaseUserInfo here. (WebHistory::removeItem): (WebHistory::addItem): (WebHistory::visitedURL): * WebIconDatabase.cpp: (postDidAddIconNotification): Updated for change to CFDictionaryPropertyBag::createInstance. * WebKitClassFactory.cpp: (releaseRefFromCreateInstance): Added this overloaded function template to abstract away the difference between createInstance functions that return a ref'd pointer and createInstance functions that return a COMPtr. (WebKitClassFactory::CreateInstance): Changed to use releaseRefFromCreateInstance. 2009-11-03 Brian Weinstein <bweinstein@apple.com> Reviewed by Steve Falkenburg. WebActionModifierFlagsKey should return an unsigned, because flags imply a bitmask, and that is what other classes expect from it. * WebActionPropertyBag.cpp: (WebActionPropertyBag::Read): 2009-11-02 Eric Carlson <eric.carlson@apple.com> Reviewed by John Sullivan and Mark Rowe. <rdar://problem/7356733> Voiceover does not read correct media controller time values * WebCoreLocalizedStrings.cpp: (WebCore::localizedMediaTimeDescription): 2009-10-29 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility of headings is not correct https://bugs.webkit.org/show_bug.cgi?id=30937 Reviewed by Alice Liu. * AccessibleBase.cpp: (AccessibleBase::get_accDescription): Call the object's descriptionForMSAA(). Moved the comment to the WebCore file. (AccessibleBase::get_accRole): If the object has a string role, return that. Otherwise, return the integer role. * AccessibleBase.h: Removed description(), as this was moved to WebCore. 2009-10-29 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Accessibility of links is wrong https://bugs.webkit.org/show_bug.cgi?id=30928 Reviewed by Darin Adler. * AccessibleBase.cpp: (AccessibleBase::get_accState): Check whether the element is linked, instead of whether the node is an anchor, so the child "linkable" elements of anchor elements will also be "linked". (AccessibleBase::name): Return the name for MSAA. (AccessibleBase::value): Return the string value for MSAA. 2009-10-30 Evan Stade <estade@chromium.org> Reviewed by David Levin. Notify the chrome when the focused node has changed. https://bugs.webkit.org/show_bug.cgi?id=30832 Added stub implementation for new ChromeClient function. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::focusedNodeChanged): * WebCoreSupport/WebChromeClient.h: 2009-10-30 Roland Steiner <rolandsteiner@chromium.org> Reviewed by Eric Seidel. Remove ENABLE_RUBY guards as discussed with Dave Hyatt and Maciej Stachowiak. Bug 28420 - Implement HTML5 <ruby> rendering (https://bugs.webkit.org/show_bug.cgi?id=28420) No new tests (no functional change). * WebKit.vcproj/WebKit.vcproj: 2009-10-29 Mark Rowe <mrowe@apple.com> Rubber-stamped by Dan Bernstein. <http://webkit.org/b/30938> REGRESSION(r50233): Windows nightlies crash on launch due to changes to IWebFramePrivate vtable ordering * Interfaces/IWebFramePrivate.idl: Move the newly-added method to the end of the interface so that it doesn't affect the ordering of the vtable. 2009-10-28 Steve Falkenburg <sfalken@apple.com> Reviewed by Sam "Horatio" Weinig. Should not generate/build COM DOM bindings https://bugs.webkit.org/show_bug.cgi?id=30880 * Interfaces/WebKit.idl: Remove generated interfaces. * WebKit.vcproj/InterfacesGenerated.vcproj: Removed. * WebKit.vcproj/WebKit.sln: Remove InterfacesGenerated.vcproj. * WebKit.vcproj/WebKit.submit.sln: Remove InterfacesGenerated.vcproj. * WebKit.vcproj/WebKit.vcproj: Remove generated interfaces. 2009-10-27 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Darin Adler. Provide a way to get counter values with layoutTestContoller https://bugs.webkit.org/show_bug.cgi?id=30555 * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: (WebFrame::counterValueForElementById): * WebFrame.h: 2009-10-28 Joe Mason <jmason@rim.com> Reviewed by Adam Treat. Call the shared FrameLoader::defaultObjectContentType instead of copying code into FrameLoaderClient::objectContentType. This causes no behavioural change. * WebFrame.cpp: (WebFrame::objectContentType): 2009-10-28 Holger Hans Peter Freyther <zecke@selfish.org> Speculative build-fix for WebElementPropertyBag.cpp * WebElementPropertyBag.cpp: Include RenderObject.h 2009-10-27 Holger Hans Peter Freyther <zecke@selfish.org> Reviewed by Simon Fraser. Change HitTestResult methods to use (3d) transformation aware methods https://bugs.webkit.org/show_bug.cgi?id=27347 The HitTestResult::boundingBox method was removed. The RenderObject must be used directly. In contrast to the old HitTestResult::boundingBox method this code must use a (3d) transformation aware method to not run into an assert in SVGRenderBase::mapLocalToContainer. * WebElementPropertyBag.cpp: (WebElementPropertyBag::Read): Replace HitTestResult::boundingBox() 2009-10-26 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Darin Adler. Make .rc files compile on Windows without depending on MFC headers https://bugs.webkit.org/show_bug.cgi?id=30750 * WebKit.vcproj/WebKit.rc: Use winresrc.h because it exists even when MFC is not installed, and is all that's needed here. 2009-10-26 Sam Weinig <sam@webkit.org> Rubber-stamped by Darin Adler. Rollout r50041-50043. The HTML5 spec changed to make HTMLOptionsCollection inherit from HTMLCollection. * DOMCreateInstance.cpp: 2009-10-25 Dan Bernstein <mitz@apple.com> Reviewed by John Sullivan. Add contextForWorldID to the IWebFramePrivate interface. * Interfaces/IWebFramePrivate.idl: * WebFrame.h: 2009-10-25 Sam Weinig <sam@webkit.org> Another try at fixing windows. * DOMCreateInstance.cpp: 2009-10-25 Sam Weinig <sam@webkit.org> Touch WebKit.idl in an effort to try and regenerate the COM bindings. * Interfaces/WebKit.idl: 2009-10-23 Mark Rowe <mrowe@apple.com> Build fix. Include config.h before including other files. * AccessibleImage.cpp: 2009-10-23 Gavin Barraclough <barraclough@apple.com> Reviewed by Geoff Garen. https://bugs.webkit.org/show_bug.cgi?id=30729 Provide private API to request the global context for a specific world. Used to initialize parameters on the global object. * WebFrame.cpp: (WebFrame::contextForWorldID): * WebFrame.h: 2009-10-23 Brian Weinstein <bweinstein@apple.com> Reviewed by John Sullivan. Pan-scrolling pointer shows up in other tabs or windows, can't "fix" it. <http://webkit.org/b/30732> and <rdar://7332018>. Turns off pan-scrolling on a WebView when it is about to lose focus. * WebView.cpp: (WebViewWndProc): 2009-10-23 Jon Honeycutt <jhoneycutt@apple.com> MSAA: Name for image elements should use alt attribute text https://bugs.webkit.org/show_bug.cgi?id=30727 <rdar://problem/7328291> Reviewed by Alice Liu. * AccessibleBase.cpp: (AccessibleBase::createInstance): If the AccessibilityObject is an image, return an AccessibleImage. * AccessibleImage.cpp: Added. (AccessibleImage::AccessibleImage): Call the base constructor. (AccessibleImage::name): If the object is not an AccessibilityRenderObject, return the base's name(). Look first for an ARIA "labeled-by" attribute, then look for an alternate text attribute. Fall back to the base's name(). * AccessibleImage.h: Added. (AccessibleImage::~AccessibleImage): * WebKit.vcproj/WebKit.vcproj: Add AccessibleImage to the project. 2009-10-23 Sam Weinig <sam@webkit.org> Try and fix the windows build. * Interfaces/WebKit.idl: 2009-10-22 Gavin Barraclough <barraclough@apple.com> Reviewed by Sam Weinig & Geoff Garen. https://bugs.webkit.org/show_bug.cgi?id=30696 Update to incorporate support for IsolatedWorlds in JSC bindings. * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: (WebFrame::globalContext): (WebFrame::windowObjectCleared): (WebFrame::stringByEvaluatingJavaScriptInIsolatedWorld): * WebFrame.h: 2009-10-20 Fumitoshi Ukai <ukai@chromium.org> Reviewed by David Levin. Removed WebSocket runtime settings. https://bugs.webkit.org/show_bug.cgi?id=29896 WebSocket runtime configuration is supported by chromium/v8 only. * Interfaces/IWebPreferencesPrivate.idl: * WebPreferenceKeysPrivate.h: * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::experimentalNotificationsEnabled): * WebPreferences.h: * WebView.cpp: (WebView::notifyPreferencesChanged): 2009-10-19 Adam Roben <aroben@apple.com> Fix crashes/assertions when calling WebLocalizedString from multiple threads concurrently Fixes <http://webkit.org/b/30534> WebLocalizedString asserts if called from multiple threads concurrently Reviewed by John Sullivan. * WebLocalizableStrings.cpp: (mainBundleLocStringsMutex): (frameworkLocStringsMutex): Added these new getters. (findCachedString): (cacheString): Lock the relevant mutex before accessing each string map. Otherwise bad things could happen if two threads end up here at the same time. 2009-10-19 Adam Roben <aroben@apple.com> Get rid of a few static initializers/exit-time destructors in WebLocalizableStrings Reviewed by Dan Bernstein. * WebLocalizableStrings.cpp: (mainBundleLocStrings): (frameworkLocStrings): Added these functions instead of file-scope variables. (findCachedString): (cacheString): Updated to use the new functions. 2009-10-19 Nate Chapin <japhet@chromium.org> Unreviewed, build fix. Update call to FrameLoader::urlSelected(). * WebCoreSupport/WebContextMenuClient.cpp: (WebContextMenuClient::searchWithGoogle): 2009-10-16 Steve Falkenburg <sfalken@apple.com> Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=30456 Fixes for new Debug_All Windows build configuration. * WebKitClassFactory.cpp: Use new DEBUG_ALL preprocessor define for library naming. 2009-10-16 Jon Honeycutt <jhoneycutt@apple.com> Add SPI to determine whether a plug-in has ever been halted. Part of <rdar://problem/7312158>. Reviewed by Dan Bernstein. * Interfaces/IWebViewPrivate.idl: Add hasPluginForNodeBeenHalted(). * WebView.cpp: (pluginViewForNode): Code factored out of isNodeHaltedPlugin(). (WebView::isNodeHaltedPlugin): Remove STDMETHODCALLTYPE, as it has no use at the definition. Use pluginViewForNode(). (WebView::restartHaltedPluginForNode): Ditto. (WebView::hasPluginForNodeBeenHalted): Get the PluginView for the given node. Return the result of PluginView::hasBeenHalted(). * WebView.h: Declare hasPluginForNodeBeenHalted(). 2009-10-16 Steve Falkenburg <sfalken@apple.com> Reviewed by Adam Roben. Add a Debug_All configuration to build entire stack as debug. Change Debug_Internal to: - stop using _debug suffix for all WebKit/Safari binaries - not use _debug as a DLL naming suffix - use non-debug C runtime lib. * WebKit.vcproj/InterfacesGenerated.vcproj: Renamed single configuration from "Release" to "all". * WebKit.vcproj/WebKit.make: Debug build in makefile should build Debug_All. * WebKit.vcproj/WebKit.sln: Add Debug_All configuration. * WebKit.vcproj/WebKit.submit.sln: Add Debug_All configuration. * WebKit.vcproj/WebKit.vcproj: Remove extraneous OutputDirectory/IntermediateDirectory in Debug_Cairo. Add Debug_All configuration. * WebKit.vcproj/WebKitGUID.vcproj: Add Debug_All configuration. 2009-10-15 Jon Honeycutt <jhoneycutt@apple.com> Add SPI to restart a halted plug-in. Part of <rdar://problem/7273354> Halted plug-ins should restart on mouseover https://bugs.webkit.org/show_bug.cgi?id=30151 Reviewed by Kevin Decker. * Interfaces/IWebViewPrivate.idl: Add restartHaltedPluginForNode(). * WebView.cpp: (WebView::restartHaltedPluginForNode): From the IDOMNode, query for the DOMNode. From the DOMNode, get the WebCore::Node. Get the node's renderer, and check whether it is a RenderWidget. If so, get its Widget, and check whether it's a PluginView. If so, call PluginView::restart(). * WebView.h: Declare restartHaltedPluginForNode(). 2009-10-14 Jon Honeycutt <jhoneycutt@apple.com> Add SPI to determine whether a node is a halted plug-in. Part of <rdar://problem/7273354> Halted plug-ins should restart on mouseover https://bugs.webkit.org/show_bug.cgi?id=30151 Reviewed by Darin Adler. * Interfaces/IWebViewPrivate.idl: Add isNodehaltedPlugin(). * WebView.cpp: (WebView::isNodeHaltedPlugin): From the IDOMNode, query for the DOMNode. From the DOMNode, get the WebCore::Node. Get the node's renderer, and check whether it is a RenderWidget. If so, get its Widget, and check whether it's a PluginView. If so, return the result of PluginView::isHalted(). * WebView.h: Declare isNodeHaltedPlugin(). 2009-10-15 Daniel Bates <dbates@webkit.org> Reviewed by Adam Roben. https://bugs.webkit.org/show_bug.cgi?id=24731 And rdar://problem/5015961 Implements support for DHTML drag-and-drop operations (i.e. ondragstart, ondragend) in the Windows build so that it conforms to the Mac OS X build. Hence, dropEffect is correctly set. The WebView and WebDropSource drag-and-drop functions, as called by function DoDragDrop in its event loop, neither used the drop effect as specified by event.dataTransfer.dropEffect nor respected event.dataTransfer.effectsAllowed. Instead, these functions defaulted to some hardcoded drop effect and set of allowed drop effects, respectively. Tests: fast/events/drag-and-drop.html * WebCoreSupport/WebDragClient.cpp: (WebDragClient::startDrag): * WebDropSource.cpp: (WebDropSource::QueryContinueDrag): Moved call to EventHandler::dragSourceEndedAt into method WebDragClient::startDrag. * WebDropSource.h: * WebView.cpp: (WebView::keyStateToDragOperation): Fixes <rdar://problem/5015961>. Determines appropriate drop effect from state of keyboard and allowed effects m_page->dragController()->sourceDragOperation(). (WebView::DragEnter): (WebView::DragOver): (WebView::Drop): * WebView.h: 2009-10-14 Adam Roben <aroben@apple.com> Windows build fix * WebKit.vcproj/Interfaces.vcproj: Exclude IWebHistoryDelegate and IWebNavigationData from the build (they get #imported via WebKit.idl). 2009-10-14 Brady Eidson <beidson@apple.com> Reviewed by Sam Weinig. WebKit Win API should provide a delegate interface for global history. https://bugs.webkit.org/show_bug.cgi?id=29905 -Add IWebHistoryDelegate for clients to implement. -Add (I)WebNavigationData for the history delegate's use. -When it exists, call the history delegate instead of using WebHistory. * Interfaces/IWebHistoryDelegate.idl: Added. * Interfaces/IWebHistoryPrivate.idl: * Interfaces/IWebNavigationData.idl: Added. * Interfaces/IWebViewPrivate.idl: * Interfaces/WebKit.idl: * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/WebKit.vcproj: * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::populateVisitedLinks): * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::updateGlobalHistory): (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): (WebFrameLoaderClient::setTitle): * WebView.cpp: (WebView::close): (WebView::mainFrameURL): (WebView::setHistoryDelegate): (WebView::historyDelegate): (WebView::addVisitedLinks): * WebView.h: * WebHistory.cpp: (WebHistory::setVisitedLinkTrackingEnabled): (WebHistory::removeAllVisitedLinks): * WebHistory.h: * WebNavigationData.cpp: Added. (WebNavigationData::QueryInterface): (WebNavigationData::AddRef): (WebNavigationData::Release): (WebNavigationData::WebNavigationData): (WebNavigationData::~WebNavigationData): (WebNavigationData::createInstance): (WebNavigationData::url): (WebNavigationData::title): (WebNavigationData::originalRequest): (WebNavigationData::response): (WebNavigationData::hasSubstituteData): (WebNavigationData::clientRedirectSource): * WebNavigationData.h: Added. 2009-10-13 Dave Hyatt <hyatt@apple.com> Fix more WebView bustage. * WebView.cpp: (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): (WebView::removeUserScriptsFromGroup): (WebView::removeUserStyleSheetsFromGroup): 2009-10-13 Dave Hyatt <hyatt@apple.com> Fix build bustage on Windows. * WebView.cpp: (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): (WebView::removeUserScriptsFromGroup): (WebView::removeUserStyleSheetsFromGroup): 2009-10-13 Dave Hyatt <hyatt@apple.com> Reviewed by Adam Roben.. Split removal functions for user scripts and stylehseets based on type. * Interfaces/IWebViewPrivate.idl: * WebView.cpp: (WebView::removeUserScriptFromGroup): (WebView::removeUserStyleSheetFromGroup): * WebView.h: 2009-10-09 Adam Barth <abarth@webkit.org> Reviewed by Darin Adler. Factor HistoryController out of FrameLoader https://bugs.webkit.org/show_bug.cgi?id=30246 Update API call. * WebView.cpp: (WebView::loadBackForwardListFromOtherView): 2009-10-08 Jon Honeycutt <jhoneycutt@apple.com> Remove the WebKitPluginHalterEnabledPreferenceKey in favor of checking for the existence of a PluginHalterDelegate. Reviewed by Dan Bernstein. * Interfaces/IWebPreferencesPrivate.idl: Remove the getter and setter. * WebCoreSupport/WebPluginHalterClient.cpp: (WebPluginHalterClient::enabled): Return true if the delegate exists. * WebCoreSupport/WebPluginHalterClient.h: Declare implementation of enabled(). * WebPreferenceKeysPrivate.h: Removed the pref key. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Removed initialization of the pref. * WebPreferences.h: Removed declaration of the getter/setter. * WebView.cpp: (WebView::notifyPreferencesChanged): Don't propagate the pref. 2009-10-08 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Move executeScript from FrameLoader to ScriptController https://bugs.webkit.org/show_bug.cgi?id=30200 Update API call. * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): 2009-10-08 Anders Carlsson <andersca@apple.com> Reviewed by Sam Weinig. Remove the shouldLoadMediaElementURL implementation. * Interfaces/IWebPolicyDelegatePrivate.idl: * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::shouldUsePluginDocument): * WebCoreSupport/WebFrameLoaderClient.h: 2009-10-08 Adam Roben <aroben@apple.com> Make IWebInspectorPrivate be accessed in a more standard way IWebViewPrivate::inspectorPrivate has been removed. Callers should instead use IWebViewPrivate::inspector and then use QueryInterface to get the IWebInspectorPrivate interface. This matches how our other COM classes work. Fixes <http://webkit.org/b/30215> Make IWebInspectorPrivate be accessed in a more standard way Reviewed by John Sullivan and Tim Hatcher. * Interfaces/IWebViewPrivate.idl: Removed inspectorPrivate. * WebInspector.cpp: (WebInspector::QueryInterface): Support querying to IWebInspectorPrivate. * WebView.cpp: * WebView.h: Removed inspectorPrivate. 2009-10-08 Adam Roben <aroben@apple.com> Move the new IWebViewPrivate::inspectorPrivate function after all functions that existed when Safari 4.0.3 was released Fixes <http://webkit.org/b/30085> REGRESSION (r49091): run-safari crashes in Safari.dll Reviewed by John Sullivan. * Interfaces/IWebViewPrivate.idl: Moved inspectorPrivate to the end of the interface, so it won't modify the vtable that Safari 4.0.3 sees. 2009-10-07 Adam Roben <aroben@apple.com> Expose origin whitelisting in the WebKit API on Windows Fixes <http://webkit.org/b/30185>. Reviewed by Eric Seidel. * Interfaces/IWebViewPrivate.idl: Added whiteListAccessFromOrigin and resetOriginAccessWhiteLists, to match the Mac SPI. * WebView.cpp: (WebView::whiteListAccessFromOrigin): (WebView::resetOriginAccessWhiteLists): * WebView.h: Added. These just call through to SecurityOrigin. 2009-10-07 Adam Barth <abarth@webkit.org> Reviewed by Darin Adler. Factor PolicyChecker out of FrameLoader https://bugs.webkit.org/show_bug.cgi?id=30155 Move the policy callback to the policy object. * WebFrame.cpp: (WebFrame::dispatchWillSubmitForm): (WebFrame::receivedPolicyDecision): (WebFrame::dispatchDecidePolicyForMIMEType): (WebFrame::dispatchDecidePolicyForNewWindowAction): (WebFrame::dispatchDecidePolicyForNavigationAction): 2009-10-07 Daniel Bates <dbates@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=30102 And <rdar://problem/5015957> Fixes an issue (in the Windows build) where the cursor does not change to the not-allowed cursor when the drag-and-drop operation is not allowed. The allowed effects in WebDragClient::startDrag are hard-coded to be DROPEFFECT_COPY | DROPEFFECT_LINK | DROPEFFECT_MOVE. Instead, the list of allowed drop effects should be determined by the allowed operations of the drag source. We cannot test this using DRT because DRT looks at the programmatic drop cursor and until bug #24731 is fixed this value is hard-coded to DragOperationCopy. That is, there is a discrepancy in the Windows build between the Windows API-based drop effect and the WebKit drop effect. Because DRT cannot read the screen buffer to determine the cursor, a manual test is needed. * WebCoreSupport/WebDragClient.cpp: (draggingSourceOperationMaskToDragCursors): Added method. (WebDragClient::startDrag): 2009-10-07 Steve Falkenburg <sfalken@apple.com> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=30176 <rdar://problem/7281553> Extra information in UA causes problems with gmail * WebKit.vcproj/WebKit.rc: Restore PRODUCTVERSION to build number only. Remove extra space. 2009-10-06 Pavel Feldman <pfeldman@chromium.org> Reviewed by Timothy Hatcher. Web Inspector: default to an attached inspector window on Windows (as on Mac). https://bugs.webkit.org/show_bug.cgi?id=30134 * WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::showWindowWithoutNotifications): 2009-10-06 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Move FrameLoader::canLoad to SecurityOrigin https://bugs.webkit.org/show_bug.cgi?id=30111 * WebFrame.cpp: (WebFrame::allowsFollowingLink): 2009-10-06 Pavel Feldman <pfeldman@chromium.org> Reviewed by Timothy Hatcher. Web Inspector: close inspector client view on InspectorController::close API call. In order to run batch web inspector layout tests (and not affect subsequent tests) we should close inspector client's view upon InspectorController::close API call. https://bugs.webkit.org/show_bug.cgi?id=30009 * WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::createPage): 2009-10-06 David Levin <levin@chromium.org> Reviewed by NOBODY (windows build fix). Speculative build fix for windows (due to r49160). * WebDownloadCFNet.cpp: (WebDownload::initToResumeWithBundle): * WebIconDatabase.cpp: (WebIconDatabase::dispatchDidAddIconForPageURL): 2009-10-05 Pavel Feldman <pfeldman@chromium.org> Reviewed by Timothy Hatcher. Web Inspector: add testing harness for Web Inspector. https://bugs.webkit.org/show_bug.cgi?id=30010 * Interfaces/IWebInspectorPrivate.idl: Added. * Interfaces/IWebViewPrivate.idl: * Interfaces/WebKit.idl: * WebInspector.cpp: (WebInspector::evaluateInFrontend): * WebInspector.h: * WebView.cpp: (WebView::inspectorPrivate): * WebView.h: 2009-10-02 Dave Hyatt <hyatt@apple.com> Reviewed by Adam Roben. Add support for blacklist patterns to user stylesheets and scripts in addition to whitelist patterns. * Interfaces/IWebViewPrivate.idl: * WebView.cpp: (toStringVector): (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): * WebView.h: 2009-10-02 Steve Falkenburg <sfalken@apple.com> Reviewed by Mark Rowe. <https://bugs.webkit.org/show_bug.cgi?id=29989> Safari version number shouldn't be exposed in WebKit code For a WebKit version of 532.3.4: Product version is: 5.32.3.4 (was 4.0.3.0) File version is: 5.32.3.4 (was 4.532.3.4) * WebKit.vcproj/WebKit.rc: 2009-09-30 Sam Weinig <sam@webkit.org> Reviewed by Dan Bernstein. Fix for <rdar://problem/7259706> Need WebKit API or SPI on Mac and Windows to test whether it's safe to load a page in a new tab/window * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: (WebFrame::allowsFollowingLink): * WebFrame.h: 2009-09-30 Dave Hyatt <hyatt@apple.com> Reviewed by Adam Roben. Add the ability to remove user stylesheets and scripts by URL. * Interfaces/IWebViewPrivate.idl: * WebView.cpp: (WebView::removeUserContentWithURLFromGroup): * WebView.h: 2009-09-29 Kenneth Russell <kbr@google.com> Reviewed by Dimitri Glazkov. Add support for run-time flag for 3D canvas https://bugs.webkit.org/show_bug.cgi?id=29826 * WebView.cpp: (WebView::notifyPreferencesChanged): Enable experimental WebGL flag when 3D_CANVAS is enabled in the build. 2009-09-28 Alexey Proskuryakov <ap@apple.com> Reviewed by Darin Adler and Sam Weinig. Onclick not fired for an element copied with cloneContents() or cloneNode() https://bugs.webkit.org/show_bug.cgi?id=25130 * DOMCreateInstance.cpp: GEN_DOMEventListener is a pure interface now. * WebKit.vcproj/WebKit.vcproj: Removed GEN_DOMEventListener.cpp. 2009-09-28 Fumitoshi Ukai <ukai@chromium.org> Reviewed by Eric Seidel. Add experimentalWebSocketsEnabled in WebPreferences. https://bugs.webkit.org/show_bug.cgi?id=28941 * Interfaces/IWebPreferencesPrivate.idl: * WebPreferenceKeysPrivate.h: * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::setExperimentalWebSocketsEnabled): (WebPreferences::experimentalWebSocketsEnabled): * WebPreferences.h: * WebView.cpp: (WebView::notifyPreferencesChanged): (core): 2009-09-25 Darin Adler <darin@apple.com> Reviewed by Steve Falkenburg. Speed up access to history items by caching date computation. * History/WebHistory.mm: (getDayBoundaries): Refactored from timeIntervalForBeginningOfDay. Returns the beginning of the day that the passed time is within and the beginning of the next day. (beginningOfDay): Added. Uses getDayBoundaries so it can be fast for multiple dates within the same day, which is the common case. (dateKey): Added. Calls beginningOfDay and converts to an integer. (WebHistory::findKey): Changed to call dateKey instead of timeIntervalForBeginningOfDay. 2009-09-25 Adam Roben <aroben@apple.com> Add SPI to invalidate a WebView's backing store This is useful in conjunction with IWebUIDelegatePrivate2::drawBackground. This provides a way for the UI delegate to force WebView to get its background redrawn. Fixes <http://webkit.org/b/29737> Need SPI to invalidate a WebView's backing store Reviewed by Anders Carlsson. * Interfaces/IWebViewPrivate.idl: Added invalidateBackingStore. * WebView.cpp: (WebView::invalidateBackingStore): If rect is 0, invalidate our whole client rect. Otherwise invalidate the intersection of rect with our client rect. * WebView.h: 2009-09-24 Jon Honeycutt <jhoneycutt@apple.com> Add a mechanism for automatically halting plug-ins. Reviewed by Oliver Hunt. * Interfaces/IWebPluginHalterDelegate.idl: Added. Defines an interface for a delegate that determines whether plug-ins should be halted. * Interfaces/IWebPreferencesPrivate.idl: Declare functions to get and set the enabled state of the plug-in halter and the plug-in allowed run time. * Interfaces/IWebViewPrivate.idl: Declare functions to get and set the IWebPluginHalterDelegate. * Interfaces/WebKit.idl: * WebCoreSupport/WebPluginHalterClient.cpp: Added. (WebPluginHalterClient::WebPluginHalterClient): (WebPluginHalterClient::shouldHaltPlugin): Get the IWebPluginHalterDelegate for the WebView. Create a WebKit DOMNode for the WebCore Node. Call the delegate's shouldHaltPlugin(). If the call fails, return false. Otherwise, return the result of the call. * WebCoreSupport/WebPluginHalterClient.h: Added. * WebKit.vcproj/Interfaces.vcproj: Add IWebPluginHalterDelegate.idl. * WebKit.vcproj/WebKit.vcproj: Add WebPluginHalterClient.{h,cpp}. * WebPreferenceKeysPrivate.h: Define WebKitPluginHalterEnabledPreferenceKey and WebKitPluginAllowedRunTimePreferenceKey. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Leave plug-in halting disabled by default. Set the default value for the plug-in allowed run time to the max value of an unsigned int. (WebPreferences::setPluginHalterEnabled): (WebPreferences::pluginHalterEnabled): (WebPreferences::setPluginAllowedRunTime): (WebPreferences::pluginAllowedRunTime): * WebPreferences.h: * WebView.cpp: (WebView::close): Clear the IWebPluginHalterDelegate. (WebView::initWithFrame): Pass a WebPluginHalterClient when creating the Page. (WebView::notifyPreferencesChanged): Set the new settings when the preferences changed notification is received. (WebView::setPluginHalterDelegate): (WebView::pluginHalterDelegate): * WebView.h: Declare overrides of setPluginHalterDelegate() and pluginHalterDelegate(). Added a member to track the IWebPluginHalterDelegate. 2009-09-14 John Gregg <johnnyg@google.com> Reviewed by Eric Seidel. Enable switch for notifications (experimental) in Page Settings https://bugs.webkit.org/show_bug.cgi?id=28930 Adds support for the experimentalNotificationsEnabled flag in Settings through WebPreferencesPrivate interface. Also cleans up some issues accessing the notification delegate through DumpRenderTree. * Interfaces/IWebPreferencesPrivate.idl: * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: (WebDesktopNotificationsDelegate::hasNotificationDelegate): (WebDesktopNotificationsDelegate::notificationDelegate): * WebPreferenceKeysPrivate.h: * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::setExperimentalNotificationsEnabled): (WebPreferences::experimentalNotificationsEnabled): * WebPreferences.h: * WebView.cpp: (WebView::notifyPreferencesChanged): 2009-09-23 Anders Carlsson <andersca@apple.com> Reviewed by Adam Roben. <rdar://problem/7243354> REGRESSION(48580-48636): Crash clicking embedded QT preview button on apple.com/trailers Check for a null IWebPolicyDelegatePrivate. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::shouldLoadMediaElementURL): 2009-09-22 Sam Weinig <sam@webkit.org> Rubber-stamped by Adam Roben. Remove accidentally left in declaration of reloadFromOrigin in IWebFramePrivate.idl * Interfaces/IWebFramePrivate.idl: 2009-09-22 Sam Weinig <sam@webkit.org> Reviewed by Steve Falkenburg. Fix for <rdar://problem/6451745> Windows WebKit needs to implement reloadFromOrigin() * Interfaces/IWebFrame.idl: * Interfaces/IWebFramePrivate.idl: * Interfaces/IWebView.idl: * WebFrame.cpp: (WebFrame::reloadFromOrigin): * WebFrame.h: * WebView.cpp: (WebView::reloadFromOrigin): * WebView.h: 2009-09-22 Adam Roben <aroben@apple.com> Manage refcounts correctly in DefaultDownloadDelegate::willSendRequest Fixes <http://webkit.org/b/29650> Crash in WebDownload::willSendRequest when using DefaultDownloadDelegate Reviewed by Brady Eidson. * DefaultDownloadDelegate.cpp: (DefaultDownloadDelegate::willSendRequest): Call AddRef() on the object we're returning via the finalRequest out-parameter. 2009-09-21 Anders Carlsson <andersca@apple.com> Reviewed by Adam Roben. <rdar://problem/7135588> HTMLMediaElement should ask WebPolicyLoadDelegate before loading resource Implement WebFrameLoaderClient::shouldLoadMediaElementURL and have it call the new private policy delegate method. * Interfaces/IWebPolicyDelegatePrivate.idl: Added. * Interfaces/WebKit.idl: * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::shouldLoadMediaElementURL): * WebCoreSupport/WebFrameLoaderClient.h: * WebKit.vcproj/Interfaces.vcproj: 2009-09-17 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. Make PlatformWindow return something else than PlatformWidget https://bugs.webkit.org/show_bug.cgi?id=29085 Reflect the rename of platformWindow and it's return type. * AccessibleBase.cpp: (AccessibleBase::get_accParent): * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::platformPageClient): * WebCoreSupport/WebChromeClient.h: 2009-09-17 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Remove assertions that were being hit by calls to m_verticalScrollbar->invalidate(). These assertions were valid, but they were causing tests to fail, so replacing with a FIXME until we can find out the real cause/solution that is being tracked by http://webkit.org/b/29350. * WebView.cpp: (WebView::addToDirtyRegion): (WebView::paintIntoBackingStore): 2009-09-17 Ada Chan <adachan@apple.com> Post WebViewDidChangeSelectionNotification when the text selection changes. Fixes <http://webkit.org/b/29321> Reviewed by Adam Roben. * Interfaces/IWebView.idl: * WebCoreSupport/WebEditorClient.cpp: (WebEditorClient::respondToChangedSelection): 2009-09-17 Adam Roben <aroben@apple.com> Fix a crash when a WebView's HWND is destroyed before IWebView::close is called WebView's HWND was being sent a WM_TIMER message after the WebView was destroyed. This normally isn't possible (we call DestroyWindow inside WebView's destructor to ensure the HWND doesn't outlive the WebView), but r48060 changed WebView to call SetParent(m_viewWindow, HWND_MESSAGE) while handling WM_DESTROY, and apparently this puts the HWND into some weird half-destroyed state where it can still receive WM_TIMER messages. Fixes <http://webkit.org/b/29337> <rdar://problem/7209897> REGRESSION (r48060): unrepro but frequent crash in WebViewWndProc Reviewed by Steve Falkenburg. * WebView.cpp: (WebViewWndProc): When handling WM_DESTROY, call setIsBeingDestroyed() before calling close(). This allows setHostWindow to detect that we're handling WM_DESTROY. No other code in close() cared whether isBeingDestroyed() was true or not. (WebView::setHostWindow): If our host window is being set to 0 and we're being destroyed, don't become a message-only window. Doing this while handling WM_DESTROY seems to lead to crashes. 2009-09-16 Adam Roben <aroben@apple.com> Add a UI delegate callback to let the delegate draw a WebView's background Fixes <http://webkit.org/b/29315>. Reviewed by Dave Hyatt. * Interfaces/IWebUIDelegatePrivate.idl: Added IWebUIDelegatePrivate2::drawBackground. * WebView.cpp: (WebView::paintIntoBackingStore): After clearing or filling with white, let the delegate draw whatever background it wants. Also added an assertion that the dirty rect is within our bounds. 2009-09-16 Adam Roben <aroben@apple.com> Prevent WebView from painting over sibling windows Fixes <http://webkit.org/b/29300> <rdar://problem/7227960> WebView can paint over sibling windows Reviewed by Darin Adler. * WebView.cpp: (WebView::initWithFrame): Create the WebView's HWND with the WS_CLIPSIBLINGS style. 2009-09-14 Brady Eidson <beidson@apple.com> Reviewed by Alexey Proskuryakov. Safari 4 cannot be used to update firmware on Linksys routers. <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160 Adopt the new WebCore::CredentialStorage in WebKit/Win. * WebDownloadCFNet.cpp: (WebDownload::didReceiveAuthenticationChallenge): 2009-09-11 Steve Falkenburg <sfalken@apple.com> Reviewed by Dan Bernstein. Properly propagate preference from WebPreferences to WebCore::Settings. https://bugs.webkit.org/show_bug.cgi?id=29192 * WebView.cpp: (WebView::initWithFrame): Apply setting when creating a new WebView. (WebView::notifyPreferencesChanged): Apply setting when preferences change. 2009-09-11 Steve Falkenburg <sfalken@apple.com> Reviewed by Darin Adler. Allow WebKit clients to opt out of high resolution timers on Windows. https://bugs.webkit.org/show_bug.cgi?id=29192 * Interfaces/IWebPreferencesPrivate.idl: Added getter/setter. Put this just after last 4.0.3 method for future merging. * Interfaces/WebKit.idl: Touched to force a rebuild. * WebPreferenceKeysPrivate.h: Added prefs key for high res timers. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Initialize high res timers to enabled. (WebPreferences::setShouldUseHighResolutionTimers): Added. (WebPreferences::shouldUseHighResolutionTimers): Added. * WebPreferences.h: Added getter/setter. 2009-09-11 Adam Roben <aroben@apple.com> Get user script/stylesheet tests running on Windows Fixes <http://webkit.org/b/29181> User script/stylesheet tests are skipped on Windows Reviewed by John Sullivan. * Interfaces/IWebViewPrivate.idl: Added addUserScriptToGroup, addUserStyleSheetToGroup, removeUserContentFromGroup, removeAllUserContentFromGropu to match the Mac SPI. * WebView.cpp: (WebView::addUserScriptToGroup): (WebView::addUserStyleSheetToGroup): (WebView::removeUserContentFromGroup): (WebView::removeAllUserContentFromGroup): * WebView.h: Added. Implementation was based on similar methods in WebView.mm. 2009-09-11 Jon Honeycutt <jhoneycutt@apple.com> Fix crash on launch on Windows. Rubber-stamped by Mark Rowe. * WebKit.vcproj/WebKit.vcproj: Define ENABLE_WEB_SOCKETS for all configurations. 2009-09-07 Drew Wilson <atwilson@google.com> Reviewed by David Levin. Enable SHARED_WORKERS by default. https://bugs.webkit.org/show_bug.cgi?id=28959 * WebKit.vcproj/WebKit.vcproj: 2009-09-04 Adam Roben <aroben@apple.com> Make WebView function without a parent window When WebView has no parent window, it becomes a message-only window, which hides it from the screen and prevents it from appearing on the taskbar. Fixes <http://webkit.org/b/28971> <rdar://problem/4976998> WebView::initWithFrame fails if there's no host window Reviewed by Dave Hyatt. * WebView.cpp: (WebView::initWithFrame): m_hostWindow is null, use HWND_MESSAGE as our parent window, which will make us a message-only window. (WebView::setHostWindow): If he new host window is null, use HWND_MESSAGE as our parent window, which will make us a message-only window. 2009-09-04 Adam Barth <abarth@webkit.org> Unreviewed attempt at a build fix. Added missing include. * WebCoreSupport/WebFrameLoaderClient.cpp: 2009-09-04 Adam Barth <abarth@webkit.org> Unreviewed attempt at a build fix. Fix typo of IWebFrameLoadDelegatePrivate2 and make IWebFrameLoadDelegatePrivate inherit from IWebFrameLoadDelegatePrivate as requestd by Adam Roben. * Interfaces/IWebFrameLoadDelegatePrivate2.idl: * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent): 2009-09-04 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=24696 Plumb mixed content notifications to IWebFrameLoadDelegatePrivate. * Interfaces/IWebFrameLoadDelegatePrivate2.idl: Added. * Interfaces/WebKit.idl: * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent): * WebKit.vcproj/Interfaces.vcproj: 2009-09-03 Adam Barth <abarth@webkit.org> Reviewed by eric@webkit.org. https://bugs.webkit.org/show_bug.cgi?id=24696 Stub implementations of mixed content methods of FrameLoaderClient. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent): * WebCoreSupport/WebFrameLoaderClient.h: 2009-09-01 Adam Roben <aroben@apple.com> Post a notification when a WebView is closing This is useful for situations where some code wants to react to the WebView closing but isn't in charge of the WebView and can't otherwise be notified. This notification could replace IWebUIDelegatePrivate::webViewClosing if we decide that the notification system isn't too burdensome. <http://webkit.org/b/28875> Reviewed by John Sullivan. * Interfaces/IWebViewPrivate.idl: Added the WebViewWillCloseNotification string constant. * WebKit.vcproj/WebKit.vcproj: Link against comsuppw.lib in all configurations so that we can use _bstr_t. * WebView.cpp: (WebView::close): Post the WebViewWillCloseNotification. 2009-08-31 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=28852 Rename KURL single argument constructor to avoid confusion * WebURLResponse.cpp: (WebURLResponse::createInstance): Adapt to the change. 2009-08-20 Adam Roben <aroben@apple.com> Give WebKit clients access to the window features specified in window.open Reviewed by Steve Falkenburg. * COMVariantSetter.h: Added COMVariantSetters for bool and float. * Interfaces/IWebUIDelegatePrivate.idl: Added IWebUIDelegatePrivate2, which contains a new version of createWebViewWithRequest that also passes the window features as an IPropertyBag. This is analagous to the -createWebViewWithRequest:windowFeatures: method added to WebUIDelegate on Mac in r27452. Also added key strings for use with the window features property bag. * WebCoreSupport/WebChromeClient.cpp: (createWindowFeaturesPropertyBag): Added this helper function to turn a WebCore::WindowFeatures into an IPropertyBag for passing to WebKit clients. (WebChromeClient::createWindow): If the UI delegate implements IWebUIDelegatePrivate2, call the new createWebViewWithRequest function that takes a window features property bag. If the delegate doesn't implement the new function, fall back to the old functions. 2009-08-20 Adam Roben <aroben@apple.com> A little clean-up in WebChromeClient::createWindow Reviewed by Steve Falkenburg. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::createWindow): Refactored to share more code between the dialog and non-dialog cases. 2009-08-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=25889 [GTK] scrollbar policy for main frame is not implementable Add empty implementation for new ChromeClient method. * WebCoreSupport/WebChromeClient.h: (WebChromeClient::scrollbarsModeDidChange): 2009-08-27 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Modify Release_Cairo target to build testapi using the Release_CFLite target so that the correct CoreFoundation (in this case, CFLite.dll) is linked. * WebKit.vcproj/WebKit.sln: 2009-08-26 Adam Barth <abarth@webkit.org> Reviewed by Oliver Hunt. Don't let local files access web URLs https://bugs.webkit.org/show_bug.cgi?id=28480 * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): 2009-08-26 David Levin <levin@chromium.org> Reviewed by Darin Fisher. ResourceRequestBase::*[Aa]llowHTTPCookies shouldn't mention http. https://bugs.webkit.org/show_bug.cgi?id=28735 * WebMutableURLRequest.cpp: (WebMutableURLRequest::setHTTPShouldHandleCookies): 2009-08-25 Eric Carlson <eric.carlson@apple.com> Reviewed by Oliver Hunt. <video> and <audio> controller should be accessible https://bugs.webkit.org/show_bug.cgi?id=28081 * WebCoreLocalizedStrings.cpp: (WebCore::localizedMediaControlElementString): (WebCore::localizedMediaControlElementHelpText): (WebCore::localizedMediaTimeDescription): New. 2009-08-25 Brent Fulgham <bfulgham@webkit.org> Build fix for Windows. Revise Debug_Cairo build target to build testapi, jsc, WinLauncher, DumpRenderTree, and TestNetscapeAPI using WinCairo debug build settings so they link against the proper libraries. * WebKit.vcproj/WebKit.sln: 2009-08-25 David Levin <levin@chromium.org> Reviewed by Adam Roben. PLATFORM(CFNETWORK) should be USE(CFNETWORK). https://bugs.webkit.org/show_bug.cgi?id=28713 Also, moved the #if header section after the other #includes. * WebError.cpp: (WebError::localizedDescription): 2009-08-24 Brent Fulgham <bfulgham@webkit.org> Reviewed by Steve Falkenburg. Revise CFLite Debug build to emit DLL's with _debug label. https://bugs.webkit.org/show_bug.cgi?id=28695. * WebKit.vcproj/WebKit.vcproj: Modify Debug_Cairo target to inherit from new debug_wincairo property sheet, instead of the current debug sheet. 2009-08-22 Adam Barth <abarth@webkit.org> Revert 47684. We're going to do this later once clients have had a chance to opt into the setting they like. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): 2009-08-22 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Don't let local files access web URLs https://bugs.webkit.org/show_bug.cgi?id=28480 * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): 2009-08-20 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Fix of <http://webkit.org/b/27850>. Panning by emulating Mouse Wheel Events breaks Google Maps. Switched to using RenderLayer::scrollByRecursively instead of emulating a mouse wheel, and switched to handling the hit testing in WebView from doing it as part of the mouse wheel event. One downside of this fix is that panning will not jump out of frames anymore (same behavior as pan-scrolling), but this is tracked in <http://webkit.org/b/28237>. * WebView.cpp: (WebView::gestureNotify): Added hit testing here to figure out the node the user started the gesture on. (WebView::gesture): Switched from emulating mouse wheel events for panning to calling RenderLayer::scrollByRecursively. * WebView.h: 2009-08-18 Brian Weinstein <bweinstein@apple.com> Reviewed by Oliver Hunt. Fix of <https://bugs.webkit.org/show_bug.cgi?id=28326> DRT on Windows doesn't support LayoutTestController::setQuota or print a callback on UIDelegate::exceededDatabaseQuota. Added a setQuota interface method to IWebDatabaseManager and implemented it. * Interfaces/IWebDatabaseManager.idl: * WebDatabaseManager.cpp: (WebDatabaseManager::setQuota): * WebDatabaseManager.h: 2009-08-18 Drew Wilson <atwilson@google.com> Unreviewed (build break). Added missing include for WebWorkersPrivate.h. * WebKitClassFactory.cpp: 2009-08-18 Peter Kasting <pkasting@google.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=28415 Set svn:eol-style CRLF on all .sln and .vcproj files that don't already have it. * WebKit.vcproj/InterfacesGenerated.vcproj: 2009-08-18 Drew Wilson <atwilson@google.com> Reviewed by Eric Seidel. Need to extend DumpRenderTree to expose number of worker threads https://bugs.webkit.org/show_bug.cgi?id=28292 Defined/implemented COM interfaces to expose WorkerThread::workerThreadCount() for DumpRenderTree. * ForEachCoClass.h: Added WebWorkersPrivate. * Interfaces/IWebWorkersPrivate.idl: Added. * Interfaces/WebKit.idl: Added WebWorkersPrivate. * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/WebKit.vcproj: * WebWorkersPrivate.cpp: Added. Implementation of the IWebWorkersPrivate COM interface, to expose workerThreadCount() for DumpRenderTree. (WebWorkersPrivate::QueryInterface): (WebWorkersPrivate::AddRef): (WebWorkersPrivate::Release): (WebWorkersPrivate::workerThreadCount): (WebWorkersPrivate::createInstance): (WebWorkersPrivate::WebWorkersPrivate): (WebWorkersPrivate::~WebWorkersPrivate): * WebWorkersPrivate.h: Added. 2009-08-17 Peter Kasting <pkasting@google.com> Reviewed by Steve Falkenburg. https://bugs.webkit.org/show_bug.cgi?id=27323 Only add Cygwin to the path when it isn't already there. This avoids causing problems for people who purposefully have non-Cygwin versions of executables like svn in front of the Cygwin ones in their paths. * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/InterfacesGenerated.vcproj: * WebKit.vcproj/WebKit.vcproj: * WebKit.vcproj/WebKitGUID.vcproj: 2009-08-17 Simon Fraser <simon.fraser@apple.com> Speculative fix for Windows build bustage. * DOMHTMLClasses.cpp: (DOMHTMLElement::idName): 2009-08-13 Jon Honeycutt <jhoneycutt@apple.com> Part of <rdar://problem/6218721> No MSAA focus events fired for Webkit nightly (20866) https://bugs.webkit.org/show_bug.cgi?id=20866 Reviewed by Oliver Hunt. * AccessibleBase.cpp: (AccessibleBase::getAccessibilityObjectForChild): If the child ID is negative, negate it and treat it as an AXID. 2009-08-12 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Fix of <rdar://6728361> Mouse wheel scrolling on a page with expanded drop down list detaches drop down. Added a check in mouseWheel to see if our focus is currently in a popup, if so, close the popup (matches other browser behavior). * WebView.cpp: (WebView::mouseWheel): 2009-08-12 Adam Roben <aroben@apple.com> Make WebPreferenceKeysPrivate.h available for client use Reviewed by Dave Hyatt. Fixes <http://webkit.org/b/28227>. * WebKit.vcproj/WebKit.vcproj: Copy WebPreferenceKeysPrivate.h to $WebKitOutputDir, just like we do for a few other headers. Also let VS reorder some XML attributes. * WebPreferenceKeysPrivate.h: Touched this file to force a build. 2009-08-11 Adam Roben <aroben@apple.com> Remove support for a window resizer within the WebView Starting with Safari 4, there is never a window resizer inside the WebView, so we no longer need to support that functionality. Fixes <http://webkit.org/b/28190> Remove support for a window resizer within the WebView Reviewed by Dave Hyatt. * Interfaces/IWebUIDelegatePrivate.idl: Replaced the delegate functions related to the window resizer with unused*() functions. We can't remove them entirely because we need to keep the vtable unchanged so new versions of WebKit will work with old versions of Safari (e.g., for nightlies and WebKit development). * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::windowResizerRect): Now always returns an empty rect. * WebView.cpp: (WebView::paint): (WebView::handleMouseEvent): * WebView.h: Removed window-resizer-related code. 2009-08-11 John Gregg <johnnyg@google.com> Reviewed by Maciej Stachowiak. Move the accessor for notifications presenter from WebUIDelegate to WebUIDelegate2 which extends it. When making this call from WebCoreSupport, check using QueryInterface before calling. https://bugs.webkit.org/show_bug.cgi?id=28198 * Interfaces/IWebUIDelegate.idl: * Interfaces/IWebUIDelegate2.idl: Added. * Interfaces/WebKit.idl: * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: (WebDesktopNotificationsDelegate::show): (WebDesktopNotificationsDelegate::cancel): (WebDesktopNotificationsDelegate::notificationObjectDestroyed): (WebDesktopNotificationsDelegate::requestPermission): (WebDesktopNotificationsDelegate::checkPermission): (WebDesktopNotificationsDelegate::hasNotificationDelegate): (WebDesktopNotificationsDelegate::notificationDelegate): * WebCoreSupport/WebDesktopNotificationsDelegate.h: 2009-08-11 Drew Wilson <atwilson@google.com> Reviewed by NOBODY (build break). Speculative Windows build fix - undo previous unnecessary change. * WebCoreSupport/WebDesktopNotificationsDelegate.h: 2009-08-11 Brian Weinstein <bweinstein@apple.com> Reviewed by Steve Falkenburg. Refactored MIMETypeforExtension to be a member of IWebViewPrivate instead of IWebView. * Interfaces/IWebView.idl: * Interfaces/IWebViewPrivate.idl: * WebView.cpp: (WebView::MIMETypeForExtension): * WebView.h: 2009-08-11 Drew Wilson <atwilson@google.com> Reviewed by NOBODY (build break) Speculative fix for windows build break. * WebKitSupport/WebDesktopNotificationsDelegate.h: WebCore/Notification*.h => WebCore/notifications/Notification*.h 2009-08-11 John Gregg <johnnyg@google.com> Reviewed by Maciej Stachowiak. Desktop Notifications API https://bugs.webkit.org/show_bug.cgi?id=25643 Adds test hooks for notification features to WebCoreSupport for use in DumpRenderTree. * Interfaces/IWebDesktopNotificationsDelegate.idl: Added. * Interfaces/IWebUIDelegate.idl: * Interfaces/WebKit.idl: * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::WebChromeClient): * WebCoreSupport/WebChromeClient.h: (WebChromeClient::notificationPresenter): * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: Added. (NotificationCOMWrapper::create): (NotificationCOMWrapper::NotificationCOMWrapper): (NotificationCOMWrapper::QueryInterface): (NotificationCOMWrapper::AddRef): (NotificationCOMWrapper::Release): (NotificationCOMWrapper::isHTML): (NotificationCOMWrapper::contentsURL): (NotificationCOMWrapper::iconURL): (NotificationCOMWrapper::title): (NotificationCOMWrapper::text): (NotificationCOMWrapper::notifyDisplay): (NotificationCOMWrapper::notifyError): (NotificationCOMWrapper::notifyClose): (WebDesktopNotificationsDelegate::WebDesktopNotificationsDelegate): (WebDesktopNotificationsDelegate::show): (WebDesktopNotificationsDelegate::cancel): (WebDesktopNotificationsDelegate::notificationObjectDestroyed): (WebDesktopNotificationsDelegate::requestPermission): (WebDesktopNotificationsDelegate::checkPermission): (WebDesktopNotificationsDelegate::notificationDelegate): * WebCoreSupport/WebDesktopNotificationsDelegate.h: Added. * WebCoreSupport/WebInspectorDelegate.h: (WebInspectorDelegate::desktopNotificationsDelegate): * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/WebKit.vcproj: 2009-08-11 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Fix of <rdar://5016504> SVG file cannot be dragged to webview, but can be opened via Open File. Added a new function to IWebView that gets the MIME type for a given extension from the MIMETypeRegistry. * Interfaces/IWebView.idl: * WebView.cpp: (WebView::MIMETypeForExtension): * WebView.h: 2009-08-11 Dmitry Titov <dimich@chromium.org> Reviewed by Adam Roben. Originally implemented by Glenn Wilson <gwilson@chromium.org>. Added support for overriding default preferences per-test. See https://bugs.webkit.org/show_bug.cgi?id=20534 * Interfaces/IWebPreferencesPrivate.idl: added new method setPreferenceForTest * WebPreferences.cpp: same. * WebPreferences.h: same. 2009-08-10 Dan Bernstein <mitz@apple.com> Reviewed by Darin Adler. Link drag images specify Lucida Grande on Windows and end up using Times New Roman <rdar://problem/7117835> * WebCoreSupport/WebDragClient.cpp: (dragLabelFont): Added a RenderingMode parameter and changed to use the same typeface as the Windows small caption font. (WebDragClient::createDragImageForLink): Changed to respect the page’s rendering mode. 2009-08-10 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. https://bugs.webkit.org/show_bug.cgi?id=28048. Move various WinCairo build settings into *.vsprops file. * WebKit.vcproj/WebKit.vcproj: Add new cURL.vsprops property sheet (which contains link settings for cURL and its dependencies), and remove the corresponding entries from the vcproj file. Remove png, jpeg, cairo library linking flags from vcproj, now that they are in the WinCairo.vsprops file. 2009-08-09 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> Reviewed by George Staikos. [WML] Deck access control is completly broken https://bugs.webkit.org/show_bug.cgi?id=27721 Synchronize WebFrameLoadType with FrameLoadType enum. Append 'WebFrameLoadTypeBackWMLDeckNotAccessible'. * Interfaces/IWebFramePrivate.idl: 2009-08-09 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> Reviewed by Maciej Stachowiak. FrameLoadType / WebFrameLoadType enums are out of sync https://bugs.webkit.org/show_bug.cgi?id=28132 Synchronize FrameLoadType <-> WebFrameLoadType enums (append missing 'WebFrameLoadTypeReloadFromOrigin' value) * Interfaces/IWebFramePrivate.idl: 2009-08-06 Adam Barth <abarth@webkit.org> Unreviewed revert. http://bugs.webkit.org/show_bug.cgi?id=27879 Revert 46877 because it broke GTK. * COMPropertyBag.h: 2009-08-06 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Adam Barth. Change Noncopyable inheriting to public http://bugs.webkit.org/show_bug.cgi?id=27879 Since Noncopyable is inherited from FastAllocBase, Noncopyable's inheriting has been changed to public. * COMPropertyBag.h: 2009-08-04 Alice Liu <alice.liu@apple.com> "Shift + Enter" should behave like "Enter" in editable fields. Affects backward search in find-in-page in Safari for Windows Reviewed by Jon Honeycutt. * WebView.cpp: Register shift+enter as InsertNewline command, similar to other modifier+Enter combinations. 2009-07-29 Jon Honeycutt <jhoneycutt@apple.com> Part of <rdar://problem/5698113> Safari shouldn't auto-activate plug-ins in background tabs (make Win consistent with Mac) https://bugs.webkit.org/show_bug.cgi?id=27855 Reviewed by Adam Roben and Anders Carlsson. * Interfaces/IWebViewPrivate.idl: Add setCanStartPlugins(). * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidFailToStartPlugin): Added; code moved from createPlugin(). Modified to obtain the plug-in's page URL, the plug-ins "plug-ins page" parameter value, and the plug-in's MIME type by calling getter functions on the passed PluginView. (WebFrameLoaderClient::createPlugin): If the plug-in status is not "success," call dispatchDidFailToStartPlugin(). * WebCoreSupport/WebFrameLoaderClient.h: Declare an override of dispatchDidFailToStartPlugin(). * WebView.cpp: (WebViewWndProc): Add a missing ) to a comment. (WebView::setCanStartPlugins): Call the Page's setCanStartPlugins() function. * WebView.h: 2009-07-30 Darin Adler <darin@apple.com> Reviewed by David Levin. Use checked casts for render tree https://bugs.webkit.org/show_bug.cgi?id=23522 * DOMHTMLClasses.cpp: (DOMHTMLInputElement::isUserEdited): (DOMHTMLTextAreaElement::isUserEdited): Use checked casts. 2009-07-31 Anders Carlsson <andersca@apple.com> Reviewed by Dan Bernstein. -Fix <rdar://problem/7104097> Make EmbeddedWidget::create return a PassRefPtr so it will have the correct ref count. * WebCoreSupport/EmbeddedWidget.cpp: (EmbeddedWidget::create): * WebCoreSupport/EmbeddedWidget.h: 2009-07-29 Brian Weinstein <bweinstein@apple.com> Was doing the build fix wrong, NotImplemented.h is in WebCore. * WebCoreSupport/WebInspectorClient.cpp: 2009-07-29 Brian Weinstein <bweinstein@apple.com> Windows build fix. * WebCoreSupport/WebInspectorClient.cpp: 2009-07-29 Kevin McCullough <kmccullough@apple.com> Reviewed by Darin Adler. Added foundation work to allow a testing infrastructure for the Web Inspector. * WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::inspectorWindowObjectCleared): Empty definition to let Windows compile but we should implement this at some point so that the tests can be run on Windows too. * WebCoreSupport/WebInspectorClient.h: 2009-07-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Steve Falkenburg. Add output directory for VS pre-build steps to enable out-of-tree builds https://bugs.webkit.org/show_bug.cgi?id=27700 The tmp.obj file is now placed in the intermediate build directory. * WebKit.vcproj/WebKit.vcproj: 2009-07-27 Brian Weinstein <bweinstein@apple.com> Build fix for Windows. * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): 2009-07-27 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=27735 Give a helpful name to JSLock constructor argument * WebCoreStatistics.cpp: (WebCoreStatistics::javaScriptObjectsCount): (WebCoreStatistics::javaScriptGlobalObjectsCount): (WebCoreStatistics::javaScriptProtectedObjectsCount): (WebCoreStatistics::javaScriptProtectedGlobalObjectsCount): (WebCoreStatistics::javaScriptProtectedObjectTypeCounts): * WebJavaScriptCollector.cpp: (WebJavaScriptCollector::objectCount): * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): 2009-07-25 Kwang Yul Seo <skyul@company100.net> Reviewed by Darin Adler. Windows build break due to warning C4819 https://bugs.webkit.org/show_bug.cgi?id=27416 Disable C4819 warning to fix build. * WebKit.vcproj/WebKit.vcproj: 2009-07-24 Brent Fulgham <bfulgham@webkit.org> Reviewed by Dave Hyatt. Clean up dependencies on Apple support libraries for non-Apple build. http://bugs.webkit.org/show_bug.cgi?id=27532. * DefaultDownloadDelegate.h: Conditionalize include of CFNetwork.h * WebDownload.h: Conditionalize include of CFNetwork.h * WebMutableURLRequest.cpp: Conditionalize include of CFNetwork.h 2009-07-24 Andrei Popescu <andreip@google.com> Reviewed by Anders Carlsson. ApplicationCache should have size limit https://bugs.webkit.org/show_bug.cgi?id=22700 * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::reachedMaxAppCacheSize): Adds empty implementation of the reachedMaxAppCacheSize callback. * WebCoreSupport/WebChromeClient.h: 2009-07-23 Brady Eidson <beidson@apple.com> Reviewed by Geoff Garen. WebFrameLoaderClient on Windows doesn't gracefully handle a null request returned from willSendRequest. https://bugs.webkit.org/show_bug.cgi?id=27595 * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchWillSendRequest): 2009-07-22 Takeshi Yoshino <tyoshino@google.com> Reviewed by Darin Adler. VC++ 2005 Express failed to build WebKit due to raw UTF-8 string in WebKit/win/WebCoreLocalizedStrings.cpp https://bugs.webkit.org/show_bug.cgi?id=26375 Replace a multiplication sign (U+00D7) encoded in UTF-8 (0xC3 0x97) in WebCoreLocalizedStrings.cpp with hex escape sequences. VC2005 failed to build due to this raw UTF-8 data in source code. Here's the warning message ( treated as an error and stopped build). WebCoreLocalizedStrings.cpp : warning C4819: The file contains a character that cannot be represented in the current code page (932). Save the file in Unicode format to prevent data loss A change on WebKitTools/Scripts/extract-localizable-strings is attached to this change not to break localized string generation process. * WebCoreLocalizedStrings.cpp: (WebCore::imageTitle): 2009-07-21 Roland Steiner <rolandsteiner@google.com> Reviewed by David Levin. Add ENABLE_RUBY to list of build options https://bugs.webkit.org/show_bug.cgi?id=27324 * WebKit.vcproj/WebKit.vcproj: Added flag ENABLE_RUBY. 2009-07-20 Peter Kasting <pkasting@google.com> Reviewed by Mark Rowe. https://bugs.webkit.org/show_bug.cgi?id=27468 Back out r46060, which caused problems for some Apple developers. * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/InterfacesGenerated.vcproj: * WebKit.vcproj/WebKit.vcproj: * WebKit.vcproj/WebKitGUID.vcproj: 2009-07-17 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272) https://bugs.webkit.org/show_bug.cgi?id=14272 Implemented resizing of inspector window when it is in attached mode. Implemented setAttachedWindowHeight to set window sizes and redraw the inspector and the inspected web view, and used stored preferences in InspectorController.cpp to remember user's preferred height. * WebCoreSupport/WebInspectorClient.cpp: 2009-07-17 Peter Kasting <pkasting@google.com> Reviewed by Steve Falkenburg. https://bugs.webkit.org/show_bug.cgi?id=27323 Only add Cygwin to the path when it isn't already there. This avoids causing problems for people who purposefully have non-Cygwin versions of executables like svn in front of the Cygwin ones in their paths. * WebKit.vcproj/Interfaces.vcproj: * WebKit.vcproj/InterfacesGenerated.vcproj: * WebKit.vcproj/WebKit.vcproj: * WebKit.vcproj/WebKitGUID.vcproj: 2009-07-16 Fumitoshi Ukai <ukai@chromium.org> Reviewed by David Levin. Add --web-sockets flag and ENABLE_WEB_SOCKETS define. https://bugs.webkit.org/show_bug.cgi?id=27206 Add ENABLE_WEB_SOCKETS * WebKit.vcproj/WebKit.vcproj: add ENABLE_WEB_SOCKETS 2009-07-16 Xiaomei Ji <xji@chromium.org> Reviewed by Darin Adler. Fix tooltip does not get its directionality from its element's directionality. https://bugs.webkit.org/show_bug.cgi?id=24187 Per mitz's suggestion in comment #6, while getting the plain-text title, we also get the directionality of the title. How to handle the directionality is up to clients. Clients could ignore it, or use attribute or unicode control characters to display the title as what they want. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet). * WebCoreSupport/WebChromeClient.h: Add directionality as 2nd parameter to setToolTip(). * WebElementPropertyBag.cpp: (WebElementPropertyBag::Read): Change call of spellingToolTip() and title() due to signature change. 2009-07-15 Darin Adler <darin@apple.com> Reviewed by Sam Weinig. Renamed parseURL to deprecatedParseURL. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createPlugin): Renamed. 2009-07-14 Steve Falkenburg <sfalken@apple.com> Reorganize JavaScriptCore headers into: API: include/JavaScriptCore/ Private: include/private/JavaScriptCore/ Reviewed by Darin Adler. * WebKit.vcproj/WebKit.vcproj: 2009-07-14 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. Change all Noncopyable inheriting visibility to public. https://bugs.webkit.org/show_bug.cgi?id=27225 Change all Noncopyable inheriting visibility to public because it is needed to the custom allocation framework (bug #20422). * COMEnumVariant.h: * WebDatabaseManager.cpp: * WebInspector.h: * WebLocalizableStrings.cpp: 2009-07-13 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Refactor WebFrame::spoolPages for easier sharing with Windows Cairo. https://bugs.webkit.org/show_bug.cgi?id=27240. * WebFrame.cpp: (WebFrame::printHeader): New shared method to print the header. (WebFrame::printFooter): New shared method to print the footer. (WebFrame::spoolPage): New conditionally-compiled method to print a page. (WebFrame::spoolPages): Revised to call the platform-specific spoolPage for each page. * WebFrame.h: Add new method prototypes. 2009-07-13 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Add new configuration flag for redistributable Windows build. https://bugs.webkit.org/show_bug.cgi=27087 * WebKit.vcproj/WebKit.vcproj: Add new WinCairo.vsprops to Debug_Cairo and Release_Cairo targets. 2009-07-12 Brent Fulgham <bfulgham@gmail.com> Speculative Windows build fix after http://trac.webkit.org/changeset/45786. * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::addMessageToConsole): 2009-07-10 Adam Barth <abarth@webkit.org> Reviewed by Sam Weinig with the power of Grayskull. Enable XSSAuditor by default. * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): 2009-07-09 Drew Wilson <atwilson@google.com> Reviewed by Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=26903 Turned on CHANNEL_MESSAGING by default because the MessageChannel API can now be implemented for Web Workers and is reasonably stable. * WebKit.vcproj/WebKit.vcproj: 2009-07-09 Brian Weinstein <bweinstein@apple.com> Reviewed by Alice Liu. Fix of <rdar://5712929> Add preferences key to remember if the Inspector was docked (14271) https://bugs.webkit.org/show_bug.cgi?id=27140 Added a preference key to remember whether the user prefers the inspector detached or attached. * WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::showWindow): Pass both parameters into setWindowVisible (WebInspectorClient::closeWindow): Ditto (WebInspectorClient::attachWindow): Set preference to attached windows here (WebInspectorClient::detachWindow): Set preference to detached windows here (WebInspectorClient::showWindowWithoutNotifications): Read preference for attached vs. detached (WebInspectorClient::onClose): Pass both parameters into setWindowVisible 2009-07-09 Alexey Proskuryakov <ap@webkit.org> Reviewed by Oliver Hunt. <rdar://problem/6921671> Visit count shouldn't be incremented by redirects. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::updateGlobalHistory): Do not increase visit count if there is a redirect source. As a result, only pages that were explicitly visited by the user (by typing a URL, choosing one from bookmarks, or clicking a link) will be counted. * Interfaces/IWebHistoryItemPrivate.idl: * WebHistory.cpp: (WebHistory::visitedURL): * WebHistory.h: * WebHistoryItem.cpp: (WebHistoryItem::visitedWithTitle): * WebHistoryItem.h: Marshal this new argument all the way down to WebCore. 2009-07-09 Beth Dakin and Jon Honeycutt <bdakin@apple.com> Reviewed by Dave Hyatt. Make Widget RefCounted to fix: <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs at WebCore::Widget::afterMouseDown() after clicking To Do's close box <rdar://problem/6978804> WER #16: Repro Access Violation in WebCore::PluginView::bindingInstance (1310178023) -and- <rdar://problem/6991251> WER #13: Crash in WebKit! WebCore::PluginView::performRequest+203 (1311461169) * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createPlugin): * WebCoreSupport/WebFrameLoaderClient.h: * WebFrame.cpp: (WebFrame::createJavaAppletWidget): * WebFrame.h: 2009-07-09 Sam Weinig <sam@webkit.org> Reviewed by Steve Falkenburg. Roll out r43848. The quirk is no longer necessary. * WebView.cpp: (WebView::userAgentForKURL): 2009-07-07 Ada Chan <adachan@apple.com> Reviewed by Dave Hyatt. Missed a call to FocusController::setFocused(true) when handling WM_SETFOCUS in WebView. https://bugs.webkit.org/show_bug.cgi?id=27057 * WebView.cpp: (WebViewWndProc): 2009-07-02 Erik Arvidsson <arv@chromium.org> Reviewed by Adam Roben. [Win] HTML5 Drag and drop, dragend is not fired when pressing Esc https://bugs.webkit.org/show_bug.cgi?id=26699 * WebDropSource.cpp: (WebDropSource::QueryContinueDrag): 2009-07-02 Oliver Hunt <oliver@apple.com> Reviewed by Anders Carlsson. <rdar://problem/6939593> REGRESSION (r37793): Hitting back button on Google often gives non-interactive Google page (26670) <https://bugs.webkit.org/show_bug.cgi?id=26670> Make windows loader client match mac behaviour more closely. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::forceLayout): 2009-06-30 Brent Fulgham <bfulgham@gmail.com> Reviewed by Adam Roben. Build DumpRenderTree under Cairo. https://bugs.webkit.org/show_bug.cgi?id=26457 * WebKit.vcproj/WebKit.sln: Add Cairo targets to the DumpRenderTree build, and use the in the Debug_Cairo and Release_Cairo targets. 2009-07-02 Eric Carlson <eric.carlson@apple.com> Fix Windows build by including missing localized string methods. * WebCoreLocalizedStrings.cpp: (WebCore::mediaElementLoadingStateText): (WebCore::mediaElementLiveBroadcastStateText): 2009-07-01 David Hyatt <hyatt@apple.com> Reviewed by Tim Hatcher. <rdar://problem/6998524> REGRESSION (r44474): Form text field has focus ring, looks focused, even though the field is not actually focused for keyboard input Add the concept of whether or not the Page is focused by adding a boolean to the focusController. This allows the focused frame and focused node to both be cached and changed programmatically without causing errors when the Page doesn't have focus. * WebView.cpp: (WebViewWndProc): 2009-06-29 David Hyatt <hyatt@apple.com> Fix Windows bustage. Missed two configurations for enabling DATAGRID. * WebKit.vcproj/WebKit.vcproj: 2009-06-29 Jessie Berlin <jberlin@apple.com> Reviewed by Adam Roben. Fix the windows build. * WebCoreSupport/WebContextMenuClient.cpp: (WebContextMenuClient::isSpeaking): * WebCoreSupport/WebContextMenuClient.h: 2009-06-29 David Hyatt <hyatt@apple.com> Reviewed by Adam Roben. Make sure to patch all configurations to have datagrid enabled. * WebKit.vcproj/WebKit.vcproj: 2009-06-29 David Hyatt <hyatt@apple.com> Reviewed by Adam Roben. Put <datagrid> behind an ifdef. * WebKit.vcproj/WebKit.vcproj: 2009-06-26 Brian Weinstein <bweinstein@apple.com> Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=26695 Added hit testing on scrollbars, so if you start a gesture over a scrollbar, it isn't counted, and lets the user drag the scrollbar itself instead of a panning gesture. Also cleaned up code in gesture. * WebView.cpp: (WebView::gestureNotify): (WebView::gesture): 2009-06-26 Jeremy Orlow <jorlow@chromium.org> Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=26767 Fix a build break due to LocalStorage.h being included in WebKitDLL.cpp despite it being deleted from the repo by the following patch/commit: https://bugs.webkit.org/show_bug.cgi?id=26732 http://trac.webkit.org/changeset/45290 * WebKitDLL.cpp: 2009-06-26 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Eric Seidel. Bug 20303: [Qt] Key events are not working in frames. Move the scroll handling code to EventHandler so that other ports can share the functionality. * WebView.cpp: (WebView::keyDown): (EnumTextMatches::QueryInterface): 2009-06-23 Anders Carlsson <andersca@apple.com> Reviewed by Darin Adler. WebKit side of <rdar://problem/6946094>. * Interfaces/IWebUIDelegate.idl: Add a newPasteboard out parameter to willPerformDragSourceAction. * WebCoreSupport/WebDragClient.cpp: (WebDragClient::willPerformDragSourceAction): Implement this. If the client returns a new pasteboard, use it for the drag. * WebCoreSupport/WebInspectorDelegate.h: (WebInspectorDelegate::willPerformDragSourceAction): Add the new parameter. 2009-06-20 Darin Adler <darin@apple.com> Reviewed by Sam Weinig. <rdar://problem/6964221> Need more processing of pluginspage. * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily. 2009-06-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Steve Falkenburg. https://bugs.webkit.org/show_bug.cgi?id=26494 Bug 26494: RenderTheme::themeForPage reads from Settings before it has been initialized by WebKit Get the shouldPaintNativeControls preference and update the settings before initializing the page, as the page depends on it after the themeForPage change. * WebView.cpp: (WebView::initWithFrame): 2009-06-19 Brian Weinstein <bweinstein@apple.com> Reviewed by Steve Falkenburg. https://bugs.webkit.org/show_bug.cgi?id=26488 No Support for Single Finger or Two Finger Panning in Windows 7 Added the code necessary for single finger and two-finger panning with window bounce. We now register for WM_GESTURENOTIFY and WM_GESTURE messages, and interpret the panning command. Also, added WindowsTouch.h which contains structs and #defines from the Windows 7 SDK. * WebKit.vcproj/WebKit.vcproj: * WebView.cpp: (WebView::gestureNotify): Checks if we are in a pannable region - IE: Not in the scrollbar (WebView::gesture): Handles the Panning gesture, creating the WheelEvent (WebViewWndProc): Added cases for WM_GESTURE and WM_GESTURENOTIFY * WebView.h: * WindowsTouch.h: Added. 2009-06-18 Adam Barth <abarth@webkit.org> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26199 Added preference to enable the XSSAuditor. * Interfaces/IWebPreferencesPrivate.idl: * WebPreferenceKeysPrivate.h: * WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::isXSSAuditorEnabled): (WebPreferences::setXSSAuditorEnabled): * WebPreferences.h: * WebView.cpp: (WebView::notifyPreferencesChanged): 2009-06-18 Brent Fulgham <bfulgham@gmail.com> Reviewed by Dave Levin. Remove some boilerplate using the BitmapInfo struct. https://bugs.webkit.org/show_bug.cgi?id=26425 * WebFrame.cpp: (WebFrame::spoolPages): * WebIconDatabase.cpp: (createDIB): * WebKit.vcproj/WebKit.sln: * WebNodeHighlight.cpp: (WebNodeHighlight::update): * WebView.cpp: (WebView::ensureBackingStore): 2009-06-17 Steve Falkenburg <sfalken@apple.com> Consolidate WebKit COM interfaces. Moved IID from the highest numbered COM interface to the first interface and combined all methods. Numbered interfaces can be combined since the latest shipping Safari 4 supports the latest interfaces. Reviewed by Adam Roben. * Interfaces/IWebFrameLoadDelegate.idl: * Interfaces/IWebFrameLoadDelegatePrivate.idl: * Interfaces/IWebResourceLoadDelegatePrivate.idl: * Interfaces/IWebUIDelegate.idl: * Interfaces/IWebUIDelegatePrivate.idl: * Interfaces/WebKit.idl: * WebCoreSupport/WebChromeClient.cpp: * WebCoreSupport/WebChromeClient.h: * WebCoreSupport/WebContextMenuClient.cpp: * WebCoreSupport/WebFrameLoaderClient.cpp: * WebCoreSupport/WebInspectorDelegate.h: * WebFrame.cpp: * WebView.cpp: 2009-06-16 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Adam Roben. Create a different RenderTheme per page, so that RenderTheme has access to page specific theming. This is needed for the Qt port, as Qt supports setting the theme (style) per widget. This change was suggested and discussed with Dave Hyatt. More detailed: 1) Create a theme per page or one global one, depending on the needs of the platform. 2) Add an accesser to the theme from RenderObject. 3) Change all uses of the theming to access the theme through RenderObject, using the global default theme as fallback, when the document of RenderObject has no page. When we don't have access to a RenderObject, use the default theme. 4) Modify all RenderTheme platform implementations to work with the above changes, still creating only one global theme. * WebView.cpp: (WebViewWndProc): Get the theme from the associated page. 2009-06-16 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Switch Control+Mousewheel Zooming definitions to match other browsers on Windows. Control+Mousewheel-Down now zooms out, Control+Mousewheel-Up now zooms in. https://bugs.webkit.org/show_bug.cgi?id=25875. <rdar://problem/6903976> * WebView.cpp: (WebView::mouseWheel): 2009-06-16 Brent Fulgham <bfulgham@gmail.com> Reviewed by Darin Adler. Use consistent Windows GUID Comparison Functions. https://bugs.webkit.org/show_bug.cgi?id=26427. * WebView.cpp: (EnumTextMatches::QueryInterface): == Rolled over to ChangeLog-2009-06-16 ==