diff options
Diffstat (limited to 'WebKit/win')
141 files changed, 11794 insertions, 2825 deletions
diff --git a/WebKit/win/AccessibleBase.h b/WebKit/win/AccessibleBase.h index ca1703f..df2d927 100644 --- a/WebKit/win/AccessibleBase.h +++ b/WebKit/win/AccessibleBase.h @@ -100,8 +100,8 @@ protected: AccessibleBase(WebCore::AccessibilityObject*); virtual ~AccessibleBase(); - virtual WebCore::String name() const; - virtual WebCore::String value() const; + virtual WTF::String name() const; + virtual WTF::String value() const; virtual long role() const; HRESULT getAccessibilityObjectForChild(VARIANT vChild, WebCore::AccessibilityObject*&) const; diff --git a/WebKit/win/AccessibleImage.h b/WebKit/win/AccessibleImage.h index 0c111e2..e987795 100644 --- a/WebKit/win/AccessibleImage.h +++ b/WebKit/win/AccessibleImage.h @@ -35,7 +35,7 @@ public: virtual ~AccessibleImage() { } private: - virtual WebCore::String name() const; + virtual WTF::String name() const; }; #endif // AccessibleImage_h diff --git a/WebKit/win/COMPropertyBag.h b/WebKit/win/COMPropertyBag.h index ae4a7b7..610c367 100644 --- a/WebKit/win/COMPropertyBag.h +++ b/WebKit/win/COMPropertyBag.h @@ -34,7 +34,7 @@ #include "COMVariantSetter.h"
-template<typename ValueType, typename KeyType = typename WebCore::String, typename HashType = typename WebCore::StringHash>
+template<typename ValueType, typename KeyType = typename WTF::String, typename HashType = typename WTF::StringHash>
class COMPropertyBag : public IPropertyBag, public IPropertyBag2, Noncopyable {
public:
typedef HashMap<KeyType, ValueType, HashType> HashMapType;
diff --git a/WebKit/win/COMVariantSetter.h b/WebKit/win/COMVariantSetter.h index 22c20e4..feb233c 100644 --- a/WebKit/win/COMVariantSetter.h +++ b/WebKit/win/COMVariantSetter.h @@ -29,10 +29,7 @@ #include <WebCore/BString.h>
#include <WebCore/COMPtr.h>
#include <wtf/Assertions.h>
-
-namespace WebCore {
- class String;
-}
+#include <wtf/Forward.h>
template<typename T> struct COMVariantSetter {};
@@ -44,11 +41,11 @@ template<typename T> struct COMVariantSetterBase }
};
-template<> struct COMVariantSetter<WebCore::String> : COMVariantSetterBase<WebCore::String>
+template<> struct COMVariantSetter<WTF::String> : COMVariantSetterBase<WTF::String>
{
static const VARENUM VariantType = VT_BSTR;
- static void setVariant(VARIANT* variant, const WebCore::String& value)
+ static void setVariant(VARIANT* variant, const WTF::String& value)
{
ASSERT(V_VT(variant) == VT_EMPTY);
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog index feb22a1..9f6f837 100644 --- a/WebKit/win/ChangeLog +++ b/WebKit/win/ChangeLog @@ -1,3 +1,4042 @@ +2010-11-22 Adam Roben <aroben@apple.com> + + Use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops files + + Apple's Windows build allows placing header files and import libraries for WebKit's + dependencies (CoreGraphics, CFNetwork, SQLite, etc.) outside the source tree via the + $WebKitLibrariesDir environment variable. This is both required for production builds and + convenient for Apple-internal developer builds. Apple's production builds also require that + WebKit's shared .vsprops files be accessed relative to $WebKitLibrariesDir. In production + builds, the files are copied into that directory tree by the + WebKitLibraries/win/tools/WinTools.make file. In Apple-internal developer builds, the + copying is done by + JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make. + + This .vsprops copying is problematic in one very important case: when a developer updates + their source tree and then tries to build. Visual Studio only reads .vsprops files when a + project is first loaded. So, when Visual Studio is first opened after the .vsprops files are + updated, it reads in the old files that were already residing in $WebKitLibrariesDir. When a + build is started, JavaScriptCoreGenerated.make copies the new .vsprops files into + $WebKitLibrariesDir, but Visual Studio will not pick up the changes. The rest of the build + will proceed with out-of-date .vsprops files, which will likely result in a build failure. + + To fix this, we now use normal relative paths to access the .vsprops files in the source + tree rather than in $WebKitLibrariesDir, but prefix those paths with a new environment + variable, $WebKitVSPropsRedirectionDir. In developer builds, this environment variable is + unset, so the normal relative paths are used to read the .vsprops files out of the source + tree directly. In production builds, this environment variable is set to a fake directory + that will cause the .vsprops files in $WebKitLibrariesDir to be found when the relative path + is resolved. + + For example, JavaScriptCore.vcproj uses this path for FeatureDefines.vsprops: + + $(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops + + In developer builds, where $WebKitVSPropsRedirectionDir is unset, this will point to the + files in WebKitLibraries\win\tools\vsprops in the source tree. In production builds, + JavaScriptCore.make sets $WebKitVSPropsRedirectionDir to + "$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\", so the full path for + FeatureDefines.vsprops becomes: + + $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops + + which resolves to: + + $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops + + (We rely on the fact that Windows doesn't care whether the directories "1", "2", and "3" + actually exist since they are matched by an equal number of ".." path components.) + + Note that Visual Studio still won't pick up changes made to .vsprops files while Visual + Studio is open, but that problem hasn't seemed to cause developers many headaches so far. + + Fixes <http://webkit.org/b/49181> Windows build fails mysteriously when .vsprops files are + updated + + Reviewed by Dave Hyatt. + + * WebKit.vcproj/WebKit.make: Set $WebKitVSPropsRedirectionDir so that production builds can + find the .vsprops files. + + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/WebKitGUID.vcproj: + Changed to use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops + files. + +2010-11-19 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Add Debug_Cairo_CFLite and Release_Cairo_CFLite configurations for all vcproj files + https://bugs.webkit.org/show_bug.cgi?id=49819 + + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/WebKit.sln: + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/WebKitGUID.vcproj: + +2010-11-19 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Darin Adler. + + Normalize Cairo/CFLite project/solution configuration names + https://bugs.webkit.org/show_bug.cgi?id=49818 + + * WebKit.vcproj/WebKit.sln: + * WebKit.vcproj/WebKit.vcproj: + +2010-11-18 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Windows vcproj configuration names should be normalized across projects + https://bugs.webkit.org/show_bug.cgi?id=49776 + + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/WebKit.sln: + +2010-11-18 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Remove leftover Windows Debug_Internal configurations + https://bugs.webkit.org/show_bug.cgi?id=49758 + + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/WebKitGUID.vcproj: + +2010-11-18 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Debug_Internal Windows configuration is unnecessary, should be removed + https://bugs.webkit.org/show_bug.cgi?id=49753 + + * WebKitPrefix.h: + +2010-11-17 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + WebKit Interfaces project should use vsprops file for common build settings + https://bugs.webkit.org/show_bug.cgi?id=49713 + + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/InterfacesCommon.vsprops: Added. + +2010-11-16 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Disable LTCG for Windows Release builds. Add new Release_LTCG configuration. + https://bugs.webkit.org/show_bug.cgi?id=49632 + + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/WebKit.make: + * WebKit.vcproj/WebKit.sln: + * WebKit.vcproj/WebKit.submit.sln: + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/WebKitGUID.vcproj: + +2010-11-16 Dave Hyatt <hyatt@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=11004 + + font-size:0 is ignored. Remove the minimum font size of 1 in CSSStyleSelector. + Change the pref value for minimum font size from 1 to 0. Make sure to never use the NSFont's size, + since it doesn't honor a size of 0. Instead pass the size in to the FontPlatformData(NSFont*) version + of the constructor rather than using [NSFont pointSize]. + + https://bugs.webkit.org/show_bug.cgi?id=49582 + + Negative leading is not handled correctly. There are two bugs here. The first is that + maxAscent and maxDescent can be negative, so we need a notion of whether or not we have + set them before so that we can allow them to be < 0. + + The second issue is that we should understand where fonts will end up relative to + our baseline (excluding line height), and only allow those boxes to impact ascent and + descent if the actual font box (without factoring in line height) is above or below the + root line box baseline. + + Added fast/css/negative-leading.html + + These two bug fixes have to land together to keep the Acid 3 test rendering correctly. + + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + +2010-11-16 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + Use vsprops files for common settings in Windows WebKit + https://bugs.webkit.org/show_bug.cgi?id=49622 + + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/WebKitCommon.vsprops: Added. + +2010-11-16 Steve Falkenburg <sfalken@apple.com> + + Rubber stamped by Adam Roben. + + Remove unnecessary def file, remove outdated def files from vcproj. + + * WebKit.vcproj/WebKit.vcproj: + * WebKit.vcproj/WebKit_debug.def: Removed. + +2010-11-12 John Knottenbelt <jknotten@chromium.org> + + Reviewed by Steve Block. + + Rename GeolocationControllerClient to GeolocationClient. + https://bugs.webkit.org/show_bug.cgi?id=49259 + + * WebCoreSupport/WebGeolocationClient.cpp: Renamed from WebKit/win/WebCoreSupport/WebGeolocationControllerClient.cpp. + (WebGeolocationClient::WebGeolocationClient): + (WebGeolocationClient::geolocationDestroyed): + (WebGeolocationClient::startUpdating): + (WebGeolocationClient::stopUpdating): + (WebGeolocationClient::lastPosition): + * WebCoreSupport/WebGeolocationClient.h: Renamed from WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h. + (WebGeolocationClient::setEnableHighAccuracy): + * WebKit.vcproj/WebKit.vcproj: + * WebView.cpp: + (WebView::initWithFrame): + +2010-11-10 Csaba Osztrogonác <ossy@webkit.org> + + Reviewed by David Hyatt. + + HTML5 Ruby support should be mandatory feature + https://bugs.webkit.org/show_bug.cgi?id=49272 + + * WebKitPrefix.h: Touch it to avoid incremental build failure on Windows. + +2010-11-08 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * WebCoreSupport/WebChromeClient.h: Added namespace prefix. + +2010-11-08 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=48685 + Notify UI process about focused frame + + Added an empty implementation of the new ChromeClient method. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::focusedFrameChanged): + * WebCoreSupport/WebChromeClient.h: + +2010-11-07 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Rename Cache to MemoryCache + https://bugs.webkit.org/show_bug.cgi?id=49159 + + * WebCache.cpp: + (WebCache::statistics): + * WebFrame.cpp: + * WebView.cpp: + +2010-11-05 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Move resumeAnimations/suspendAnimations from Frame to AnimationController. + https://bugs.webkit.org/show_bug.cgi?id=49073 + + * WebFrame.cpp: + (WebFrame::suspendAnimations): + (WebFrame::resumeAnimations): + +2010-11-05 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Anders Carlsson. + + Assertion failure in PluginStream::~PluginStream when running userscripts/user-script-plugin-document.html + https://bugs.webkit.org/show_bug.cgi?id=48751 + <rdar://problem/8615536> + + Always call committedLoad in WebFrameLoaderClient::finishedLoading, even if we have a manual loader. We were + running into a case where we were trying to load an empty plugin document, which uses a manual loader, and + PluginStream::didFinishLoading was never being called. The stream was never being stopped, making us fire + an assert in the PluginStream destructor. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::finishedLoading): + +2010-11-05 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state + https://bugs.webkit.org/show_bug.cgi?id=46945 + + * WebFrame.cpp: + (WebFrame::suspendAnimations): + (WebFrame::resumeAnimations): + +2010-11-05 Patrick Gansterer <paroga@webkit.org> + + Reviewed by David Kilzer. + + Replace ARRAYSIZE with WTF_ARRAY_LENGTH + https://bugs.webkit.org/show_bug.cgi?id=48903 + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::exceededDatabaseQuota): + * WebKitDLL.cpp: + (DllGetClassObject): + * WebView.cpp: + (WebView::mouseWheel): + +2010-11-02 Daniel Bates <dbates@rim.com> + + Reviewed by Adam Barth. + + For unnamed frames, window.name returns a generated name + https://bugs.webkit.org/show_bug.cgi?id=6751 + + Part 1 of 2. + + Substitute FrameTree::uniqueName() for FrameTree::name() in the Apple Windows port. + + * WebFrame.cpp: + (WebFrame::name): + +2010-11-02 Brady Eidson <beidson@apple.com> + + Reviewed by Anders Carlsson. + + <rdar://problem/8346191> and https://bugs.webkit.org/show_bug.cgi?id=48868 + Implement IMutableWebRequest::setTimeoutInterval + + * WebMutableURLRequest.cpp: + (WebMutableURLRequest::setTimeoutInterval): + +2010-11-02 Daniel Bates <dbates@rim.com> + + Reviewed by Martin Robinson. + + Set frame name before appending it to the frame tree in the Apple Windows, + GTK, and EFL ports + https://bugs.webkit.org/show_bug.cgi?id=48806 + + Make the frame creation process in the Apple Windows-port consistent + with the Mac, Qt, and Haiku ports. In particular, set the name of + the new frame before it's appended to the frame tree. + + At this time we cannot test this change since it is being masked by + HTMLFrameElementBase::setName() <http://trac.webkit.org/browser/trunk/WebCore/html/HTMLFrameElementBase.cpp?rev=70976#L160>. + We'll be able to test this once we fix bug #6751. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::createFrame): + +2010-11-01 Jenn Braithwaite <jennb@chromium.org> + + Reviewed by Adam Roben. + + Windows: Update resource tracking when moving a frame between documents + https://bugs.webkit.org/show_bug.cgi?id=48364 + + * Interfaces/IWebResourceLoadDelegatePrivate2.idl:Added + Added removeIdentifierForRequest. + * Interfaces/WebKit.idl: + Added IWebResourceLoadDelegatePrivate2.idl. + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::transferLoadingResourceFromPage): + +2010-11-01 Brady Eidson <beidson@apple.com> + + Reviewed by Anders Carlsson. + + <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699 + Context menu support for WebKit 2. + + * WebCoreSupport/WebChromeClient.h: + (WebChromeClient::showContextMenu): + +2010-11-01 Adam Roben <aroben@apple.com> + + Cancel main resource loads after we hand them off to the media engine + + This is the Windows equivalent of r51104. Clearly this code should be + moved to a cross-platform location someday. + + Fixes <http://webkit.org/b/48531> <rdar://problem/8606635> Assertion + failure in DocumentLoader::commitData when loading a media document in + WebKit1 on Windows + + Reviewed by Dan Bernstein. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::committedLoad): Cancel the main resource load + after handing off the load to the media engine. This code originally + came from -[WebHTMLRepresentation receivedData:withDataSource:]. + + * WebFrame.cpp: + (WebFrame::shouldFallBack): Don't fall back when handing the resource + load off to the media engine or a plugin. Added error domain checking + so that we don't rely on error codes being unique. + +2010-10-29 Daniel Bates <dbates@rim.com> + + No review, rolling out 70971. + http://trac.webkit.org/changeset/70971 + https://bugs.webkit.org/show_bug.cgi?id=6751 + + Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since + it caused layout test failures on all bots. In particular, the + child count in a generated frame name differs after this patch. We need + to look into this further. + + * WebFrame.cpp: + (WebFrame::name): + +2010-10-28 Antonio Gomes <agomes@rim.com> + + Reviewed by Ojan Vafai. + + Needs a "LinuxEditingBehavior", perhaps with a better name + https://bugs.webkit.org/show_bug.cgi?id=36627 + + Added the corresponding GTK+ setting to WebCore's EditingUnixBehavior: WebKitEditingUnixBehavior. + + * Interfaces/IWebPreferences.idl: + +2010-10-29 Daniel Bates <dbates@rim.com> + + Reviewed by Adam Barth. + + For unnamed frames, window.name returns a generated name + https://bugs.webkit.org/show_bug.cgi?id=6751 + + Modified Apple Windows-port to use FrameTree::uniqueName(). + + * WebFrame.cpp: + (WebFrame::name): + +2010-10-29 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Change BackForwardList clients to use BackForwardListImpl to prepare for further refactoring + https://bugs.webkit.org/show_bug.cgi?id=48574 + + * WebBackForwardList.cpp: + (backForwardListWrappers): + (WebBackForwardList::WebBackForwardList): + (WebBackForwardList::createInstance): + * WebBackForwardList.h: + * WebView.cpp: + (WebView::backForwardList): + Use BackForwardListImpl. + +2010-10-29 Adam Roben <aroben@apple.com> + + Windows build fix + + * WebKitPrefix.h: Touched to force a rebuild. + +2010-10-29 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=48576 + Let WebKit2 client know when a frame is a frameset + + Added a blank implementation of the new FrameLoaderClient method. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::dispatchDidBecomeFrameset): + +2010-10-26 Brent Fulgham <bfulgham@webkit.org> + + Unreviewed build fix. + + * WebView.cpp: Conditionalize includes for CFNetwork-specific + Cookie implementation. + * WebView.h: Conditionalize includes for ACCELERATED_COMPOSITION. + WinCairo doesn't use CoreAnimation. + +2010-10-26 Jenn Braithwaite <jennb@chromium.org> + + Reviewed by Dmitry Titov. + + Resource tracking failure when trying to move a frame between documents + https://bugs.webkit.org/show_bug.cgi?id=44713 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::transferLoadingResourceFromPage): + Empty method. + * WebCoreSupport/WebFrameLoaderClient.h: + +2010-10-25 Patrick Gansterer <paroga@webkit.org> + + Reviewed by David Kilzer. + + Replace _countof with WTF_ARRAY_LENGTH + https://bugs.webkit.org/show_bug.cgi?id=48229 + + * WebCoreSupport/WebContextMenuClient.cpp: + (isPreInspectElementTagSafari): + * WebView.cpp: + (WebView::interpretKeyEvent): + +2010-10-24 Dan Bernstein <mitz@apple.com> + + Build fix. + + * Interfaces/WebKit.idl: Touched. + +2010-10-24 Dan Bernstein <mitz@apple.com> + + Reviewed by Anders Carlsson. + + Expose HitTestResult::absoluteMediaURL() via WebKit API + https://bugs.webkit.org/show_bug.cgi?id=48219 + + * Interfaces/IWebView.idl: Added WebElementMediaURLKey. + * WebElementPropertyBag.cpp: + (WebElementPropertyBag::Read): Map WebElementMediaURLKey to absoluteMediaURL(). + +2010-10-22 Andy Estes <aestes@apple.com> + + Fix the Windows build. + + * WebCookieManagerCFNet.cpp: Rename CookieStorageWin.h to CookieStorageCFNet.h. + * WebView.cpp: Ditto. + +2010-10-22 Jenn Braithwaite <jennb@chromium.org> + + Reviewed by Adam Roben. + + Windows client needs updating when live iframe element is moved between pages + https://bugs.webkit.org/show_bug.cgi?id=46915 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::didTransferChildFrameToNewDocument): + Update WebView in WebFrame to match that of the current page. + * WebFrame.cpp: + (WebFrame::setWebView): + Added. + * WebFrame.h: + +2010-10-22 Sam Weinig <sam@webkit.org> + + Fix windows build. + + * WebCoreSupport/WebChromeClient.h: + +2010-10-22 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + WebKit2 needs to pass the current event modifier flags when requesting a new window + https://bugs.webkit.org/show_bug.cgi?id=48140 + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::createWindow): + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::dispatchCreatePage): + * WebCoreSupport/WebFrameLoaderClient.h: + Add NavigationAction parameter. + +2010-10-21 MORITA Hajime <morrita@google.com> + + Unreviewed, touched it to fix the build. + + * Interfaces/WebKit.idl: + +2010-10-21 MORITA Hajime <morrita@google.com> + + Reviewed by Kent Tamura. + + [Win][DRT] should have LayoutTestController.hasSpellingMarker() + https://bugs.webkit.org/show_bug.cgi?id=47885 + + Added IWebFramePrivate::hasSpellingMarker() and impelmented it for + LayoutTestController. + + * Interfaces/IWebFramePrivate.idl: + * WebFrame.cpp: + (WebFrame::hasSpellingMarker): + * WebFrame.h: + +2010-10-20 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by David Levin. + + Repost the DatabaseTracker notifications to the main thread, if needed. + https://bugs.webkit.org/show_bug.cgi?id=40655 + + * WebDatabaseManager.cpp: + (DidModifyOriginData::dispatchToMainThread): + (DidModifyOriginData::DidModifyOriginData): + (DidModifyOriginData::dispatchDidModifyOriginOnMainThread): + (WebDatabaseManager::dispatchDidModifyOrigin): + (WebDatabaseManager::dispatchDidModifyDatabase): + +2010-10-20 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Merge ColorSpace and ImageColorSpace enums + https://bugs.webkit.org/show_bug.cgi?id=47922 + + Renamed ColorSpace enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB + to follow webkit style rules. + + * FullscreenVideoController.cpp: + (HUDButton::draw): + (HUDSlider::draw): + (FullscreenVideoController::draw): + * WebCoreSupport/WebDragClient.cpp: + (WebDragClient::createDragImageForLink): + * WebKitGraphics.cpp: + (WebDrawText): + +2010-10-18 Pavel Podivilov <podivilov@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: disable private browsing for inspector + https://bugs.webkit.org/show_bug.cgi?id=47827 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::openInspectorFrontend): + +2010-10-17 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + FrameLoader doesn't need an explicit userGesture parameter + https://bugs.webkit.org/show_bug.cgi?id=47777 + + Update for the new API. + + * WebCoreSupport/WebContextMenuClient.cpp: + (WebContextMenuClient::searchWithGoogle): + +2010-10-15 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Sam Weinig. + + REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request. + https://bugs.webkit.org/show_bug.cgi?id=47753 + <rdar://problem/8558242> + + VerQueryValue returns a null terminated string, but we need to strip off the null terminating character + when we turn it into a WebCore string, or else concatenation using this string will break. + + * WebView.cpp: + +2010-10-15 Jessie Berlin <jberlin@apple.com> + + Windows build fix. Unreviewed. + + * WebCoreSupport/WebInspectorClient.cpp: + Add a missing include. + +2010-10-15 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + Replace some String::format() usages by StringConcatenate in WebKit + https://bugs.webkit.org/show_bug.cgi?id=47714 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::updateWindowTitle): + * WebView.cpp: + (WebView::standardUserAgentWithApplicationName): + (osVersion): + +2010-10-14 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: inspector settings/properties/states management + should be extracted into separate class. + + We have a lot of flags/values in InspectorController. + Some flags are persisting into profile. + Others are part of inspector state for frontend. + All these flags should keep their values after navigation. + It'd be better to extract these flags/values into separate + class which will care about theirs lifetime. + + https://bugs.webkit.org/show_bug.cgi?id=47275 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::attachWindow): + (WebInspectorFrontendClient::detachWindow): + (WebInspectorFrontendClient::showWindowWithoutNotifications): + +2010-10-13 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=43987 + Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder + to construct their internal result string. Remove ScriptString (this is now + redundant). + + * WebCoreSupport/WebFrameLoaderClient.cpp: + +2010-10-12 Adam Roben <aroben@apple.com> + + Build TestWebKitAPI on Windows + + Fixes <http://webkit.org/b/47552> <rdar://problem/8541708> Make + TestWebKitAPI work on Windows + + Reviewed by Sam Weinig. + + * WebKit.vcproj/WebKit.sln: Added TestWebKitAPI and + TestWebKitAPIGenerated and made them build just after + WebKitTestRunner. + +2010-10-11 Shinichiro Hamaji <hamaji@chromium.org> + + Attempt to fix windows build failure. + + Remove WebIconFetcher from WebKit and IconFetcher from WebCore + https://bugs.webkit.org/show_bug.cgi?id=47523 + + * Interfaces/IWebFramePrivate.idl: s/unused1/unused2/ + * Interfaces/WebKit.idl: Touched. + * WebFrame.cpp: s/unused1/unused2/ + (WebFrame::unused2): + * WebFrame.h: s/unused1/unused2/ + +2010-10-11 Anders Carlsson <andersca@apple.com> + + Reviewed by Darin Adler. + + Remove WebIconFetcher from WebKit and IconFetcher from WebCore + https://bugs.webkit.org/show_bug.cgi?id=47523 + + Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses. + + * Interfaces/IWebFramePrivate.idl: + * Interfaces/IWebIconFetcher.idl: Removed. + * Interfaces/WebKit.idl: + * WebFrame.cpp: + (WebFrame::unused1): + * WebFrame.h: + * WebIconFetcher.cpp: Removed. + * WebIconFetcher.h: Removed. + * WebKit.vcproj/Interfaces.vcproj: + * WebKit.vcproj/WebKit.vcproj: + +2010-10-11 Jessie Berlin <jberlin@apple.com> + + Reviewed by Darin Adler. + + Add Private API for creating a WebKit2 WebSerializedScriptValue from the internal + representation of a WebKit1 WebSerializedJSValue. + https://bugs.webkit.org/show_bug.cgi?id=47439 + + * Interfaces/IWebSerializedJSValuePrivate.idl: + Because it is taking a void** parameter, getInternalRepresentation must be declared [local]. + + * WebSerializedJSValue.cpp: + (WebSerializedJSValue::getInternalRepresentation): + * WebSerializedJSValue.h: + +2010-10-07 Jessie Berlin <jberlin@apple.com> + + Reviewed by Sam Weinig. + + Add Private API for creating a WebKit1 WebSerializedJSValue from the internal + representation of a WebKit2 WebSerializedScriptValue. + https://bugs.webkit.org/show_bug.cgi?id=47390 + + * Interfaces/WebKit.idl: + Generate IWebSerializedJSValuePrivate. + + * Interfaces/IWebSerializedJSValuePrivate.idl: Added. + Because it is taking a void* parameter, setInternalRepresentation must be declared [local]. + + * WebKit.vcproj/Interfaces.vcproj: + Add IWebSerializedJSValue.idl and IWebSerializedJSValuePrivate.idl. + + * WebSerializedJSValue.cpp: + (WebSerializedJSValue::QueryInterface): + Since there are now two interfaces that inherit from IUnknown, do not try to cast to + IUnknown* anymore. Cast to IWebSerializedJSValue* instead. + (WebSerializedJSValue::setInternalRepresentation): + Only set the internal representation if it hasn't already been set. + * WebSerializedJSValue.h: + +2010-10-04 Jon Honeycutt <jhoneycutt@apple.com> + + Prevent an assertion failure when trying to create a protection space + for file/data URLs. + + Reviewed by Sam Weinig. + + * WebURLProtectionSpace.cpp: + (WebURLProtectionSpace::initWithHost): + Remove the ASSERT_NOT_REACHED(). + +2010-10-05 Brent Fulgham <bfulgham@webkit.org> + + Unreviewed build correction. + + * WebKit.vcproj/WebKit.sln: Turn the QTMovieWin project + off for WinCairo release builds. Somehow this was + incorrectly turned on. + +2010-10-01 Mark Rowe <mrowe@apple.com> + + Build fix. + + Clear the executable bit from a number of source files. + + * WebView.cpp: + * WebView.h: + +2010-09-30 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Remove remaining calls to deprecatedParseURL + https://bugs.webkit.org/show_bug.cgi?id=26599 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::dispatchDidFailToStartPlugin): + Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL. + +2010-09-28 Jenn Braithwaite <jennb@chromium.org> + + Reviewed by Dmitry Titov. + + Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument. + https://bugs.webkit.org/show_bug.cgi?id=46663 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::didTransferChildFrameToNewDocument): + * WebCoreSupport/WebFrameLoaderClient.h: + +2010-09-27 Andrey Kosyakov <caseq@chromium.org> + + Unreviewed build fix (win; broken in r68371) + + * WebFrame.cpp: remove include <WebCore/ResourceHandleWin.h> + +2010-09-23 Matthew Delaney <mdelaney@apple.com> + + Reviewed by Simon Fraser. + + Reduce minimum DOMTimer interval + https://bugs.webkit.org/show_bug.cgi?id=45362 + + * WebView.cpp: + Updating set interval call to use Settings' static version inside + one time init block. + +2010-09-23 Nate Chapin <japhet@chromium.org> + + Unreviewed, build fix. + + Move hyperlinkAuditingEnabled to IWebPreferencesPrivate.idl + and touch WebKit.idl + + * Interfaces/IWebPreferences.idl: + * Interfaces/IWebPreferencesPrivate.idl: + * Interfaces/WebKit.idl: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-09-23 Nate Chapin <japhet@chromium.org> + + Unreviewed, build fix. + + Look for hyperlinkAuditingEnabled in the right set of preferences. + + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-09-23 Nate Chapin <japhet@chromium.org> + + Reviewed by Darin Fisher. + + Add hyperlink auditing settings (i.e., <a ping>). + https://bugs.webkit.org/show_bug.cgi?id=30458 + + * Interfaces/IWebPreferences.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::hyperlinkAuditingEnabled): + (WebPreferences::setHyperlinkAuditingEnabled): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-09-23 Matthew Delaney <mdelaney@apple.com> + + Reviewed by Adam Roben. + + Create one time initialization block for WebView's initWithFrame + https://bugs.webkit.org/show_bug.cgi?id=46307 + + * WebView.cpp: Added one time initialization block for webview code + that needs only be run once and not for each webview. This is just as + the mac version WebView.mm does. + +2010-09-22 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Martin Robinson. + + [WinCairo] Part 2: Update WebKitTestRunner and DumpRenderTree Build. + https://bugs.webkit.org/show_bug.cgi?id=46303. + + * WebKit.vcproj/WebKit.sln: Update overall Debug_Cairo and + Release_Cairo configurations to select appropriate build + targets for WebKitTestRunner and MiniBrowser. + +2010-09-22 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Martin Robinson. + + [WinCairo] Update WebKitTestRunner and DumpRenderTree Build.rt + https://bugs.webkit.org/show_bug.cgi?id=46303. + + * WebKit.vcproj/WebKit.sln: Update overall Debug_Cairo and + Release_Cairo configurations to select appropriate build + targets for InjectionBundle. + +2010-09-22 Balazs Kelemen <kb@inf.u-szeged.hu> + + Reviewed by Kenneth Rohde Christiansen. + + PluginStrategy should satisfy the needs of Qt + https://bugs.webkit.org/show_bug.cgi?id=45857 + No new functionality so no new tests. + + * WebCoreSupport/WebPlatformStrategies.cpp: + (WebPlatformStrategies::getPluginInfo): + * WebCoreSupport/WebPlatformStrategies.h: + +2010-09-20 Philippe Normand <pnormand@igalia.com> + + Reviewed by Eric Carlson. + + [GTK] enhanced context menu for media elements + https://bugs.webkit.org/show_bug.cgi?id=45021 + + New localized strings for the media element context-menu. + + * WebCoreSupport/WebPlatformStrategies.cpp: + (WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow): + (WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow): + (WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard): + (WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard): + (WebPlatformStrategies::contextMenuItemTagToggleMediaControls): + (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop): + (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen): + (WebPlatformStrategies::contextMenuItemTagMediaPlay): + (WebPlatformStrategies::contextMenuItemTagMediaPause): + (WebPlatformStrategies::contextMenuItemTagMediaMute): + * WebCoreSupport/WebPlatformStrategies.h: + +2010-09-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + REGRESSION (r60104): Zoom level is unexpectedly reset on page reload + https://bugs.webkit.org/show_bug.cgi?id=42863 + + * WebView.cpp: + (WebView::setZoomMultiplier): + Call functions on Frame instead of FrameView. + +2010-09-17 Matthew Delaney <mdelaney@apple.com> + + Reviewed by Simon Fraser. + + Reduce minimum DOMTimer interval + https://bugs.webkit.org/show_bug.cgi?id=45362 + + * WebView.cpp: Added in a call to set the mimimum allowed DOMTimer to 4ms. + +2010-09-17 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Chris Marrin. + + Remove scroll and clip layers for WKCACFLayerRenderer + https://bugs.webkit.org/show_bug.cgi?id=45922 + + WKCACFLayerRenderer no longer needs its own layers for managing scrolling + and clipping, because RenderLayerCompositor provides this functionality. + + * WebView.cpp: + (WebView::sizeChanged): Moved code that handles the WM_SIZE message + into this method. Use it to resize the layer renderer. + (WebView::WebViewWndProc): Call sizeChanged(). + (WebView::updateRootLayerContents): No need to call setScrollFrame() any more. + (WebView::layerRendererBecameVisible): Move this from the header (no need to be inline). + * WebView.h: + +2010-09-16 Darin Adler <darin@apple.com> + + Reviewed by Andreas Kling. + + Reduce use of HTMLInputElement::inputType so we can remove it later + https://bugs.webkit.org/show_bug.cgi?id=45903 + + * WebFrame.cpp: + (WebFrame::elementDoesAutoComplete): Use isPasswordField. + (WebFrame::elementIsPassword): Use isPasswordField. + +2010-09-14 Ada Chan <adachan@apple.com> + + Reviewed by Adam Roben. + + Add an IWebFramePrivate API to load string as plain text into the WebFrame. + https://bugs.webkit.org/show_bug.cgi?id=45782 + + * Interfaces/IWebFramePrivate.idl: + * Interfaces/WebKit.idl: Touch the file. + * WebFrame.cpp: + (WebFrame::loadPlainTextString): + * WebFrame.h: + +2010-09-13 Enrica Casucci <enrica@apple.com> + + Reviewed by Sam Weinig. + + Paste should be implemented in WebCore like Copy and Cut for Mac also. + https://bugs.webkit.org/show_bug.cgi?id=45494 + <rdar://problem/7660537> + + On the Mac platform, the implementation of the paste operation is all done + at the WebKit level. In order to support it on WebKit2 it is necessary to + refactor the code and move this functionality at the level of WebCore like + we already have on Windows. + The original code relies on some in AppKit functions that call back into + WebKit causing problems in WebKit2. All this functionality has been moved + at the level of the editor client where it can be dealt with appropriately. + + * WebFrame.cpp: + (WebFrame::canShowMIMETypeASHTML): Added. + +2010-09-11 Adam Barth <abarth@webkit.org> + + Reviewed by Sam Weinig. + + Make SecurityOrigin::canDisplay an instance function + https://bugs.webkit.org/show_bug.cgi?id=45219 + + * WebFrame.cpp: + (WebFrame::allowsFollowingLink): + +2010-09-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> + + Reviewed by Darin Adler. + + Add NetworkingContext to avoid layer violations + https://bugs.webkit.org/show_bug.cgi?id=42292 + + * WebCoreSupport/WebFrameNetworkingContext.cpp: + (WebFrameNetworkingContext::blockedError): + * WebCoreSupport/WebFrameNetworkingContext.h: + +2010-09-10 Jer Noble <jer.noble@apple.com> + + Reviewed by Simon Fraser. + + Movies with track or movie matrices don't display in <video> elements (Safari 5/Windows) + https://bugs.webkit.org/show_bug.cgi?id=45333 + + The rootChild layer must be set as flipped, otherwise transformed movies will appear + incorrectly rotated. + + * FullscreenVideoController.cpp: + (FullscreenVideoController::enterFullscreen): + +2010-09-10 Sam Weinig <sam@webkit.org> + + Reviewed by Darin Adler. + + Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom. + Precursor to <rdar://problem/7660657> + https://bugs.webkit.org/show_bug.cgi?id=45522 + + * WebFrame.cpp: + * WebFrame.h: + Remove dead code. + + * WebView.cpp: + (WebView::WebView): + (WebView::setZoomMultiplier): + (WebView::zoomMultiplier): + (WebView::canMakeTextLarger): + (WebView::makeTextLarger): + (WebView::canMakeTextSmaller): + (WebView::makeTextSmaller): + (WebView::notifyPreferencesChanged): + * WebView.h: + Move tracking of text only zoom here from WebCore. + +2010-09-10 Brian Weinstein <bweinstein@apple.com> + + Windows Build Fix. Fix some fallout from r67238, currentForm is now off of + SelectionController instead of frame. Also fix a style issue. + + * WebFrame.cpp: + (WebFrame::currentForm): + +2010-09-10 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Fisher. + + Move code from WebKit-layer to DocumentLoader + https://bugs.webkit.org/show_bug.cgi?id=45569 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::committedLoad): + * WebCoreSupport/WebFrameLoaderClient.h: + +2010-09-09 Darin Adler <darin@apple.com> + + Reviewed by Adam Barth. + + Move functions from Frame to SelectionController as planned + https://bugs.webkit.org/show_bug.cgi?id=45508 + + * WebView.cpp: + (WebView::selectionRect): + (WebView::centerSelectionInVisibleArea): + Call functions on selection(). + +2010-09-10 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Main resource bytes shouldn't bounce through FrameLoader + https://bugs.webkit.org/show_bug.cgi?id=45496 + + Now return the bytes to the DocumentLoader. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::receivedData): + +2010-09-09 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Adam Roben. + + Scrollbars fail to render in composited iframes. + https://bugs.webkit.org/show_bug.cgi?id=45335 + + Use LocalWindowsContext when painting scrollbars. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::paintCustomScrollbar): + (WebChromeClient::paintCustomScrollCorner): + +2010-09-08 Darin Adler <darin@apple.com> + + Reviewed by Adam Barth. + + Move functions from Frame to Editor as planned + https://bugs.webkit.org/show_bug.cgi?id=45218 + + * WebCoreSupport/WebContextMenuClient.cpp: + (WebContextMenuClient::searchWithGoogle): + * WebFrame.cpp: + (WebFrame::selectedString): + * WebView.cpp: + (WebView::selectedText): + (WebView::prepareCandidateWindow): + (WebView::onIMERequestCharPosition): + Changed call sites to use editor(). + +2010-09-08 Peter Kasting <pkasting@google.com> + + Not reviewed, build fix. + + * WebScrollBar.cpp: + (WebScrollBar::setScrollOffsetFromAnimation): + +2010-09-08 Peter Kasting <pkasting@google.com> + + Not reviewed, build fix. + + * WebScrollBar.cpp: + (WebScrollBar::scrollSize): + (WebScrollBar::setScrollOffsetFromAnimation): + +2010-09-08 Peter Kasting <pkasting@google.com> + + Not reviewed, build fix. + + * WebScrollBar.cpp: + (WebScrollBar::setValue): + (WebScrollBar::scrollSize): + (WebScrollBar::setScrollOffsetFromAnimation): + * WebScrollBar.h: + +2010-09-08 Adam Barth <abarth@webkit.org> + + Attempted Window build fix. + + * WebDataSource.cpp: + (WebDataSource::subresourceForURL): + +2010-09-08 Adam Barth <abarth@webkit.org> + + Rubber-stamped by Eric Seidel. + + Rename DocLoader to CachedResourceLoader because that's what it does. + + * WebDataSource.cpp: + +2010-09-07 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Adam Roben. + + Clean up a potential resource leak. + https://bugs.webkit.org/show_bug.cgi?id=45198 + + Several bitmap device context were being created and used, + and destroyed without returning the context to its original + state. This showed up as bitmap leaks in BoundsChecker. + + * FullscreenVideoController.cpp: + * WebView.cpp: + (WebView::scrollBackingStore): + (WebView::paint): + +2010-09-06 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + Rename SecurityOrigin::canLoad to canDisplay + https://bugs.webkit.org/show_bug.cgi?id=45214 + + Propagate name change. + + * WebFrame.cpp: + (WebFrame::allowsFollowingLink): + +2010-09-03 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> + + Reviewed by Darin Adler. + + Add NetworkingContext to avoid layer violations + https://bugs.webkit.org/show_bug.cgi?id=42292 + + Add Win's specific implementation of NetworkingContext. + + * WebCoreSupport/WebFrameNetworkingContext.cpp: + (WebFrameNetworkingContext::create): + (WebFrameNetworkingContext::userAgent): + (WebFrameNetworkingContext::referrer): + * WebFrame.cpp: + (WebFrame::createNetworkingContext): + * WebFrame.h: + +2010-09-03 Adam Roben <aroben@apple.com> + + Attempt to fixing Windows nightlies again + + The fix in r66438 should be sufficient, but we have to touch + WebKit.idl to force that change to be picked up by the build. + + * Interfaces/WebKit.idl: Touched this file to force a build. + +2010-09-02 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by PavelFeldman. + + REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector + https://bugs.webkit.org/show_bug.cgi?id=44230 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::disconnectFromBackend): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + * WebCoreSupport/WebInspectorClient.h: + +2010-09-01 Jessie Berlin <jberlin@apple.com> + + Reviewed by Adam Roben. + + WebViews should allow their parent windows to handle WM_MOUSEACTIVATE messages. + https://bugs.webkit.org/show_bug.cgi?id=45047 + + * WebView.cpp: + (WebView::WebViewWndProc): + +2010-08-31 Dave Hyatt <hyatt@apple.com> + + Reviewed by Sam Weinig. + + https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that + the former can occur in more places without having to do the latter. + + * WebFrame.cpp: + (WebFrame::paintDocumentRectToContext): + * WebView.cpp: + (WebView::updateBackingStore): + +2010-08-30 Adam Roben <aroben@apple.com> + + Fix crash on launch on Windows due to changing IWebFramePrivate's + vtable + + This regressed in r65107. + + Fixes <http://webkit.org/b/44755>. + + Rubber-stamped by Jon Honeycutt. + + * Interfaces/IWebFramePrivate.idl: Moved suspendAnimations and + resumeAnimations to the end of the interface so that the vtable will + match what Safari expects. + +2010-08-30 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r66198. + http://trac.webkit.org/changeset/66198 + https://bugs.webkit.org/show_bug.cgi?id=44856 + + It made tests crash on Qt bot (Requested by Ossy_ on #webkit). + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + * WebCoreSupport/WebInspectorClient.h: + +2010-08-27 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector + https://bugs.webkit.org/show_bug.cgi?id=44230 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::disconnectFromBackend): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + * WebCoreSupport/WebInspectorClient.h: + +2010-08-26 Yury Semikhatsky <yurys@chromium.org> + + Unreviewed. Revert r66103 since Qt tests are failing. + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + * WebCoreSupport/WebInspectorClient.h: + +2010-08-26 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector + https://bugs.webkit.org/show_bug.cgi?id=44230 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::disconnectFromBackend): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + * WebCoreSupport/WebInspectorClient.h: + +2010-08-24 Ada Chan <adachan@apple.com> + + Reviewed by Steve Falkenburg. + + <rdar://problem/8185379> Possible null dereference in WebView::canShowMIMEType. + https://bugs.webkit.org/show_bug.cgi?id=44564 + + * WebView.cpp: + (WebView::canShowMIMEType): Null check m_page->pluginData() since that can return NULL + if plugins are disabled. + +2010-08-22 Daniel Bates <dbates@rim.com> + + Reviewed by Eric Seidel. + + Encapsulate document marker management into DocumentMarkerController + https://bugs.webkit.org/show_bug.cgi?id=44383 + + Modify call sites in the Apple Windows port to use DocumentMarkerController. + + No functionality was changed, so no new tests. + + * WebFrame.cpp: + (WebFrame::unmarkAllMisspellings): + (WebFrame::unmarkAllBadGrammar): + * WebView.cpp: + (WebView::rectsForTextMatches): + +2010-08-18 Jessie Berlin <jberlin@apple.com> + + Reviewed by Adam Roben. + + Bug 44180 - WebView::paint fails to paint a child WebView of a Layered Window. + https://bugs.webkit.org/show_bug.cgi?id=44180 + + Decide to end painting if the m_backingStoreBitmap is null after the call to + ensureBackingStore() instead of when the rcPaint rect filled by BeginPaint is empty. + The rcPaint rect filled by BeginPaint is always empty for a child WebView of a Layered + Window, even if GetUpdateRect and GetUpdateRgn report a non-empty region that needs + painting. + + * WebView.cpp: + (WebView::paint): + +2010-08-17 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> + + Reviewed by Darin Adler. + + Add NetworkingContext to avoid layer violations + https://bugs.webkit.org/show_bug.cgi?id=42292 + + Preparation: Just add the files to the build system. + + * WebCoreSupport/WebFrameNetworkingContext.cpp: Added. + Empty placeholder for now. + * WebCoreSupport/WebFrameNetworkingContext.h: Added. + Placeholder with tentative code that might be changed when landing + the rest of it. + * WebKit.vcproj/WebKit.vcproj: Added new files. + +2010-08-17 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed. + <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131 + + * WebView.cpp: + (WebView::canGoBack): Return false if loads are deferred. + (WebView::canGoForward): Ditto. + +2010-08-16 Kinuko Yasuda <kinuko@chromium.org> + + Unreviewed; build fix attempt for Windows. + + * DefaultDownloadDelegate.cpp: + +2010-08-12 Jeremy Orlow <jorlow@chromium.org> + + Revert for now + https://bugs.webkit.org/show_bug.cgi?id=43794 + + * WebView.cpp: + (WebView::initWithFrame): + +2010-08-12 Jeremy Orlow <jorlow@chromium.org> + + Build fix. Matches solutions in qt and mac ports for + https://bugs.webkit.org/show_bug.cgi?id=43794 + + * WebView.cpp: + (WebView::initWithFrame): + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Build fix (update more includes) + + * WebKitDLL.h: + * WebLocalizableStrings.cpp: + * WebNotificationCenter.cpp: + * WebPreferences.cpp: + +2010-08-10 Chris Marrin <cmarrin@apple.com> + + Reviewed by Oliver Hunt. + + Add suspendAnimations/resumeAnimation API to DRT + https://bugs.webkit.org/show_bug.cgi?id=43733 + + Win specific API + + * Interfaces/IWebFramePrivate.idl: + * WebFrame.cpp: + (WebFrame::suspendAnimations): + (WebFrame::resumeAnimations): + * WebFrame.h: + +2010-08-06 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig + + Bug 43594 - Add string forwards to Forward.h + This allows us to remove forward declarations for these classes from + WebCore/WebKit (a step in moving these class from WebCore:: to WTF::). + + * COMVariantSetter.h: + * MarshallingHelpers.h: + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebPluginHalterClient.h: + * WebHistory.h: + +2010-08-06 Jessie Berlin <jberlin@apple.com> + + Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build. + Unreviewed. + + * COMVariantSetter.h: + * MarshallingHelpers.h: + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebPluginHalterClient.h: + * WebHistory.h: + +2010-08-05 Jessie Berlin <jberlin@apple.com> + + Reviewed by Jon Honeycutt. + + Bug 43593 - WebView::backingStore should check if m_backingStoreBitmap is NULL. + https://bugs.webkit.org/show_bug.cgi?id=43593 + + * WebView.cpp: + (WebView::backingStore): + If m_backingStoreBitmap is NULL, return E_FAIL. + +2010-08-05 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig + + Bug 43594 - Add string forwards to Forward.h + This allows us to remove forward declarations for these classes from + WebCore/WebKit (a step in moving these class from WebCore:: to WTF::). + + * COMVariantSetter.h: + * MarshallingHelpers.h: + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebPluginHalterClient.h: + * WebHistory.h: + +2010-08-03 Adam Roben <aroben@apple.com> + + Turn on PLATFORM_STRATEGIES on Windows + + Fixes <http://webkit.org/b/43431>. + + Reviewed by Anders Carlsson. + + * WebCoreLocalizedStrings.cpp: Removed. + * WebCoreSupport/WebPlatformStrategies.cpp: Added. Based on the Mac + equivalent. + (WebPlatformStrategies::initialize): Creates the singleton instance. + (WebPlatformStrategies::WebPlatformStrategies): Registers the + singleton instance as the PlatformStrategies instance for WebCore. + + (WebPlatformStrategies::createPluginStrategy): + (WebPlatformStrategies::createLocalizationStrategy): + (WebPlatformStrategies::createVisitedLinkStrategy): + Return ourselves as the strategy. + + (WebPlatformStrategies::refreshPlugins): + (WebPlatformStrategies::getPluginInfo): + Moved code here from WebCore's PluginDataWin.cpp file. + + (WebPlatformStrategies::searchableIndexIntroduction): + (WebPlatformStrategies::submitButtonDefaultLabel): + (WebPlatformStrategies::inputElementAltText): + (WebPlatformStrategies::resetButtonDefaultLabel): + (WebPlatformStrategies::fileButtonChooseFileLabel): + (WebPlatformStrategies::fileButtonNoFileSelectedLabel): + (WebPlatformStrategies::contextMenuItemTagOpenLinkInNewWindow): + (WebPlatformStrategies::contextMenuItemTagDownloadLinkToDisk): + (WebPlatformStrategies::contextMenuItemTagCopyLinkToClipboard): + (WebPlatformStrategies::contextMenuItemTagOpenImageInNewWindow): + (WebPlatformStrategies::contextMenuItemTagDownloadImageToDisk): + (WebPlatformStrategies::contextMenuItemTagCopyImageToClipboard): + (WebPlatformStrategies::contextMenuItemTagOpenFrameInNewWindow): + (WebPlatformStrategies::contextMenuItemTagCopy): + (WebPlatformStrategies::contextMenuItemTagGoBack): + (WebPlatformStrategies::contextMenuItemTagGoForward): + (WebPlatformStrategies::contextMenuItemTagStop): + (WebPlatformStrategies::contextMenuItemTagReload): + (WebPlatformStrategies::contextMenuItemTagCut): + (WebPlatformStrategies::contextMenuItemTagPaste): + (WebPlatformStrategies::contextMenuItemTagNoGuessesFound): + (WebPlatformStrategies::contextMenuItemTagIgnoreSpelling): + (WebPlatformStrategies::contextMenuItemTagLearnSpelling): + (WebPlatformStrategies::contextMenuItemTagSearchWeb): + (WebPlatformStrategies::contextMenuItemTagLookUpInDictionary): + (WebPlatformStrategies::contextMenuItemTagOpenLink): + (WebPlatformStrategies::contextMenuItemTagIgnoreGrammar): + (WebPlatformStrategies::contextMenuItemTagSpellingMenu): + (WebPlatformStrategies::contextMenuItemTagCheckSpelling): + (WebPlatformStrategies::contextMenuItemTagCheckSpellingWhileTyping): + (WebPlatformStrategies::contextMenuItemTagCheckGrammarWithSpelling): + (WebPlatformStrategies::contextMenuItemTagFontMenu): + (WebPlatformStrategies::contextMenuItemTagBold): + (WebPlatformStrategies::contextMenuItemTagItalic): + (WebPlatformStrategies::contextMenuItemTagUnderline): + (WebPlatformStrategies::contextMenuItemTagOutline): + (WebPlatformStrategies::contextMenuItemTagWritingDirectionMenu): + (WebPlatformStrategies::contextMenuItemTagTextDirectionMenu): + (WebPlatformStrategies::contextMenuItemTagDefaultDirection): + (WebPlatformStrategies::contextMenuItemTagLeftToRight): + (WebPlatformStrategies::contextMenuItemTagRightToLeft): + (WebPlatformStrategies::contextMenuItemTagShowSpellingPanel): + (WebPlatformStrategies::contextMenuItemTagInspectElement): + (WebPlatformStrategies::searchMenuNoRecentSearchesText): + (WebPlatformStrategies::searchMenuRecentSearchesText): + (WebPlatformStrategies::searchMenuClearRecentSearchesText): + (WebPlatformStrategies::AXWebAreaText): + (WebPlatformStrategies::AXLinkText): + (WebPlatformStrategies::AXListMarkerText): + (WebPlatformStrategies::AXImageMapText): + (WebPlatformStrategies::AXHeadingText): + (WebPlatformStrategies::AXDefinitionListTermText): + (WebPlatformStrategies::AXDefinitionListDefinitionText): + (WebPlatformStrategies::AXButtonActionVerb): + (WebPlatformStrategies::AXRadioButtonActionVerb): + (WebPlatformStrategies::AXTextFieldActionVerb): + (WebPlatformStrategies::AXCheckedCheckBoxActionVerb): + (WebPlatformStrategies::AXUncheckedCheckBoxActionVerb): + (WebPlatformStrategies::AXLinkActionVerb): + (WebPlatformStrategies::AXMenuListActionVerb): + (WebPlatformStrategies::AXMenuListPopupActionVerb): + (WebPlatformStrategies::unknownFileSizeText): + (WebPlatformStrategies::uploadFileText): + (WebPlatformStrategies::allFilesText): + (WebPlatformStrategies::missingPluginText): + (WebPlatformStrategies::crashedPluginText): + (WebPlatformStrategies::imageTitle): + (WebPlatformStrategies::multipleFileUploadText): + (WebPlatformStrategies::mediaElementLoadingStateText): + (WebPlatformStrategies::mediaElementLiveBroadcastStateText): + (WebPlatformStrategies::localizedMediaControlElementString): + (WebPlatformStrategies::localizedMediaControlElementHelpText): + (WebPlatformStrategies::localizedMediaTimeDescription): + (WebPlatformStrategies::validationMessageValueMissingText): + (WebPlatformStrategies::validationMessageTypeMismatchText): + (WebPlatformStrategies::validationMessagePatternMismatchText): + (WebPlatformStrategies::validationMessageTooLongText): + (WebPlatformStrategies::validationMessageRangeUnderflowText): + (WebPlatformStrategies::validationMessageRangeOverflowText): + (WebPlatformStrategies::validationMessageStepMismatchText): + Moved code here from WebCoreLocalizedStrings.cpp (and slightly cleaned + it up). + + (WebPlatformStrategies::isLinkVisited): + (WebPlatformStrategies::addVisitedLink): + Copied code from WebKit/mac/WebCoreSupport/WebPlatformStrategies.mm. + + * WebCoreSupport/WebPlatformStrategies.h: Added. + + * WebKit.vcproj/WebKit.vcproj: Removed WebCoreLocalizedStrings, added + WebPlatformStrategies. + + * WebView.cpp: + (WebView::initWithFrame): Initialize WebPlatformStrategies. + +2010-08-03 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Sam Weinig. + + https://bugs.webkit.org/show_bug.cgi?id=42939 + WebEditorClient::didBeginEditing is never called in WebKit2 + + * WebView.cpp: (WebView::WebViewWndProc): Removed a call to setFocusedFrame. WebCore will + now set it to main frame, and besides, this call should have been before setFocused(), not + after it. My understanding is that we weren't getting all the same editing delegates on Windows, + so this change may make WebKit1 on Windows behave more like Mac - but I haven't tested it. + +2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org> + + Reviewed by Darin Fisher. + + PopupMenu refactoring in preparation to WebKit2 + https://bugs.webkit.org/show_bug.cgi?id=42592 + + As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu + instances, concrete classes that inherit from ChromeClient needed to be changed to + implement the new methods. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::selectItemWritingDirectionIsNatural): + (WebChromeClient::createPopupMenu): + (WebChromeClient::createSearchPopupMenu): + * WebCoreSupport/WebChromeClient.h: + +2010-08-02 Jon Honeycutt <jhoneycutt@apple.com> + + Move InjectedBundle.vcproj to where the other WebKitTestRunner vcprojs live. + + Reviewed by Sam Weinig. + + * WebKit.vcproj/WebKit.sln: + +2010-08-02 Jeremy Orlow <jorlow@chromium.org> + + Speculative revert of 64425 due to Chromium instability + https://bugs.webkit.org/show_bug.cgi?id=43347 + + * WebCoreSupport/WebChromeClient.cpp: + * WebCoreSupport/WebChromeClient.h: + * WebView.cpp: + (WebView::mouseWheel): + +2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org> + + Build fix: Windows. + + * WebView.cpp: + (WebView::mouseWheel): + +2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org> + + Reviewed by Darin Fisher. + + PopupMenu refactoring in preparation to WebKit2 + https://bugs.webkit.org/show_bug.cgi?id=42592 + + As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu + instances, concrete classes that inherit from ChromeClient needed to be changed to + implement the new methods. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::selectItemWritingDirectionIsNatural): + (WebChromeClient::createPopupMenu): + (WebChromeClient::createSearchPopupMenu): + * WebCoreSupport/WebChromeClient.h: + +2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r64422. + http://trac.webkit.org/changeset/64422 + https://bugs.webkit.org/show_bug.cgi?id=43304 + + Build fixes are needed for Snow Leopard and Windows. + (Requested by lca on #webkit). + + * WebCoreSupport/WebChromeClient.cpp: + * WebCoreSupport/WebChromeClient.h: + +2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org> + + Reviewed by Darin Fisher. + + PopupMenu refactoring in preparation to WebKit2 + https://bugs.webkit.org/show_bug.cgi?id=42592 + + As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu + instances, concrete classes that inherit from ChromeClient needed to be changed to + implement the new methods. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::selectItemWritingDirectionIsNatural): + (WebChromeClient::createPopupMenu): + (WebChromeClient::createSearchPopupMenu): + * WebCoreSupport/WebChromeClient.h: + +2010-07-31 Daniel Bates <dbates@rim.com> + + Attempt to fix the Windows build after changeset 64409 <http://trac.webkit.org/changeset/64409>. + + * WebFrame.cpp: + (WebFrame::setPrinting): + +2010-07-30 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + <rdar://problem/8257783> Short documents may print a second blank page + https://bugs.webkit.org/show_bug.cgi?id=43271 + + * WebFrame.cpp: + (WebFrame::setPrinting): Updated for changes to Frame::setPrinting(). Passing 0 for the + page height, which maintains existing behavior. + +2010-07-30 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by David Kilzer. + + Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) + https://bugs.webkit.org/show_bug.cgi?id=40627 + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::reachedApplicationCacheOriginQuota): + * WebCoreSupport/WebChromeClient.h: + +2010-07-26 Steve Block <steveblock@google.com> + + Reviewed by Jeremy Orlow. + + Page clients should be passed to Page constructor via structure of pointers + https://bugs.webkit.org/show_bug.cgi?id=42834 + + * WebView.cpp: + (WebView::initWithFrame): + +2010-07-27 Steve Block <steveblock@google.com> + + Reviewed by Alexey Proskuryakov. + + Client-based Geolocation does not pass enableHighAccuracy option to controller and client + https://bugs.webkit.org/show_bug.cgi?id=40374 + + Stub out setEnableHighAccuracy method for the Win port. + + * WebCoreSupport/WebGeolocationControllerClient.h: + (WebGeolocationControllerClient::setEnableHighAccuracy): + +2010-07-22 Sam Weinig <sam@webkit.org> + + Reviewed by Maciej Stachowiak. + + Fix for <rdar://problem/8222626> + Send textDidChangeInTextField delegate callback only in response to typing or other forms of user text input. + + The function name no longer perfectly matches the behavior, but I didn't want to break any existing clients. Maybe we + should migrate to a new function name eventually + + * WebCoreSupport/WebEditorClient.cpp: + (WebEditorClient::textDidChangeInTextField): + +2010-07-21 Brady Eidson <beidson@apple.com> + + Reviewed by Geoffrey Garen. + + Break out "scheme registration" functionality from SecurityOrigin to a SchemeRegistry + https://bugs.webkit.org/show_bug.cgi?id=42783 + + * WebView.cpp: + (WebView::registerURLSchemeAsLocal): + (WebView::registerURLSchemeAsSecure): + +2010-07-20 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + WebKit on Windows should build optionally with an unversioned ICU DLL + https://bugs.webkit.org/show_bug.cgi?id=42722 + <rdar://problem/8211767> WebKit needs to link against unversioned ICU + + To get the proper value for U_DISABLE_RENAMING into all source files, we force + the include of ICUVersion.h (our generated header) via the compiler options. + + * WebKit.vcproj/WebKit.vcproj: Add forced include of ICUVersion.h. + +2010-07-21 Adam Roben <aroben@apple.com> + + Update WebKit.sln for InjectedBundle's Debug_Internal configuration + + Fixes <http://webkit.org/b/42749> InjectedBundle's build + configurations are screwy + + Reviewed by Darin Adler. + + * WebKit.vcproj/WebKit.sln: Build the Debug_Internal variant of + InjectedBundle when we're using the Debug_Internal solution + configuration. + +2010-07-21 Adam Roben <aroben@apple.com> + + Add MiniBrowser to WebKit.sln + + It is the last project to build. + + Fixes <http://webkit.org/b/42747> build-webkit should build + MiniBrowser + + Reviewed by Darin Adler. + + * WebKit.vcproj/WebKit.sln: Added MiniBrowser, and made it depend on + WebKitTestRunner. + +2010-07-20 Adam Roben <aroben@apple.com> + + Add WebKitTestRunner and friends to WebKit.sln + + We added these projects to WebKit2.sln in r63585, but removed them + again in r63600 because WebKitTestRunner required getopt, which + doesn't exist in WebKitAuxiliaryLibrary. r63700 and r63788 removed the + use of getopt in WebKitTestRunner, so we can now add it to WebKit.sln + (which has replaced WebKit2.sln). + + Fixes <http://webkit.org/b/42711> WebKit.sln should build + WebKitTestRunner + + Reviewed by Steve Falkenburg. + + * WebKit.vcproj/WebKit.sln: Added the following projects to the end of + the build order (in first-built to last-built order): + InjectedBundleGenerated, InjectedBundle, WebKitTestRunner. Also + removed an unnecessary dependency from testapi on WebKit2WebProcess. + +2010-07-19 Daniel Bates <dbates@rim.com> + + Reviewed by Adam Roben. + + [Win] Implement LayoutTestController::markerTextForListItem() + https://bugs.webkit.org/show_bug.cgi?id=37930 + + Implements support for markerTextForListItem in the Windows port. + + * DOMCoreClasses.cpp: + (DOMElement::markerTextForListItem): Added. + * DOMCoreClasses.h: + * Interfaces/DOMPrivate.idl: Added declaration for markerTextForListItem(). + * Interfaces/IWebViewPrivate.idl: Added declaration for elementFromJS(). + * Interfaces/WebKit.idl: Touch it to force a rebuild (and for good luck :-)). + * WebView.cpp: + (WebView::elementFromJS): Added. + * WebView.h: + +2010-07-16 Zhe Su <suzhe@chromium.org> + + Reviewed by Darin Adler. + + REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms + https://bugs.webkit.org/show_bug.cgi?id=42253 + + Dummy implementation of EditorClient::willSetInputMethodState. + + * WebCoreSupport/WebEditorClient.cpp: + (WebEditorClient::willSetInputMethodState): + * WebCoreSupport/WebEditorClient.h: + +2010-07-16 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Pavel Feldman. + + Make JS memory stats available via 'Performance' object (Web Timing). + This statistics is populated only if 'WebKitMemoryInfoEnabled' + preference is set. + + 'console.memory' is kept until Web Timing object becomes visible by + default (currently it is hidden under compile-time flag). These stats + are guarded with the same preference. + + https://bugs.webkit.org/show_bug.cgi?id=41617 + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::memoryInfoEnabled): + (WebPreferences::setMemoryInfoEnabled): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-07-14 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Steve Falkenburg. + + Patch for https://bugs.webkit.org/show_bug.cgi?id=42299 + Correct WinCairo build for new WebKit2 project structure. + + * WebKit.vcproj/WebKit.sln: + +2010-07-14 Sam Weinig <sam@webkit.org> + + Reviewed by Darin Adler. + + Patch for https://bugs.webkit.org/show_bug.cgi?id=42232 + Make changing Cursors work in WebKit2. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::setCursor): + We now need to grab the native cursor out of the WebCore cursor. + + (WebChromeClient::setLastSetCursorToCurrentCursor): + Sets the WebView's "last set cursor" to be the current cursor so that + the cursor is set correctly for plugins. + * WebCoreSupport/WebChromeClient.h: + * WebView.cpp: + (WebView::WebView): + (WebView::WebViewWndProc): + * WebView.h: + (WebView::setLastCursor): + Change the "last set cursor" to be stored as a member instead of a global. + +2010-07-13 Steve Falkenburg <sfalken@apple.com> + + Windows build fix. + Make WebKit.sln build WebKit.dll as it used to in the past. + (sln is updated to include necessary projects) + + * WebKit.vcproj/WebKit.sln: + +2010-07-13 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Windows build fix + + * Interfaces/WebKit.idl: Touched to force a build + +2010-07-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Darin Adler. + + Prevent assertion/duplicate loads for non-deferred subtitute-data loads + + https://bugs.webkit.org/show_bug.cgi?id=30879 + + MainResourceLoader uses the member m_initialRequest to store requests for future + deferred loads. When doing the actual load in handleDataLoadNow(), we therefore + have to clear this request so that subsequent entries into the loader will not + start yet another load. + + This can happen as a result of a PageGroupLoadDeferrer going out of scope when + returning from Chrome::runJavaScriptAlert(), which calls setDeferredLoading(false), + but only in the case of using both substitute-data and non-deferred main resource + load together. That's why two new DRT functions were added: + + * queueLoadHTMLString() + * setDeferMainResourceLoad() + + The change adds DRT hooks for Mac, Win and Qt for these two functions. For Mac + and Win the hook uses new SPI in WebDataSource. For Qt a new static member was + added to the FrameLoaderClientQt and accessed though DumpRenderTreeSupportQt. + + * Interfaces/IWebDataSource.idl: + * WebDataSource.cpp: + (WebDataSource::setDeferMainResourceDataLoad): + * WebDataSource.h: + +2010-07-12 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Alice Liu. + + <rdar://problem/8113038> WebKit1 and WebKit2 should build as a single DLL + https://bugs.webkit.org/show_bug.cgi?id=40921 + + Pre-WebKit2 WebKit now builds into a static library named WebKitLib.lib. + WebKit.dll now links in WebCore.lib, WebKitLib.lib and WebKit2 code. + + This is a first step. We'll likely want to migrate the remainder of + the non-deprecated WebKit code (strings, DLLMain, resources) into WebKit2. + + * WebKit.vcproj/WebKit.def: Removed. + * WebKit.vcproj/WebKit.make: Don't fail if WebKit doesn't produce a DLL. + * WebKit.vcproj/WebKit.vcproj: Build WebKit as a static lib. + Renamed project name to WebKitLib to avoid confusion and naming conflicts. + Generate intermediate pdb file for debuggability of static lib. + Removed DLL-related options. + * WebKit.vcproj/deleteButton.png: Removed. + * WebKit.vcproj/deleteButtonPressed.png: Removed. + * WebKit.vcproj/fsVideoAudioVolumeHigh.png: Removed. + * WebKit.vcproj/fsVideoAudioVolumeLow.png: Removed. + * WebKit.vcproj/fsVideoExitFullscreen.png: Removed. + * WebKit.vcproj/fsVideoPause.png: Removed. + * WebKit.vcproj/fsVideoPlay.png: Removed. + * WebKit.vcproj/missingImage.png: Removed. + * WebKit.vcproj/nullplugin.png: Removed. + * WebKit.vcproj/panEastCursor.png: Removed. + * WebKit.vcproj/panIcon.png: Removed. + * WebKit.vcproj/panNorthCursor.png: Removed. + * WebKit.vcproj/panNorthEastCursor.png: Removed. + * WebKit.vcproj/panNorthWestCursor.png: Removed. + * WebKit.vcproj/panSouthCursor.png: Removed. + * WebKit.vcproj/panSouthEastCursor.png: Removed. + * WebKit.vcproj/panSouthWestCursor.png: Removed. + * WebKit.vcproj/panWestCursor.png: Removed. + * WebKit.vcproj/searchCancel.png: Removed. + * WebKit.vcproj/searchCancelPressed.png: Removed. + * WebKit.vcproj/searchMagnifier.png: Removed. + * WebKit.vcproj/searchMagnifierResults.png: Removed. + * WebKit.vcproj/textAreaResizeCorner.png: Removed. + * WebKit.vcproj/verticalTextCursor.png: Removed. + * WebKit.vcproj/zoomInCursor.png: Removed. + * WebKit.vcproj/zoomOutCursor.png: Removed. + +2010-07-08 Aaron Boodman <aa@chromium.org> + + Reviewed by Timothy Hatcher. + + Add the ability for user scripts and user styles to affect just the top frame. + + https://bugs.webkit.org/show_bug.cgi?id=41529 + + * WebView.cpp: + (WebView::addUserScriptToGroup): + (WebView::addUserStyleSheetToGroup): + +2010-07-08 Adele Peterson <adele@apple.com> + + Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=41721 + <rdar://problem/8158561> Missing plug-in indicator should have a pressed state + + Implement shouldMissingPluginMessageBeButton. + + * WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::shouldMissingPluginMessageBeButton): + * WebCoreSupport/WebChromeClient.h: + +2010-07-07 Anders Carlsson <andersca@apple.com> + + Reviewed by Simon Fraser. + + Rename TestNetscapePlugin.subproj and move platform specific files to subdirectories + https://bugs.webkit.org/show_bug.cgi?id=41781 + + * WebKit.vcproj/WebKit.sln: + +2010-07-07 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Patch for https://bugs.webkit.org/show_bug.cgi?id=41772 + Add basic piping for BackForwardControllerClient. + + * WebView.cpp: + (WebView::initWithFrame): + +2010-07-07 Adam Roben <aroben@apple.com> + + Windows build fix + + * Interfaces/WebKit.idl: Touched to force a build. + +2010-07-06 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Simon Fraser. + + Expose URL matching from WebUserContentURLPattern + https://bugs.webkit.org/show_bug.cgi?id=41726 + <rdar://problem/7910144> + + We previously had a way to construct WebUserContentURLPattern + instances via WebKit, but no way for callers to perform matching. + This patch adds the matchesURL functionality to allow for this. + + * Interfaces/IWebUserContentURLPattern.idl: Added matchesURL. + * Interfaces/IWebView.idl: Touch to force a build. + * WebUserContentURLPattern.cpp: + (WebUserContentURLPattern::matchesURL): Added. Calls through to WebCore::UserContentURLPattern::matches. + * WebUserContentURLPattern.h: Added matchesURL. + +2010-07-03 Jon Honeycutt <jhoneycutt@apple.com> + + The missing plug-in indicator should be clickable + + https://bugs.webkit.org/show_bug.cgi?id=41550 + <rdar://problem/8132162> + + From an original patch by Kevin Decker. + + Reviewed by Darin Adler. + + * Interfaces/IWebUIDelegatePrivate.idl: + Added a new delegate interface, and declare a function + didPressMissingPluginButton(). + + * Interfaces/WebKit.idl: + Touch this file to force interfaces to be rebuilt. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::missingPluginButtonClicked): + Get the UI delegate, and query it for IWebUIDelegatePrivate3. Call its + didPressMissingPluginButton() function. + + * WebCoreSupport/WebChromeClient.h: + Declare an override of missingPluginButtonClicked(). + +2010-07-03 Erik Arvidsson <arv@chromium.org> + + Reviewed by Ojan Vafai. + + Fix issue where a contextmenu event was reporting the wrong target + if the context menu was shown due to pressing the context menu key + (or Shift+F10). + + * WebView.cpp: + (WebView::handleContextMenuEvent): + +2010-07-01 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adele Peterson. + + Provide a WebView preference to disable DNS prefetching on Windows + https://bugs.webkit.org/show_bug.cgi?id=41504 + <rdar://problem/8151939> + + * Interfaces/IWebPreferencesPrivate.idl: Added isDNSPrefetchingEnabled, setDNSPrefetchingEnabled. + * Interfaces/WebKit.idl: Touched to force IDL build. + * WebPreferenceKeysPrivate.h: Added WebKitDNSPrefetchingEnabledPreferenceKey. + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): Default prefetch to true. + (WebPreferences::setDNSPrefetchingEnabled): Added. + (WebPreferences::isDNSPrefetchingEnabled): Added. + * WebPreferences.h: Added isDNSPrefetchingEnabled, setDNSPrefetchingEnabled. + * WebView.cpp: + (WebView::notifyPreferencesChanged): Propagate prefetch pref into settings. + +2010-06-21 Nate Chapin <japhet@chromium.org> + + Unreviewed, Windows build fix. + + Update WebFrame to use FrameLoaderStateMachine in + firstLayoutDone(). + + * WebFrame.cpp: + (WebFrame::firstLayoutDone): + +2010-06-15 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Adam Barth. + + Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase. + https://bugs.webkit.org/show_bug.cgi?id=39041 + + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-06-16 Adam Roben <aroben@apple.com> + + Add a "forPrinting" boolean parameter to + IWebFramePrivate::renderTreeAsExternalRepresentation + + Fixes <http://webkit.org/b/40727> Respect + LayoutTestController::isPrinting on Windows. + + Reviewed by Dan Bernstein. + + * Interfaces/IWebFramePrivate.idl: Renamed the current + renderTreeAsExternalRepresentation to unused1, and added a new version + that takes a boolean "forPrinting" parameter. + + * Interfaces/WebKit.idl: Touched to force a build. + + * WebFrame.cpp: + (WebFrame::renderTreeAsExternalRepresentation): Added a boolean + "forPrinting" parameter, and used it to tell externalRepresentation + what kind of behavior to use. + + * WebFrame.h: Renamed the old renderTreeAsExternalRepresentation and + added the new one. + +2010-06-15 Darin Adler <darin@apple.com> + + Reviewed by Adam Barth. + + Move functions out of Frame class that were marked "move to Chrome" + https://bugs.webkit.org/show_bug.cgi?id=39636 + + * WebView.cpp: + (WebView::shouldClose): Call shouldClose on FrameLoader instead of + going through Frame. + +2010-06-14 Adam Roben <aroben@apple.com> + + Add WebKitLauncherWin to WebKit.sln + + Fixes <http://webkit.org/b/40583>. + + Reviewed by Darin Adler. + + * WebKit.vcproj/WebKit.sln: Added WebKitLauncherWin.vcproj. It depends + on WebKitAPITest, so is the last project to build. (Also removed + QTMovieWin's direct dependency on JavaScriptCore, since it already has + an indirect dependency on it.) + +2010-06-14 Chang Shu <chang.shu@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [win] Make windows compile after API changes. + + https://bugs.webkit.org/show_bug.cgi?id=40434 + + * WebKitGraphics.cpp: + (WebDrawText): + +2010-06-14 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc + data from inspected page to WebInspector as JSON string via http. The native + serialization to JSON string is supported by InspectorValue's classes. This patch + has the implementation of sendMessageToFrontend function. WebKit version of it still + uses ScriptFunctionCall and will be switched to another transport a little bit later. + https://bugs.webkit.org/show_bug.cgi?id=40134 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::WebInspectorClient): + (WebInspectorClient::~WebInspectorClient): + (WebInspectorClient::openInspectorFrontend): + * WebCoreSupport/WebInspectorClient.h: + +2010-06-10 Eric Seidel <eric@webkit.org> + + Reviewed by Adam Barth. + + Reduce FrameView.h includes to speed up build times + https://bugs.webkit.org/show_bug.cgi?id=40408 + + Another fix for Windows. + + * WebView.cpp: + +2010-06-09 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r60889. + http://trac.webkit.org/changeset/60889 + https://bugs.webkit.org/show_bug.cgi?id=40365 + + gtk bot has some kind of memory corruption (Requested by + loislo on #webkit). + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::WebInspectorClient): + (WebInspectorClient::~WebInspectorClient): + (WebInspectorClient::openInspectorFrontend): + * WebCoreSupport/WebInspectorClient.h: + (WebInspectorClient::frontendClosing): + +2010-06-07 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc + data from inspected page to WebInspector as JSON string via http. The native + serialization to JSON string is supported by InspectorValue's classes. This patch + has the implementation of sendMessageToFrontend function. WebKit version of it still + uses ScriptFunctionCall and will be switched to another transport a little bit later. + https://bugs.webkit.org/show_bug.cgi?id=40134 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::WebInspectorClient): + (WebInspectorClient::~WebInspectorClient): + (WebInspectorClient::openInspectorFrontend): + * WebCoreSupport/WebInspectorClient.h: + +2010-06-08 Antonio Gomes <tonikitoo@webkit.org> + + Reviewed by Ojan Vafai and Darin Adler. + + Refactor platform dependent editing behavior code out of Settings + https://bugs.webkit.org/show_bug.cgi?id=39854 + + EditingBehavior enum was renamed to EditingBehaviorTypes and moved out from Settings.h to + EditingBehaviorTypes.h . Call sites in WebKit/ adjusted accordingly. + + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-06-04 Alice Liu <alice.liu@apple.com> + + Reviewed by Jon Honeycutt. + + WebFrame::paintDocumentRectToContextAtPoint doesn't paint scrollbars + https://bugs.webkit.org/show_bug.cgi?id=40034 + <rdar://problem/7799848> + + * WebFrame.cpp: + (WebFrame::paintScrollViewRectToContextAtPoint): Renamed from paintDocumentRectToContextAtPoint. + Call paint() instead of paintContents(). Also move the dirtyRect to counteract the moving that happens in paint(). + + Just renaming changes: + * Interfaces/IWebFramePrivate.idl: + * Interfaces/IWebViewPrivate.idl: + * WebFrame.h: + * WebView.cpp: + (WebView::paintScrollViewRectToContextAtPoint): + * WebView.h: + + * Interfaces/WebKit.idl: Touched for rebuild. + +2010-05-30 Daniel Bates <dbates@rim.com> + + Unreviewed, attempt to fix the build after http://trac.webkit.org/changeset/60418. + + * WebFrame.cpp: + (WebFrame::elementWithName): + (WebFrame::controlsInForm): + +2010-05-22 Jer Noble <jer.noble@apple.com> + + Reviewed by Adam Roben. + + Full screen doesn't work for video elements + https://bugs.webkit.org/show_bug.cgi?id=39557 + rdar://problem/8011813 + + Modified FullscreenVideoController to work with MediaPlayerPrivateFullscreenWindow. The FullscreenVideoController + is now MediaPlayerPrivate agnostic.. + + * FullscreenVideoController.cpp: + (FullscreenVideoController::LayoutClient::LayoutClient): New helper class which implements WKCACFLayerLayoutClient. + (FullscreenVideoController::LayoutClient::layoutSublayersOfLayer): + (FullscreenVideoController::FullscreenVideoController): + (FullscreenVideoController::~FullscreenVideoController): + (FullscreenVideoController::enterFullscreen): + (FullscreenVideoController::exitFullscreen): + (FullscreenVideoController::fullscreenClientWndProc): Handle WM_KEYDOWN. + (FullscreenVideoController::createHUDWindow): + (FullscreenVideoController::hudWndProc): Handle WM_KEYDOWN. + (FullscreenVideoController::onChar): + (FullscreenVideoController::onKeyDown): New function: handles the VK_ESCAPE case more reliably than WM_CHAR. + * FullscreenVideoController.h: + * WebView.h: + (WebView::viewWindow): Added a simple viewWindow() accessor. + +2010-05-25 Brady Eidson <beidson@apple.com> + + Reviewed by Darin Adler. + + Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms) + <rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486 + + * WebDatabaseManager.cpp: + (WebKitInitializeWebDatabasesIfNecessary): Call initializeTracker() instead of trying to set the path on + an already created tracker that already has its origins populated. + * WebDatabaseManager.h: + + * WebView.cpp: + (WebView::initWithFrame): Call a renamed method instead. + +2010-05-25 Ada Chan <adachan@apple.com> + + Reviewed by Steve Falkenburg. + + https://bugs.webkit.org/show_bug.cgi?id=39651 + + Make m_closeWindowTimer a SuspendableTimer, so it is properly suspended + when page loading is deferred. + + * WebView.cpp: + (WebView::WebView): m_closeWindowTimer is now a pointer to a SuspendableTimer. + (WindowCloseTimer::create): + (WindowCloseTimer::WindowCloseTimer): + (WindowCloseTimer::contextDestroyed): Make sure we delete the WindowCloseTimer in the end. + (WindowCloseTimer::fired): + (WebView::closeWindowSoon): + (WebView::closeWindowTimerFired): + (WebView::notifyPreferencesChanged): Can just check for the existence m_closeWindowTimer, since + we only create it when we need to start the timer. + * WebView.h: + +2010-05-24 Darin Adler <darin@apple.com> + + Reviewed by Eric Seidel. + + Move view-related functions from Frame to FrameView + https://bugs.webkit.org/show_bug.cgi?id=39366 + + * WebFrame.cpp: + (WebFrame::setTextSizeMultiplier): Call function on FrameView. + * WebView.cpp: + (WebView::setZoomMultiplier): Ditto. + +2010-05-24 Anders Carlsson <andersca@apple.com> + + Yet another Windows build fix. + + * WebView.cpp: + (WebView::canShowMIMEType): + Use the right capitalizatinon of 'MIME' (which also happens to be incorrect according to our guidelines). + +2010-05-24 Anders Carlsson <andersca@apple.com> + + Another Windows build fix. + + * WebView.cpp: + Don't include PlugInInfoStore.h, instead include PluginData.h + +2010-05-24 Anders Carlsson <andersca@apple.com> + + Fix Windows build. + + * WebView.cpp: + (WebView::canShowMIMEType): + +2010-05-21 Steve Block <steveblock@google.com> + + Reviewed by Jeremy Orlow. + + Add DeviceOrientation and DeviceOrientationClient + https://bugs.webkit.org/show_bug.cgi?id=39479 + + * WebView.cpp: + (WebView::initWithFrame): + +2010-05-20 Simon Fraser <simon.fraser@apple.com> + + Build fix, no review. + + Fix the non-accelerated-compositing Windows build with some + #if USE(ACCELERATED_COMPOSITING) loving. + + * WebView.cpp: + * WebView.h: + +2010-05-20 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Adam Roben. + + Avoid flushing CA layers when a layout is pending + https://bugs.webkit.org/show_bug.cgi?id=39463 + + <rdar://problem/7999463> + + Avoid rendering the compositing layers to the screen if there's a layout pending, + since the layer tree not in a state that should be presented to the user. + + This fixes flashes in some types of content that dynamically add and remove layers. + + Have the WebView implement WKCACFLayerRendererClient so that the + WKCACFLayerRenderer can ask whether it's a good time to render. If the FrameView + has a layout pending, say no. + + * WebView.h: + * WebView.cpp: + (WebView::setAcceleratedCompositing): + (WebView::shouldRender): + +2010-05-18 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Adam Roben. + + [WinCairo] Correct scaling for print preview + https://bugs.webkit.org/show_bug.cgi?id=39329 + + Cairo does not properly deal with Windows HDCs that have been + scaled using MM_ANISOTROPIC mapping mode, and a WindowExt and + ViewportExt setting. + (see http://bugs.freedesktop.org/show_bug.cgi?id=28161) + + Instead, reset the HDC's WorldTransform to be unscaled, then + scale the cairo context to the desired scaling, and perform + the drawing operation. + + * WebFrame.cpp: + (WebFrame::drawHeader): Use pre-positioned context to simplify + this method. + (WebFrame::drawFooter): Use pre-positioned context to simplify + this method. + (WebFrame::spoolPage): Revise scaling logic to turn off HDC + scaling, and scale using only Cairo. Revert scaling at end + so that user-defined GDI-based routines (e.g., header/footer) + will draw in the right position. + (WebFrame::spoolPages): Identify print preview case, and + retrieve scaling factors from preview context. Set the + Cairo context to use these factors during the spoolPage + operation. + +2010-05-20 Martin Robinson <mrobinson@igalia.com> + + Unreviewed. + + Touch WebKit.idl to ensure that interfaces rebuild. + + * Interfaces/WebKit.idl: Touched. + +2010-05-20 Martin Robinson <mrobinson@igalia.com> + + Reviewed by Adam Roben. + + Fix the Windows build and move new IDL declarations to the bottom of the file. + + * Interfaces/IWebPreferences.idl: Move new API to the bottom of the IDL file to prevent vtable mismatch. + * WebPreferences.cpp: + (WebPreferences::setEditingBehavior): Change the type of the parameter to setEditingBehavior to the proper type. + +2010-05-20 Martin Robinson <mrobinson@igalia.com> + + Unreviewed. + + Fix the Windows build. + + * WebView.cpp: + (WebView::notifyPreferencesChanged): Change behavior to 'editingBehavior'. + +2010-05-20 Martin Robinson <mrobinson@webkit.org> + + Reviewed by Ojan Vafai. + + Expose the editing behavior setting in DRT to test all editing code paths + https://bugs.webkit.org/show_bug.cgi?id=38603 + + Expose the EditingBehavior setting in the Windows API. + + * Interfaces/IWebPreferences.idl: Add the API point for setting the editing behavior. + * WebPreferenceKeysPrivate.h: Add a key for the editing behavior setting. + * WebPreferences.cpp: + (WebPreferences::editingBehavior): Added. + (WebPreferences::setEditingBehavior): Added. + * WebPreferences.h: Add method declarations. + * WebView.cpp: + (WebView::notifyPreferencesChanged): Update the WebCore setting based on the WebPreferences setting. + +2010-05-20 Chris Jerdonek <cjerdonek@webkit.org> + + Reviewed by Eric Seidel. + + Modified FrameLoader::urlSelected() to accept a KURL instead of a + ResourceRequest. + + https://bugs.webkit.org/show_bug.cgi?id=39320 + + Since ResourceRequest has non-explicit single-parameter constructors for + String and KURL, urlSelected() previously accepted any of String, KURL, + and ResourceRequest. This revision changes urlSelected() to accept only + a KURL to make the API tighter and easier to refactor. + + * WebCoreSupport/WebContextMenuClient.cpp: + (WebContextMenuClient::searchWithGoogle): + - Updated the call to urlSelected(). + +2010-05-13 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + <rdar://problem/7982652> + + Allow reporting exceptions that occur when using JavaScriptCore APIs to the Web Inspector. + + * Interfaces/IWebViewPrivate.idl: Add a reportException function off of IWebViewPrivate. + * Interfaces/WebKit.idl: Touch WebKit.idl to make sure Interfaces rebuild. + * WebView.cpp: + (WebView::reportException): Make sure the function was called with a context from a WebView, and call + WebCore::reportException. + * WebView.h: + +2010-05-12 Jer Noble <jer.noble@apple.com> + + Reviewed by Darin Adler. + + Bug 38689: #34005 will break fullscreen video playback + https://bugs.webkit.org/show_bug.cgi?id=38689 + + Use the new definition of PlatformMedia to check the actual type + returned by MediaPlayer. + + * FullscreenVideoController.cpp: + (FullscreenVideoController::movie): + +2010-05-11 Jer Noble <jer.noble@apple.com> + + No Review. + + Fix build error: The QTMovieWin project is dependent on the JavaScriptCore project. + + * WebKit.vcproj/WebKit.sln: + +2010-05-11 Alice Liu <alice.liu@apple.com> + + Rubber-stamped by Gavin Barraclough. + + Fix build error when enabling debugging block in WebKit win painting code + + * WebView.cpp: + (WebView::paintIntoBackingStore): + +2010-05-11 Alice Liu <alice.liu@apple.com> + + Reviewed by Steve Falkenburg. + + https://bugs.webkit.org/show_bug.cgi?id=38937 + W7 window preview paints content at the wrong location + + * WebFrame.cpp: + (WebFrame::paintDocumentRectToContext): Revert r58895 + (WebFrame::paintDocumentRectToContextAtPoint): Added + + * Interfaces/IWebFramePrivate.idl: Added paintDocumentRectToContextAtPoint + * Interfaces/IWebViewPrivate.idl: ditto + * Interfaces/WebKit.idl: touch to rebuild + * WebFrame.h: ditto + * WebView.cpp: ditto + (WebView::paintDocumentRectToContextAtPoint): ditto + * WebView.h: ditto + +2010-05-07 Jer Noble <jer.noble@apple.com> + + Reviewed by Adele Peterson. + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + https://bugs.webkit.org/show_bug.cgi?id=34005 + + QTMovieWin is now QTMovieGWorld. + * FullscreenVideoController.cpp: + (FullscreenVideoController::movie): + * FullscreenVideoController.h: + +2010-05-06 Adam Roben <aroben@apple.com> + + Bail out of WebView::paint when there's nothing to paint + + Fixes <http://webkit.org/b/38670> <rdar://problem/7947105> REGRESSION + (r58067): Crash in WebView::paint when Web Inspector is docked and + window is resized so small that WebView disappears + + When the WebView is 0-sized, ensureBackingStore() bails out without + creating a bitmap, leaving m_backingStoreBitmap null. Before r58067, + m_backingStoreBitmap was an HBITMAP, so we were happily passing along + a null HBITMAP to various Windows APIs. These calls would fail but not + crash. r58067 changed m_backingStoreBitmap to a RefCountedHBITMAP, and + dereferencing a null RefCountedHBITMAP* of course crashes. + + Reviewed by Steve Falkenburg. + + * WebView.cpp: + (WebView::paint): Bail if the rect to paint is empty. + +2010-05-06 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + WebFrame::paintDocumentRectToContext paints content at the wrong location + https://bugs.webkit.org/show_bug.cgi?id=38651 + + * WebFrame.cpp: + (WebFrame::paintDocumentRectToContext): + +2010-05-05 Stuart Morgan <stuartmorgan@chromium.org> + + Reviewed by Darin Fisher. + + Update setFocus for the new boolean argument; no behavioral change. + + https://bugs.webkit.org/show_bug.cgi?id=37961 + + * WebCoreSupport/EmbeddedWidget.cpp: + (EmbeddedWidget::setFocus): + * WebCoreSupport/EmbeddedWidget.h: + +2010-05-03 Abhishek Arya <inferno@chromium.org> + + Reviewed by Adam Barth. + + Add support for controlling clipboard access from javascript. + Clipboard access from javascript is disabled by default. + https://bugs.webkit.org/show_bug.cgi?id=27751 + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::javaScriptCanAccessClipboard): + (WebPreferences::setJavaScriptCanAccessClipboard): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-05-03 Jens Alfke <snej@chromium.org> + + Reviewed by Darin Fisher. + + [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient + https://bugs.webkit.org/show_bug.cgi?id=38397 + + No tests (functionality is exposed only through native WebKit API.) + + * WebFrame.h: + +2010-04-30 Jon Honeycutt <jhoneycutt@apple.com> + + Caret may fail to blink if a focus handler brings up a modal dialog + https://bugs.webkit.org/show_bug.cgi?id=38372 + + Reviewed by Darin Adler. + + * WebView.cpp: + (WebView::handleMouseEvent): + If the message is WM_CANCELMODE, which indicates that we our capturing + of mouse events has been cancelled, tell the EventHandler. + It's possible to re-enter this function if handling a mouse event allows + the message loop to run; moved up the call to setMouseActivated(), so + that if we do re-enter this function, the later mouse event will not be + considered as activating the window. + (WebView::WebViewWndProc): + Handle WM_CANCELMODE by calling handleMouseEvent(). + +2010-04-29 Anders Carlsson <andersca@apple.com> + + Reviewed by Dan Bernstein. + + First part of + https://bugs.webkit.org/show_bug.cgi?id=20784 + move npapi.h to C99 integer types. + + * WebKit.vcproj/WebKit.vcproj: + +2010-04-28 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler. + + Fix for <rdar://problem/7474349> + + Add a synchronous display mechanism for WKCACFLayerRenderer. + + * Interfaces/IWebViewPrivate.idl: + * Interfaces/WebKit.idl: + * WebView.cpp: + (WebView::WebView): + (WebView::updateRootLayerContents): + (WebView::nextDisplayIsSynchronous): + * WebView.h: + +2010-04-28 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Maciej Stachowiak. + + WebView drawing code may access null backing store dirty region + https://bugs.webkit.org/show_bug.cgi?id=38245 + <rdar://problem/7916101> REGRESSION (r58067): All loaded pages fail to display after running iBench HTML test (intermittent) + + * WebView.cpp: + (WebView::updateBackingStore): Add null check for m_backingStoreDirtyRegion. + +2010-04-27 Jon Honeycutt <jhoneycutt@apple.com> + + <rdar://problem/7911140> Hitting the "delete" key goes back twice + + Reviewed by Maciej Stachowiak. + + * WebView.cpp: + (WebView::keyDown): + Return true if we navigated back or forward from the key event to + prevent the event from being propagated further. + +2010-04-25 Sam Weinig <sam@webkit.org> + + Reviewed by Maciej Stachowiak. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=38097 + Disentangle initializing the main thread from initializing threading + + * WebKitClassFactory.cpp: + (WebKitClassFactory::WebKitClassFactory): Add call to initializeMainThread. + * WebView.cpp: + (WebView::WebView): Ditto. + +2010-04-25 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: inspector client shouldn't check if it can be opened + docked if it is already in that state. + + https://bugs.webkit.org/show_bug.cgi?id=37946 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorFrontendClient::WebInspectorFrontendClient): + (WebInspectorFrontendClient::showWindowWithoutNotifications): + * WebCoreSupport/WebInspectorClient.h: + +2010-04-24 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Sam Weinig. + + Typo in Geolocation code causes crashes when updates are stopped + https://bugs.webkit.org/show_bug.cgi?id=38089 + <rdar://problem/7904104> Crash closing geolocation tab after allowing to use geolocation + + * WebCoreSupport/WebGeolocationControllerClient.cpp: + (WebGeolocationControllerClient::stopUpdating): Call unregister instead of register. + +2010-04-23 Andy Estes <aestes@apple.com> + + Rubber stamped by Steve Falkenburg. + + Roll out http://trac.webkit.org/changeset/55385. + + <rdar://problem/7884444> + + * Interfaces/IWebUIDelegatePrivate.idl: + * Interfaces/WebKit.idl: + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::createPlugin): + +2010-04-22 Dave Moore <davemoore@chromium.org> + + Reviewed by Dimitri Glazkov. + + Added notification when the favicons for a page are changed + from a script. + The Document object will notify the frame loader, which will + notify the client. Implementations of FrameLoaderClient will + have to add one method; dispatchDidChangeIcons(). + + https://bugs.webkit.org/show_bug.cgi?id=33812 + + * Interfaces/IWebFrameLoadDelegatePrivate2.idl: + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::dispatchDidChangeIcons): + * WebCoreSupport/WebFrameLoaderClient.h: + * WebFrame.cpp: + (WebFrame::didChangeIcons): + * WebFrame.h: + +2010-04-22 Adam Barth <abarth@webkit.org> + + Unreviewed, rolling out r58069. + http://trac.webkit.org/changeset/58069 + https://bugs.webkit.org/show_bug.cgi?id=27751 + + Broke compile on Windows. + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-04-22 Abhishek Arya <inferno@chromium.org> + + Reviewed by Adam Barth. + + Add support for controlling clipboard access from javascript. + Clipboard access from javascript is disabled by default. + https://bugs.webkit.org/show_bug.cgi?id=27751 + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::javaScriptCanAccessClipboard): + (WebPreferences::setJavaScriptCanAccessClipboard): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-04-21 Andy Estes <aestes@apple.com> + + Reviewed by Maciej Stachowiak. + + Reference count WebView's backing store bitmap to prevent + deleteBackingStore() from freeing the bitmap while it is still being + referenced by Core Animation. + + https://bugs.webkit.org/show_bug.cgi?id=37954 + + * WebView.cpp: + (WebView::ensureBackingStore): + (WebView::addToDirtyRegion): + (WebView::scrollBackingStore): + (WebView::updateBackingStore): + (WebView::paint): + (WebView::backingStore): + (releaseBackingStoreCallback): deref m_backingStoreBitmap once Core + Animation has dropeed its reference to the memory. + (WebView::updateRootLayerContents): ref m_backingStoreBitmap before + passing the memory to Core Animation to prevent deleteBackingStore() + from freeing it while it is still referenced by CA. + * WebView.h: Make m_backingStoreBitmap a RefCountedGDIHandle<HBITMAP>, + and make m_backingStoreDirtyRegion a RefCountedGDIHandle<HRGN>. + +2010-04-20 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Factor DocumentWriter out of FrameLoader + https://bugs.webkit.org/show_bug.cgi?id=37175 + + Update these callsites because the method moved to DocumentWriter. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::receivedData): + +2010-04-20 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Change a parameter type of chooseIconForFiles() + https://bugs.webkit.org/show_bug.cgi?id=37504 + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::chooseIconForFiles): + * WebCoreSupport/WebChromeClient.h: + +2010-04-16 Gavin Barraclough <barraclough@apple.com> + + Reviewed by NOBODY (Windows build fix). + + * WebFrame.cpp: + (WebFrame::stringByEvaluatingJavaScriptInScriptWorld): + * WebView.cpp: + (WebView::stringByEvaluatingJavaScriptFromString): + +2010-04-16 Adam Roben <aroben@apple.com> + + Make it possible for clients to instantiate a WebUserContentURLPattern + + Reviewed by Tim Hatcher. + + * ForEachCoClass.h: Added WebUserContentURLPattern to the FOR_EACH_COCLASS macro, which + lists all our instantiatable classes. + + * WebKitClassFactory.cpp: Added a now-required #include. + +2010-04-15 Adam Roben <aroben@apple.com> + + Expose UserContentURLPattern as WebKit SPI + + Fixes <http://webkit.org/b/37354>. + + Reviewed by Tim Hatcher. + + * Interfaces/IWebUserContentURLPattern.idl: Added. + + * Interfaces/WebKit.idl: Added WebUserContentURLPattern. + + * WebKit.vcproj/Interfaces.vcproj: Added IWebUserContentURLPattern. + + * WebKit.vcproj/WebKit.vcproj: Added WebUserContentURLPattern. + + * WebUserContentURLPattern.cpp: Added. + (WebUserContentURLPattern::WebUserContentURLPattern): + (WebUserContentURLPattern::~WebUserContentURLPattern): + (WebUserContentURLPattern::createInstance): + (WebUserContentURLPattern::AddRef): + (WebUserContentURLPattern::Release): + (WebUserContentURLPattern::QueryInterface): + Standard COM implementations. + + (WebUserContentURLPattern::parse): Parse the string into a + UserContentURLPattern and store it. + + (WebUserContentURLPattern::isValid): + (WebUserContentURLPattern::scheme): + (WebUserContentURLPattern::host): + (WebUserContentURLPattern::matchesSubdomains): + Call through to UserContentURLPattern. + + * WebUserContentURLPattern.h: Added. + +2010-04-14 Adam Roben <aroben@apple.com> + + Expose DOMWrapperWorld::unregisterWorld as WebKit SPI on Windows + + Fixes <http://webkit.org/b/37619>. + + Reviewed by Steve Falkenburg. + + * Interfaces/IWebScriptWorld.idl: Added unregisterWorld. + + * Interfaces/WebKit.idl: Touched to force a build. + + * WebScriptWorld.cpp: + (WebScriptWorld::unregisterWorld): + * WebScriptWorld.h: + Added. Just calls through to DOMWrapperWorld::unregisterWorld. + +2010-04-12 Timothy Hatcher <timothy@apple.com> + + SecurityOrigin needs a way to remove individual OriginAccessEntries + https://bugs.webkit.org/show_bug.cgi?id=37449 + + Reviewed by Dave Hyatt. + + * Interfaces/IWebViewPrivate.idl: + * WebView.cpp: + (WebView::removeOriginAccessWhitelistEntry): Call SecurityOrigin::removeOriginAccessWhitelistEntry. + * WebView.h: Added removeOriginAccessWhitelistEntry. + +2010-04-13 Timothy Hatcher <timothy@apple.com> + + Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry. + And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists. + + SecurityOrigin needs a way to remove individual OriginAccessEntries + https://bugs.webkit.org/show_bug.cgi?id=37449 + + Reviewed by Dave Hyatt. + + * Interfaces/IWebViewPrivate.idl: + * WebView.cpp: + (WebView::addOriginAccessWhitelistEntry): + (WebView::resetOriginAccessWhitelists): + * WebView.h: + +2010-04-11 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r57468. + http://trac.webkit.org/changeset/57468 + https://bugs.webkit.org/show_bug.cgi?id=37433 + + Broke the world... Must have applied the patch wrong + (Requested by abarth on #webkit). + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::receivedData): + +2010-04-11 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Factor DocumentWriter out of FrameLoader + https://bugs.webkit.org/show_bug.cgi?id=37175 + + Update these callsites because the method moved to DocumentWriter. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::receivedData): + +2010-04-09 Adam Roben <aroben@apple.com> + + Windows Debug/Release build fix after r57244 + + * WebKit.vcproj/WebKit.vcproj: Don't delay-load QuartzCore.dll or + QuartzCoreInterface.dll in any configurations. r57244 made this change + only for Debug_Internal. + +2010-04-08 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Darin Adler. + + WebView::isLoading should null check m_mainFrame + https://bugs.webkit.org/show_bug.cgi?id=37294 + + * WebView.cpp: + (WebView::isLoading): + +2010-04-07 Chris Marrin <cmarrin@apple.com> + + Reviewed by Steve Falkenburg. + + Remove QuartzCoreInterface from the build + + No longer needed since QuartzCore.dll is now included in the latest Safari release (4.0.5). + + * WebKit.vcproj/WebKit.vcproj:Removed delay load for QuartzCore and QuartzCoreInterface + +2010-04-07 Andrey Kosyakov <caseq@chromium.org> + + Reviewed by Yury Semikhatsky. + + Removed redundant FrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest() + https://bugs.webkit.org/show_bug.cgi?id=36949 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + * WebCoreSupport/WebFrameLoaderClient.h: + +2010-04-05 Peter Nelson <charn.opcode@gmail.com> + + Reviewed by Eric Seidel. + + Fixed style errors in DOMCoreClasses.h to bring it up to scratch + for https://bugs.webkit.org/show_bug.cgi?id=34979. + + * DOMCoreClasses.h: + (DOMObject::throwException): + (DOMObject::callWebScriptMethod): + (DOMObject::evaluateWebScript): + (DOMObject::removeWebScriptKey): + (DOMObject::stringRepresentation): + (DOMObject::webScriptValueAtIndex): + (DOMObject::setWebScriptValueAtIndex): + (DOMObject::setException): + (DOMNodeList::throwException): + (DOMNodeList::callWebScriptMethod): + (DOMNodeList::evaluateWebScript): + (DOMNodeList::removeWebScriptKey): + (DOMNodeList::stringRepresentation): + (DOMNodeList::webScriptValueAtIndex): + (DOMNodeList::setWebScriptValueAtIndex): + (DOMNodeList::setException): + (DOMDocument::throwException): + (DOMDocument::callWebScriptMethod): + (DOMDocument::evaluateWebScript): + (DOMDocument::removeWebScriptKey): + (DOMDocument::stringRepresentation): + (DOMDocument::webScriptValueAtIndex): + (DOMDocument::setWebScriptValueAtIndex): + (DOMDocument::setException): + (DOMDocument::nodeName): + (DOMDocument::nodeValue): + (DOMDocument::setNodeValue): + (DOMDocument::nodeType): + (DOMDocument::parentNode): + (DOMDocument::childNodes): + (DOMDocument::firstChild): + (DOMDocument::lastChild): + (DOMDocument::previousSibling): + (DOMDocument::nextSibling): + (DOMDocument::attributes): + (DOMDocument::ownerDocument): + (DOMDocument::insertBefore): + (DOMDocument::replaceChild): + (DOMDocument::removeChild): + (DOMDocument::appendChild): + (DOMDocument::hasChildNodes): + (DOMDocument::cloneNode): + (DOMDocument::isSupported): + (DOMDocument::namespaceURI): + (DOMDocument::prefix): + (DOMDocument::setPrefix): + (DOMDocument::localName): + (DOMDocument::hasAttributes): + (DOMDocument::isSameNode): + (DOMDocument::isEqualNode): + (DOMDocument::textContent): + (DOMDocument::setTextContent): + (DOMElement::throwException): + (DOMElement::callWebScriptMethod): + (DOMElement::evaluateWebScript): + (DOMElement::removeWebScriptKey): + (DOMElement::stringRepresentation): + (DOMElement::webScriptValueAtIndex): + (DOMElement::setWebScriptValueAtIndex): + (DOMElement::setException): + (DOMElement::nodeName): + (DOMElement::nodeValue): + (DOMElement::setNodeValue): + (DOMElement::nodeType): + (DOMElement::parentNode): + (DOMElement::childNodes): + (DOMElement::firstChild): + (DOMElement::lastChild): + (DOMElement::previousSibling): + (DOMElement::nextSibling): + (DOMElement::attributes): + (DOMElement::ownerDocument): + (DOMElement::insertBefore): + (DOMElement::replaceChild): + (DOMElement::removeChild): + (DOMElement::appendChild): + (DOMElement::hasChildNodes): + (DOMElement::cloneNode): + (DOMElement::isSupported): + (DOMElement::namespaceURI): + (DOMElement::prefix): + (DOMElement::setPrefix): + (DOMElement::localName): + (DOMElement::hasAttributes): + (DOMElement::isSameNode): + (DOMElement::isEqualNode): + (DOMElement::textContent): + (DOMElement::setTextContent): + +2010-04-05 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=37111 + <rdar://problem/7790327> Draw replacement text when plug-in host crashes + + * WebCoreLocalizedStrings.cpp: (WebCore::crashedPluginText): Added a stub string for plug-in + failure. + +2010-04-02 Rafael Weinstein <rafaelw@chromium.org> + + Reviewed by Adam Barth. + + Clean up unused calls after changes to checkPermission and requestPermission argument lists. + + * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: + (WebDesktopNotificationsDelegate::requestPermission): + * WebCoreSupport/WebDesktopNotificationsDelegate.h: + +2010-04-01 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Added layerTreeAsText function to DRT (for Mac) + https://bugs.webkit.org/show_bug.cgi?id=36782 + + This is the WebKit side for Windows. It plumbs the + call from WebCore to DRT. + + * Interfaces/IWebFramePrivate.idl: + * WebFrame.cpp:WebKit (Windows) side of plumbing + (WebFrame::layerTreeAsText): + * WebFrame.h: + +2010-03-31 Marcus Bulach <bulach@chromium.org> + + Reviewed by Jeremy Orlow. + + Adds Geolocation param for cancelGeolocationPermissionRequestForFrame. + https://bugs.webkit.org/show_bug.cgi?id=35031 + + * WebCoreSupport/WebChromeClient.h: + (WebChromeClient::cancelGeolocationPermissionRequestForFrame): + +2010-03-30 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig. + + https://bugs.webkit.org/show_bug.cgi?id=36866 + Move CString to WTF + + * WebDownload.cpp: + * WebDownloadCFNet.cpp: + * WebDownloadCurl.cpp: + * WebHistoryItem.cpp: + * WebLocalizableStrings.cpp: + * WebMutableURLRequest.cpp: + * WebPreferences.cpp: + (WebPreferences::migrateWebKitPreferencesToCFPreferences): + * WebView.cpp: + +2010-03-30 Adam Roben <aroben@apple.com> + + Windows build fix + + * Interfaces/WebKit.idl: Touched this to force a build. + +2010-03-29 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adele Peterson. + + Default value of accelerated compositing should be false for Windows + https://bugs.webkit.org/show_bug.cgi?id=36805 + + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + +2010-03-29 Rafael Weinstein <rafaelw@chromium.org> + + Reviewed by Adam Barth. + + Change NotificationPresenter::checkPermission() to take the source frames full KURL, + rather than its SecurityOrigin. This will aid chromium in having more fine grained + permissions to control notification spam. + + * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: + (WebDesktopNotificationsDelegate::checkPermission): + * WebCoreSupport/WebDesktopNotificationsDelegate.h: + +2010-03-26 Kenneth Rohde Christiansen <kenneth@webkit.org> + + Reviewed by Antti Koivisto. + + Change method name due to it dealing with both flattening + of frame sets and inner frames. + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::isFrameFlatteningEnabled): + (WebPreferences::setFrameFlatteningEnabled): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-03-24 Jon Honeycutt <jhoneycutt@apple.com> + + <rdar://problem/7780798> Missing plug-ins should be represented by text + only, instead of lego block + + https://bugs.webkit.org/show_bug.cgi?id=36583 + + Reviewed by Dan Bernstein. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::createPlugin): + Return 0 if we failed to initialize the plug-in, which causes the new + "missing plug-in" text to draw. + +2010-03-24 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Make Icon::createIconForFiles() optional. + https://bugs.webkit.org/show_bug.cgi?id=35072 + + - Rename iconForFiles() to chooseIconForFiles(). + - Call Icon::createIconForFiles() from chooseIconForFiles(). + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::chooseIconForFiles): + * WebCoreSupport/WebChromeClient.h: + +2010-03-22 Darin Adler <darin@apple.com> + + * WebCoreLocalizedStrings.cpp: + (WebCore::missingPluginText): Fixed localization helper text to match the same + string from Mac WebKit. + +2010-03-22 Kevin Decker <kdecker@apple.com> + + Reviewed by John Sullivan. + + https://bugs.webkit.org/show_bug.cgi?id=36328 + + * WebCoreLocalizedStrings.cpp: + (WebCore::missingPluginText): Added. + +2010-03-17 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + Missing support for showing compositing layers borders and repaint count on Windows. + <rdar://problem/7760736> + <https://bugs.webkit.org/show_bug.cgi?id=36197> + + * Interfaces/IWebPreferencesPrivate.idl: + * WebPreferenceKeysPrivate.h: + * WebPreferences.cpp: + (WebPreferences::initializeDefaultSettings): + (WebPreferences::showDebugBorders): + (WebPreferences::setShowDebugBorders): + (WebPreferences::showRepaintCounter): + (WebPreferences::setShowRepaintCounter): + * WebPreferences.h: + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-03-16 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Introduce InspectorFrontendClient that provides InspectorFrontend with an interface to the embedder. InspectorClient now serves as a delegate for InspectorController and does not contain methods for managing inspector frontend window. That allows to create remote InspectorFrontendHost. + + Introduce InspectorFrontendClient that would provide InspectorFrontend with an interface to the embedder + https://bugs.webkit.org/show_bug.cgi?id=35036 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::WebInspectorClient): + (WebInspectorClient::~WebInspectorClient): + (WebInspectorClient::openInspectorFrontend): + (WebInspectorClient::highlight): + (WebInspectorClient::hideHighlight): + (WebInspectorClient::updateHighlight): + (WebInspectorFrontendClient::WebInspectorFrontendClient): + (WebInspectorFrontendClient::~WebInspectorFrontendClient): + (WebInspectorFrontendClient::frontendLoaded): + (WebInspectorFrontendClient::localizedStringsURL): + (WebInspectorFrontendClient::hiddenPanels): + (WebInspectorFrontendClient::bringToFront): + (WebInspectorFrontendClient::closeWindow): + (WebInspectorFrontendClient::attachWindow): + (WebInspectorFrontendClient::detachWindow): + (WebInspectorFrontendClient::setAttachedWindowHeight): + (WebInspectorFrontendClient::inspectedURLChanged): + (WebInspectorFrontendClient::closeWindowWithoutNotifications): + (WebInspectorFrontendClient::showWindowWithoutNotifications): + (WebInspectorFrontendClient::destroyInspectorView): + (WebInspectorFrontendClient::updateWindowTitle): + (WebInspectorFrontendClient::onGetMinMaxInfo): + (WebInspectorFrontendClient::onSize): + (WebInspectorFrontendClient::onClose): + (WebInspectorFrontendClient::onSetFocus): + (WebInspectorFrontendClient::onWebViewWindowPosChanging): + (WebInspectorWndProc): + (WebInspectorFrontendClient::windowReceivedMessage): + * WebCoreSupport/WebInspectorClient.h: + (WebInspectorClient::frontendClosing): + * WebInspector.cpp: + (WebInspector::attach): + (WebInspector::detach): + +2010-03-14 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + WebKit part of removing support for legacy versions of Core Graphics + + * WebKitClassFactory.cpp: + (WebKitClassFactory::WebKitClassFactory): Removed call to populateFontDatabase(). + * WebKitGraphics.cpp: + (makeFont): Ditto. + * WebTextRenderer.cpp: + (WebTextRenderer::registerPrivateFont): Removed call to wkAddFontsAtPath(). + +2010-03-12 Enrica Casucci <enrica@apple.com> + + Fixed broken build on Windows. + Added contditional compilation for accelerated compositing. + + * WebView.cpp: + (WebView::deleteBackingStore): + (WebView::addToDirtyRegion): + (WebView::updateBackingStore): + +2010-03-12 Beth Dakin <bdakin@apple.com> + + Reviewed by Simon Fraser. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=34942 Fullscreen + API naming is inconsistent + -and corresponding- + <rdar://problem/7729165> + + This patch changes all occurrences of "fullScreen" to the more + popular "fullscreen." + + * FullscreenVideoController.cpp: + (FullscreenVideoController::onMouseDown): + (FullscreenVideoController::onMouseMove): + (FullscreenVideoController::onMouseUp): + * FullscreenVideoController.h: + (FullscreenVideoController::fullscreenToHUDCoordinates): + +2010-03-12 Beth Dakin <bdakin@apple.com> + + Reviewed by Adam Roben. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=33739 Fullscreen + video HUD stays on top when switching to another window (e.g. via + Alt-Tab) + -and corresponding- + <rdar://problem/7547574> + + The HUD was always on top because it had the WS_EX_TOPMOST style. + So I removed the style and made m_videoWindow the owner of + m_hudWindow. This keeps m_hudWindow on top only when m_videoWindow + is the focused window. + + * FullscreenVideoController.cpp: + (FullscreenVideoController::exitFullscreen): ASSERT that movie()->exitFullscreen() also destroyed the hud. + (FullscreenVideoController::createHUDWindow): + +2010-03-12 Enrica Casucci <enrica@apple.com> + + Reviewed by Simon Fraser. + + Content of 3D tests appears at the bottom right corner sometimes. + <rdar://problem/7556244> + <https://bugs.webkit.org/show_bug.cgi?id=36027> + + See detailed comments in WebCore/ChangeLog. + + * WebView.cpp: + (WebView::deleteBackingStore): Reset the dirty flag when deleting the backing store. + (WebView::addToDirtyRegion): Set the dirty flag when adding dirty rectangles to the + backing store dirty region. + (WebView::updateBackingStore): Reset the dirty flag after painting into the backing store. + (WebView::setAcceleratedCompositing): Removed unnecessary call to updateRootLayerContents. + (WebView::updateRootLayerContents): Changed the way we pass parameters to setScrollFrame. + We are passing width and height of the view content together with the offset for the scrolling. + It was confusing to pass it all as a rectangle, when it is not a rectangle. + +2010-03-11 Aaron Boodman <aa@chromium.org> + + Kill WebDocument::applicationID() (part 1). + + Modify interface to WebCore::NotificationPresenter::checkPermission() + and remove implementation of WebDocument::applicationID(). Breaking + API changes will be in a subsequent change. + https://bugs.webkit.org/show_bug.cgi?id=35846 + + * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: + (WebDesktopNotificationsDelegate::checkPermission): + * WebCoreSupport/WebDesktopNotificationsDelegate.h: + +2010-03-11 Anders Carlsson <andersca@apple.com> + + Reviewed by David Hyatt. + + Remove invalidateContents, it isn't used and it never makes sense to only invalidate the contents. + + * WebCoreSupport/WebChromeClient.cpp: + * WebCoreSupport/WebChromeClient.h: + +2010-03-10 Eric Uhrhane <ericu@chromium.org> + + Reviewed by David Levin. + + The build fix for my patch on bug #35763 wasn't quite right--it removed + the call entirely, instead of replacing it with the new API. This adds + the call to Database::setIsAvailable. + + https://bugs.webkit.org/show_bug.cgi?id=35763 + + * WebView.cpp: Added a call to Database::setIsAvailable where change 55667 removed the old Settings API call <http://trac.webkit.org/changeset/55667>. + (WebView::notifyPreferencesChanged): + +2010-03-10 John Sullivan <sullivan@apple.com> + + Reviewed by Tim Hatcher. + + <rdar://problem/7735387> input type other than text won't work with autofill + <https://bugs.webkit.org/show_bug.cgi?id=35963> + + * WebFrame.cpp: + (WebFrame::elementDoesAutoComplete): + Return true for any text field that's not a password, rather than only + for TEXT type. + +2010-03-09 Brady Eidson <beidson@apple.com> + + Reviewed by Tim Hatcher. + + REGRESSION: WebInspector docking busted on Windows + <rdar://problem/7728433> and https://bugs.webkit.org/show_bug.cgi?id=35953 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::attachWindow): Use the InspectorController:: copy of the should attach settings key. + (WebInspectorClient::detachWindow): Ditto. + (WebInspectorClient::showWindowWithoutNotifications): Ditto. + +2010-03-09 John Sullivan <sullivan@apple.com> + + Fixed localized string key collision. update-webkit-localized-strings now + runs without errors. + + Reviewed by Adam Roben. + + * WebCoreLocalizedStrings.cpp: + (WebCore::AXMenuListPopupActionVerb): + Used LPCTSTR_UI_STRING_KEY for the 2nd use of "press". + +2010-03-08 Adam Treat <atreat@rim.com> + + Unreviewed build fix for Windows. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::invalidateContents): + +2010-03-02 Adam Treat <atreat@rim.com> + + Reviewed by Dave Hyatt. + + Adapt the win port to the refactoring of repaint methods. + + https://bugs.webkit.org/show_bug.cgi?id=34214 + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::invalidateContents): + (WebChromeClient::invalidateWindow): + (WebChromeClient::invalidateContentsAndWindow): + (WebChromeClient::invalidateContentsForSlowScroll): + * WebCoreSupport/WebChromeClient.h: + +2010-03-08 Daniel Bates <dbates@rim.com> + + Unreviewed, build fix. + + Attempt to fix the Windows builds by applying the corresponding change + made in bug #35763 <https://bugs.webkit.org/show_bug.cgi?id=35763>. + + * WebView.cpp: Removed call to settings->setDatabasesEnabled since this + setting no longer exists following changeset 55666 <http://trac.webkit.org/changeset/55666>. + (WebView::notifyPreferencesChanged): + +2010-03-07 Mark Rowe <mrowe@apple.com> + + Windows build fix. + + * WebKitPrefix.h: Include CoreFoundation/CoreFoundation.h from the Windows prefix header + since some WebCore headers rely on the types declared within being available via the prefix + header. + +2010-03-05 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Got rid of platformLayer use in WebView. + https://bugs.webkit.org/show_bug.cgi?id=35798 + + WKCACFLayer no longer depends on GraphicsLayer, so I got rid of + that dependency on WebView. Now WebChromeClient casts platformLayer + to WKCACFLayer which will always be the case on Windows. + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::attachRootGraphicsLayer): + * WebView.cpp: + (WebView::setRootChildLayer): + * WebView.h: + +2010-03-04 Beth Dakin <bdakin@apple.com> + + Reviewed by Anders Carlsson. + + WebCore::Page::setInstanceHandle() is now just + WebCore::setInstanceHandle() + + * WebKitDLL.cpp: + (DllMain): + +2010-03-03 Alice Liu <alice.liu@apple.com> + + Reviewed by Jon Honeycutt. + + Add a way to get an iframe's content frame + + * DOMCoreClasses.cpp: + (DOMElement::createInstance): + Added case for DOMHTMLIFrameElement + * DOMHTMLClasses.cpp: + Adding the few DOMHTMLIFrameElement functions definitions that have + distinct implementations (all others just call parent implementation) + (DOMHTMLIFrameElement::QueryInterface): + (DOMHTMLIFrameElement::contentFrame): + * DOMHTMLClasses.h: + Most of these function declarations have definitions that just call the parent implementation + (DOMHTMLIFrameElement::DOMHTMLIFrameElement): + (DOMHTMLIFrameElement::AddRef): + (DOMHTMLIFrameElement::Release): + (DOMHTMLIFrameElement::throwException): + (DOMHTMLIFrameElement::callWebScriptMethod): + (DOMHTMLIFrameElement::evaluateWebScript): + (DOMHTMLIFrameElement::removeWebScriptKey): + (DOMHTMLIFrameElement::stringRepresentation): + (DOMHTMLIFrameElement::webScriptValueAtIndex): + (DOMHTMLIFrameElement::setWebScriptValueAtIndex): + (DOMHTMLIFrameElement::setException): + (DOMHTMLIFrameElement::nodeName): + (DOMHTMLIFrameElement::nodeValue): + (DOMHTMLIFrameElement::setNodeValue): + (DOMHTMLIFrameElement::nodeType): + (DOMHTMLIFrameElement::parentNode): + (DOMHTMLIFrameElement::childNodes): + (DOMHTMLIFrameElement::firstChild): + (DOMHTMLIFrameElement::lastChild): + (DOMHTMLIFrameElement::previousSibling): + (DOMHTMLIFrameElement::nextSibling): + (DOMHTMLIFrameElement::attributes): + (DOMHTMLIFrameElement::ownerDocument): + (DOMHTMLIFrameElement::insertBefore): + (DOMHTMLIFrameElement::replaceChild): + (DOMHTMLIFrameElement::removeChild): + (DOMHTMLIFrameElement::appendChild): + (DOMHTMLIFrameElement::hasChildNodes): + (DOMHTMLIFrameElement::cloneNode): + (DOMHTMLIFrameElement::normalize): + (DOMHTMLIFrameElement::isSupported): + (DOMHTMLIFrameElement::namespaceURI): + (DOMHTMLIFrameElement::prefix): + (DOMHTMLIFrameElement::setPrefix): + (DOMHTMLIFrameElement::localName): + (DOMHTMLIFrameElement::hasAttributes): + (DOMHTMLIFrameElement::isSameNode): + (DOMHTMLIFrameElement::isEqualNode): + (DOMHTMLIFrameElement::textContent): + (DOMHTMLIFrameElement::setTextContent): + (DOMHTMLIFrameElement::tagName): + (DOMHTMLIFrameElement::getAttribute): + (DOMHTMLIFrameElement::setAttribute): + (DOMHTMLIFrameElement::removeAttribute): + (DOMHTMLIFrameElement::getAttributeNode): + (DOMHTMLIFrameElement::setAttributeNode): + (DOMHTMLIFrameElement::removeAttributeNode): + (DOMHTMLIFrameElement::getElementsByTagName): + (DOMHTMLIFrameElement::getAttributeNS): + (DOMHTMLIFrameElement::setAttributeNS): + (DOMHTMLIFrameElement::removeAttributeNS): + (DOMHTMLIFrameElement::getAttributeNodeNS): + (DOMHTMLIFrameElement::setAttributeNodeNS): + (DOMHTMLIFrameElement::getElementsByTagNameNS): + (DOMHTMLIFrameElement::hasAttribute): + (DOMHTMLIFrameElement::hasAttributeNS): + (DOMHTMLIFrameElement::focus): + (DOMHTMLIFrameElement::blur): + (DOMHTMLIFrameElement::idName): + (DOMHTMLIFrameElement::setIdName): + (DOMHTMLIFrameElement::title): + (DOMHTMLIFrameElement::setTitle): + (DOMHTMLIFrameElement::lang): + (DOMHTMLIFrameElement::setLang): + (DOMHTMLIFrameElement::dir): + (DOMHTMLIFrameElement::setDir): + (DOMHTMLIFrameElement::className): + (DOMHTMLIFrameElement::setClassName): + (DOMHTMLIFrameElement::innerHTML): + (DOMHTMLIFrameElement::setInnerHTML): + (DOMHTMLIFrameElement::innerText): + (DOMHTMLIFrameElement::setInnerText): + * Interfaces/DOMHTML.idl: + Added IDOMHTMLIFrameElement interface + +2010-03-03 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Export acceleratedCompositing flag in IWebPreferences. + https://bugs.webkit.org/show_bug.cgi?id=35610 + + * Interfaces/IWebPreferences.idl: + +2010-03-02 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler and Adam Roben. + + Tiny WebKit portion of fix for <rdar://problem/7485289> WebKit + crashes on systems that don't support CoreAnimation + + setHostWindow() no longer calls createRenderer(), so now that has + to be called manually. + + * WebView.cpp: + (WebView::setAcceleratedCompositing): + +2010-03-02 Adam Roben <aroben@apple.com> + + Add IWebViewPrivate::registerURLSchemeAsSecure + + Fixes <http://webkit.org/b/35580> <rdar://problem/7706407> Expose + SecurityOrigin::registerURLSchemeAsSecure as WebKit SPI + + Reviewed by Tim Hatcher. + + * Interfaces/WebKit.idl: Touched to force a build. + + * Interfaces/IWebViewPrivate.idl: + * WebView.cpp: + (WebView::registerURLSchemeAsSecure): + * WebView.h: + Added. Calls through to SecurityOrigin::registerURLSchemeAsSecure. + +2010-03-01 Jon Honeycutt <jhoneycutt@apple.com> + + Remove Windows line endings from some files. + + Rubber-stamped by Alice Liu. + + * Interfaces/IWebEmbeddedView.idl: + + * WebCoreSupport/EmbeddedWidget.cpp: + (EmbeddedWidget::create): + (EmbeddedWidget::~EmbeddedWidget): + (EmbeddedWidget::createWindow): + (EmbeddedWidget::invalidateRect): + (EmbeddedWidget::setFrameRect): + (EmbeddedWidget::frameRectsChanged): + (EmbeddedWidget::setFocus): + (EmbeddedWidget::show): + (EmbeddedWidget::hide): + (EmbeddedWidget::windowClipRect): + (EmbeddedWidget::setParent): + (EmbeddedWidget::attachToWindow): + (EmbeddedWidget::detachFromWindow): + (EmbeddedWidget::didReceiveResponse): + (EmbeddedWidget::didReceiveData): + (EmbeddedWidget::didFinishLoading): + (EmbeddedWidget::didFail): + + * WebCoreSupport/EmbeddedWidget.h: + (EmbeddedWidget::EmbeddedWidget): + +2010-03-01 Jon Honeycutt <jhoneycutt@apple.com> + + Some WebKit DOMNode API is unimplemented. + https://bugs.webkit.org/show_bug.cgi?id=35554 + + Reviewed by Alice Liu. + + * DOMCoreClasses.cpp: + (DOMNode::nextSibling): + Create a DOMNode to wrap m_node's next sibling, and assign it to the + out param 'result'. + (DOMNode::insertBefore): + Query for the DOMNode for newChild, and return early if we fail. Query + refChild for DOMNode. Call insertBefore(), passing the newChild's + WebCore node and refChild's WebCore node (if refChild is non-null). If + we successfully insert the child, fill the result out param with + newChild, ref it, and return S_OK. Otherwise, return E_FAIL. + (DOMNode::removeChild): + Query oldChild for DOMNode. If we fail, return E_FAIL. Call + removeChild(), passing the node's WebCore node. If this fails, return + E_FAIL. Otherwise, fill the result out param with oldChild, ref it, and + return S_OK. + +2010-03-01 Jakob Petsovits <jpetsovits@rim.com> + + Reviewed by Adam Barth. + + Adapt to the new ZoomMode enum. + https://bugs.webkit.org/show_bug.cgi?id=35347 + + * WebFrame.cpp: + (WebFrame::setTextSizeMultiplier): + * WebView.cpp: + (WebView::setZoomMultiplier): + (WebView::zoomMultiplier): + (WebView::canMakeTextLarger): + (WebView::makeTextLarger): + (WebView::canMakeTextSmaller): + (WebView::makeTextSmaller): + (WebView::notifyPreferencesChanged): + +2010-02-26 Jon Honeycutt <jhoneycutt@apple.com> + + <rdar://problem/7703368> IWebUIDelegatePrivate::embeddedViewWithArguments + is passed wrong arguments + + Reviewed by Adam Roben. + + * Interfaces/IWebUIDelegatePrivate.idl: + Update copyright strings. Added a new key for the plug-in source URL. + + * Interfaces/WebKit.idl: + Update copyright strings. + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::createPlugin): + Pass the URL of the plug-in as the source URL. Pass the document's + base URI for the base URL. + +2010-02-23 Brady Eidson <beidson@apple.com> + + Reviewed by Tim Hatcher and Pavel Feldman. + + Regression (r55107) - WebInspector docking is busted. + https://bugs.webkit.org/show_bug.cgi?id=35274 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::showWindowWithoutNotifications): Swap the order of the "should attach?" check + to get the expected behavior. + +2010-02-23 Steve Block <steveblock@google.com> + + Reviewed by Darin Adler. + + Adds ChromeClient::cancelGeolocationPermissionRequestForFrame + https://bugs.webkit.org/show_bug.cgi?id=34962 + + This method is required so that a Geolocation object can cancel an + asynchronous permission request. This allows the chrome client to cancel + any UI it is showing for the permission request. + + * WebCoreSupport/WebChromeClient.h: + (WebChromeClient::cancelGeolocationPermissionRequestForFrame): + +2010-02-22 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Darin Adler. + + WebKit on Windows should pick up system setting changes without requiring explicit API calls + https://bugs.webkit.org/show_bug.cgi?id=35269 + + * WebKit.vcproj/WebKit.def: Removed WebKitSystemParameterChanged. + * WebKit.vcproj/WebKit_debug.def: Removed WebKitSystemParameterChanged. + * WebKitGraphics.cpp: Removed WebKitSystemParameterChanged. + * WebKitGraphics.h: Removed WebKitSystemParameterChanged. + * WebView.cpp: + (systemParameterChanged): Call through to wkSystemFontSmoothingChanged for font changes. + (WebView::windowReceivedMessage): Pick up WM_SETTINGCHANGE from windowReceivedMessage. + +2010-02-22 Brady Eidson <beidson@apple.com> + + Reviewed by Tim Hatcher. + + Disable WebView docking to views that are too small. + <rdar://problem/7248409> and https://bugs.webkit.org/show_bug.cgi?id=35254 + + * WebCoreSupport/WebInspectorClient.cpp: + (WebInspectorClient::showWindowWithoutNotifications): No matter the preference, don't open the inspector + window attached if WebCore says it shouldn't be attached. + +2010-02-17 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Dan Bernstein. + + WebKit on Windows needs a mechanism to listen for WM_SETTINGCHANGED messages + https://bugs.webkit.org/show_bug.cgi?id=35076 + + * WebKit.vcproj/WebKit.def: Added WebKitSystemParameterChanged. + * WebKit.vcproj/WebKit_debug.def: Added WebKitSystemParameterChanged. + * WebKitGraphics.cpp: + (WebKitSystemParameterChanged): Call through to wkSystemFontSmoothingChanged for font smoothing changes. + * WebKitGraphics.h: Added WebKitSystemParameterChanged. + +2010-02-17 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin, Darin Fisher, Simon Hausmann. + + When a live iframe element is moved between pages, it still depends on the old page. + https://bugs.webkit.org/show_bug.cgi?id=34382 + + * WebCoreSupport/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::didTransferChildFrameToNewDocument): + Added empty implementation of a new virtual method. + + * WebCoreSupport/WebFrameLoaderClient.h: + +2010-02-17 Kent Tamura <tkent@chromium.org> + + Reviewed by Eric Seidel. + + Introduces new Icon loading interface in order to support + asynchronous loading. + https://bugs.webkit.org/show_bug.cgi?id=32054 + + Add an empty implementation of ChromeClient::iconForFiles(). + + * WebCoreSupport/WebChromeClient.cpp: + (WebChromeClient::iconForFiles): + * WebCoreSupport/WebChromeClient.h: + +2010-02-17 Shinichiro Hamaji <hamaji@chromium.org> + + Unreviewed. Touch WebKit.idl to fix the build. + + [Win] Implement test functions for printing + https://bugs.webkit.org/show_bug.cgi?id=34570 + + * Interfaces/WebKit.idl: + +2010-02-17 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Eric Seidel. + + [Win] Implement test functions for printing + https://bugs.webkit.org/show_bug.cgi?id=34570 + + * Interfaces/IWebFramePrivate.idl: + * WebFrame.cpp: + (WebFrame::pageNumberForElementById): + (WebFrame::numberOfPages): + * WebFrame.h: + +2010-02-16 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Generalize delayed plug-in start for background tabs for use for other media + https://bugs.webkit.org/show_bug.cgi?id=34981 + + * WebView.cpp: + (WebView::setCanStartPlugins): Change to call setCanStartMedia. + In a later patch we can change the of the public function in the IDL file too, + but for now this should be enough. + +2010-02-15 Adam Roben <aroben@apple.com> + + Add IWebFramePrivate::visibleContentRect + + Fixes <http://webkit.org/b/34956> Add API to get a WebFrame's visible + content rect + + Reviewed by Jon Honeycutt. + + * Interfaces/IWebFramePrivate.idl: Added visibleContentRect. + + * Interfaces/WebKit.idl: Touched to force a build. + + * WebFrame.cpp: + (WebFrame::visibleContentRect): + * WebFrame.h: + Added. Calls through to FrameView::visibleContentRect. + +2010-02-12 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Adam Roben. + + onmouseout fired when moving over tooltip on Windows + https://bugs.webkit.org/show_bug.cgi?id=16794 + <rdar://5762038>. + + Add WS_EX_TRANSPARENT to out tooltip HWND so it isn't subject to hit testing, and when + you mouse over the tooltip, it doesn't send a mouseout to the web content. + + * WebView.cpp: + (WebView::initializeToolTipWindow): Add WS_EX_TRANSPARENT. + 2010-02-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> Reviewed by Kenneth Rohde Christiansen. diff --git a/WebKit/win/DOMCSSClasses.cpp b/WebKit/win/DOMCSSClasses.cpp index c6190ec..b89053b 100644 --- a/WebKit/win/DOMCSSClasses.cpp +++ b/WebKit/win/DOMCSSClasses.cpp @@ -91,7 +91,7 @@ HRESULT STDMETHODCALLTYPE DOMCSSStyleDeclaration::cssText( HRESULT STDMETHODCALLTYPE DOMCSSStyleDeclaration::setCssText( /* [in] */ BSTR cssText) { - WebCore::String cssTextString(cssText); + WTF::String cssTextString(cssText); // FIXME: <rdar://5148045> return DOM exception info WebCore::ExceptionCode ec; m_style->setCssText(cssTextString, ec); @@ -102,8 +102,8 @@ HRESULT STDMETHODCALLTYPE DOMCSSStyleDeclaration::getPropertyValue( /* [in] */ BSTR propertyName, /* [retval][out] */ BSTR* result) { - WebCore::String propertyNameString(propertyName); - WebCore::String value = m_style->getPropertyValue(propertyNameString); + WTF::String propertyNameString(propertyName); + WTF::String value = m_style->getPropertyValue(propertyNameString); *result = SysAllocStringLen(value.characters(), value.length()); if (value.length() && !*result) return E_OUTOFMEMORY; @@ -139,9 +139,9 @@ HRESULT STDMETHODCALLTYPE DOMCSSStyleDeclaration::setProperty( /* [in] */ BSTR value, /* [in] */ BSTR priority) { - WebCore::String propertyNameString(propertyName); - WebCore::String valueString(value); - WebCore::String priorityString(priority); + WTF::String propertyNameString(propertyName); + WTF::String valueString(value); + WTF::String priorityString(priority); // FIXME: <rdar://5148045> return DOM exception info WebCore::ExceptionCode code; m_style->setProperty(propertyNameString, valueString, priorityString, code); diff --git a/WebKit/win/DOMCoreClasses.cpp b/WebKit/win/DOMCoreClasses.cpp index 8ea7c84..c6b8823 100644 --- a/WebKit/win/DOMCoreClasses.cpp +++ b/WebKit/win/DOMCoreClasses.cpp @@ -48,6 +48,7 @@ #include <WebCore/HTMLTextAreaElement.h> #include <WebCore/NodeList.h> #include <WebCore/RenderObject.h> +#include <WebCore/RenderTreeAsText.h> #pragma warning(pop) #include <initguid.h> @@ -59,14 +60,14 @@ DEFINE_GUID(IID_DOMElement, 0x3b0c0eff, 0x478b, 0x4b0b, 0x82, 0x90, 0xd2, 0x32, // "DOMObject" exists both in the WebCore namespace and unnamespaced in this // file, which leads to ambiguities if we say "using namespace WebCore". using namespace WebCore::HTMLNames; -using WebCore::AtomicString; +using WTF::AtomicString; using WebCore::BString; using WebCore::Element; using WebCore::ExceptionCode; using WebCore::FontDescription; using WebCore::Frame; using WebCore::IntRect; -using WebCore::String; +using WTF::String; // DOMObject - IUnknown ------------------------------------------------------- @@ -118,7 +119,7 @@ HRESULT STDMETHODCALLTYPE DOMNode::nodeValue( { if (!m_node) return E_FAIL; - WebCore::String nodeValueStr = m_node->nodeValue(); + WTF::String nodeValueStr = m_node->nodeValue(); *result = SysAllocStringLen(nodeValueStr.characters(), nodeValueStr.length()); if (nodeValueStr.length() && !*result) return E_OUTOFMEMORY; @@ -184,10 +185,15 @@ HRESULT STDMETHODCALLTYPE DOMNode::previousSibling( } HRESULT STDMETHODCALLTYPE DOMNode::nextSibling( - /* [retval][out] */ IDOMNode** /*result*/) + /* [retval][out] */ IDOMNode** result) { - ASSERT_NOT_REACHED(); - return E_NOTIMPL; + if (!result) + return E_POINTER; + *result = 0; + if (!m_node) + return E_FAIL; + *result = DOMNode::createInstance(m_node->nextSibling()); + return *result ? S_OK : E_FAIL; } HRESULT STDMETHODCALLTYPE DOMNode::attributes( @@ -210,12 +216,31 @@ HRESULT STDMETHODCALLTYPE DOMNode::ownerDocument( } HRESULT STDMETHODCALLTYPE DOMNode::insertBefore( - /* [in] */ IDOMNode* /*newChild*/, - /* [in] */ IDOMNode* /*refChild*/, - /* [retval][out] */ IDOMNode** /*result*/) + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* refChild, + /* [retval][out] */ IDOMNode** result) { - ASSERT_NOT_REACHED(); - return E_NOTIMPL; + if (!result) + return E_POINTER; + + *result = 0; + + if (!m_node) + return E_FAIL; + + COMPtr<DOMNode> newChildNode(Query, newChild); + if (!newChildNode) + return E_FAIL; + + COMPtr<DOMNode> refChildNode(Query, refChild); + + ExceptionCode ec; + if (!m_node->insertBefore(newChildNode->node(), refChildNode ? refChildNode->node() : 0, ec)) + return E_FAIL; + + *result = newChild; + (*result)->AddRef(); + return S_OK; } HRESULT STDMETHODCALLTYPE DOMNode::replaceChild( @@ -228,11 +253,28 @@ HRESULT STDMETHODCALLTYPE DOMNode::replaceChild( } HRESULT STDMETHODCALLTYPE DOMNode::removeChild( - /* [in] */ IDOMNode* /*oldChild*/, - /* [retval][out] */ IDOMNode** /*result*/) + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { - ASSERT_NOT_REACHED(); - return E_NOTIMPL; + if (!result) + return E_POINTER; + + *result = 0; + + if (!m_node) + return E_FAIL; + + COMPtr<DOMNode> oldChildNode(Query, oldChild); + if (!oldChildNode) + return E_FAIL; + + ExceptionCode ec; + if (!m_node->removeChild(oldChildNode->node(), ec)) + return E_FAIL; + + *result = oldChild; + (*result)->AddRef(); + return S_OK; } HRESULT STDMETHODCALLTYPE DOMNode::appendChild( @@ -852,8 +894,8 @@ HRESULT STDMETHODCALLTYPE DOMElement::getAttribute( { if (!m_element) return E_FAIL; - WebCore::String nameString(name, SysStringLen(name)); - WebCore::String& attrValueString = (WebCore::String&) m_element->getAttribute(nameString); + WTF::String nameString(name, SysStringLen(name)); + WTF::String& attrValueString = (WTF::String&) m_element->getAttribute(nameString); *result = SysAllocStringLen(attrValueString.characters(), attrValueString.length()); if (attrValueString.length() && !*result) return E_OUTOFMEMORY; @@ -867,8 +909,8 @@ HRESULT STDMETHODCALLTYPE DOMElement::setAttribute( if (!m_element) return E_FAIL; - WebCore::String nameString(name, SysStringLen(name)); - WebCore::String valueString(value, SysStringLen(value)); + WTF::String nameString(name, SysStringLen(name)); + WTF::String valueString(value, SysStringLen(value)); WebCore::ExceptionCode ec = 0; m_element->setAttribute(nameString, valueString, ec); return ec ? E_FAIL : S_OK; @@ -1108,6 +1150,18 @@ HRESULT STDMETHODCALLTYPE DOMElement::renderedImage(HBITMAP* image) return S_OK; } +HRESULT STDMETHODCALLTYPE DOMElement::markerTextForListItem( + /* [retval][out] */ BSTR* markerText) +{ + if (!markerText) + return E_POINTER; + + ASSERT(m_element); + + *markerText = BString(WebCore::markerTextForListItem(m_element)).release(); + return S_OK; +} + // IDOMElementCSSInlineStyle -------------------------------------------------- HRESULT STDMETHODCALLTYPE DOMElement::style( @@ -1295,14 +1349,17 @@ IDOMElement* DOMElement::createInstance(WebCore::Element* e) if (e->hasTagName(formTag)) { DOMHTMLFormElement* newElement = new DOMHTMLFormElement(e); hr = newElement->QueryInterface(IID_IDOMElement, (void**)&domElement); - } else if (e->hasTagName(selectTag)) { - DOMHTMLSelectElement* newElement = new DOMHTMLSelectElement(e); + } else if (e->hasTagName(iframeTag)) { + DOMHTMLIFrameElement* newElement = new DOMHTMLIFrameElement(e); + hr = newElement->QueryInterface(IID_IDOMElement, (void**)&domElement); + } else if (e->hasTagName(inputTag)) { + DOMHTMLInputElement* newElement = new DOMHTMLInputElement(e); hr = newElement->QueryInterface(IID_IDOMElement, (void**)&domElement); } else if (e->hasTagName(optionTag)) { DOMHTMLOptionElement* newElement = new DOMHTMLOptionElement(e); hr = newElement->QueryInterface(IID_IDOMElement, (void**)&domElement); - } else if (e->hasTagName(inputTag)) { - DOMHTMLInputElement* newElement = new DOMHTMLInputElement(e); + } else if (e->hasTagName(selectTag)) { + DOMHTMLSelectElement* newElement = new DOMHTMLSelectElement(e); hr = newElement->QueryInterface(IID_IDOMElement, (void**)&domElement); } else if (e->hasTagName(textareaTag)) { DOMHTMLTextAreaElement* newElement = new DOMHTMLTextAreaElement(e); diff --git a/WebKit/win/DOMCoreClasses.h b/WebKit/win/DOMCoreClasses.h index 3941d13..c52d933 100644 --- a/WebKit/win/DOMCoreClasses.h +++ b/WebKit/win/DOMCoreClasses.h @@ -30,14 +30,14 @@ #include "WebScriptObject.h" namespace WebCore { - class Element; - class Document; - class Node; - class NodeList; +class Element; +class Document; +class Node; +class NodeList; } -class DOMObject : public WebScriptObject, public IDOMObject -{ + +class DOMObject : public WebScriptObject, public IDOMObject { public: // IUnknown virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject); @@ -45,40 +45,39 @@ public: virtual ULONG STDMETHODCALLTYPE Release(void) { return WebScriptObject::Release(); } // IWebScriptObject - virtual HRESULT STDMETHODCALLTYPE throwException( + virtual HRESULT STDMETHODCALLTYPE throwException( /* [in] */ BSTR exceptionMessage, - /* [retval][out] */ BOOL *result) { return WebScriptObject::throwException(exceptionMessage, result); } + /* [retval][out] */ BOOL* result) { return WebScriptObject::throwException(exceptionMessage, result); } - virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( /* [in] */ BSTR name, /* [size_is][in] */ const VARIANT args[ ], /* [in] */ int cArgs, - /* [retval][out] */ VARIANT *result) { return WebScriptObject::callWebScriptMethod(name, args, cArgs, result); } + /* [retval][out] */ VARIANT* result) { return WebScriptObject::callWebScriptMethod(name, args, cArgs, result); } - virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( /* [in] */ BSTR script, - /* [retval][out] */ VARIANT *result) { return WebScriptObject::evaluateWebScript(script, result); } + /* [retval][out] */ VARIANT* result) { return WebScriptObject::evaluateWebScript(script, result); } - virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( /* [in] */ BSTR name) { return WebScriptObject::removeWebScriptKey(name); } - virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( /* [retval][out] */ BSTR* stringRepresentation) { return WebScriptObject::stringRepresentation(stringRepresentation); } - virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( /* [in] */ unsigned int index, - /* [retval][out] */ VARIANT *result) { return WebScriptObject::webScriptValueAtIndex(index, result); } + /* [retval][out] */ VARIANT* result) { return WebScriptObject::webScriptValueAtIndex(index, result); } - virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( /* [in] */ unsigned int index, /* [in] */ VARIANT val) { return WebScriptObject::setWebScriptValueAtIndex(index, val); } - virtual HRESULT STDMETHODCALLTYPE setException( + virtual HRESULT STDMETHODCALLTYPE setException( /* [in] */ BSTR description) { return WebScriptObject::setException(description); } }; -class DECLSPEC_UUID("062AEEE3-9E42-44DC-A8A9-236B216FE011") DOMNode : public DOMObject, public IDOMNode, public IDOMEventTarget -{ +class DECLSPEC_UUID("062AEEE3-9E42-44DC-A8A9-236B216FE011") DOMNode : public DOMObject, public IDOMNode, public IDOMEventTarget { protected: DOMNode(WebCore::Node* n); ~DOMNode(); @@ -93,149 +92,149 @@ public: virtual ULONG STDMETHODCALLTYPE Release(void) { return DOMObject::Release(); } // IWebScriptObject - virtual HRESULT STDMETHODCALLTYPE throwException( + virtual HRESULT STDMETHODCALLTYPE throwException( /* [in] */ BSTR exceptionMessage, - /* [retval][out] */ BOOL *result) { return DOMObject::throwException(exceptionMessage, result); } + /* [retval][out] */ BOOL* result) { return DOMObject::throwException(exceptionMessage, result); } - virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( /* [in] */ BSTR name, /* [size_is][in] */ const VARIANT args[ ], /* [in] */ int cArgs, - /* [retval][out] */ VARIANT *result) { return DOMObject::callWebScriptMethod(name, args, cArgs, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::callWebScriptMethod(name, args, cArgs, result); } - virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( /* [in] */ BSTR script, - /* [retval][out] */ VARIANT *result) { return DOMObject::evaluateWebScript(script, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::evaluateWebScript(script, result); } - virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( /* [in] */ BSTR name) { return DOMObject::removeWebScriptKey(name); } - virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( /* [retval][out] */ BSTR* stringRepresentation) { return DOMObject::stringRepresentation(stringRepresentation); } - virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( /* [in] */ unsigned int index, - /* [retval][out] */ VARIANT *result) { return DOMObject::webScriptValueAtIndex(index, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::webScriptValueAtIndex(index, result); } - virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( /* [in] */ unsigned int index, /* [in] */ VARIANT val) { return DOMObject::setWebScriptValueAtIndex(index, val); } - virtual HRESULT STDMETHODCALLTYPE setException( + virtual HRESULT STDMETHODCALLTYPE setException( /* [in] */ BSTR description) { return DOMObject::setException(description); } // IDOMNode - virtual HRESULT STDMETHODCALLTYPE nodeName( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE nodeName( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE nodeValue( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE nodeValue( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE setNodeValue( + virtual HRESULT STDMETHODCALLTYPE setNodeValue( /* [in] */ BSTR value); - virtual HRESULT STDMETHODCALLTYPE nodeType( - /* [retval][out] */ unsigned short *result); + virtual HRESULT STDMETHODCALLTYPE nodeType( + /* [retval][out] */ unsigned short* result); - virtual HRESULT STDMETHODCALLTYPE parentNode( - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE parentNode( + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE childNodes( - /* [retval][out] */ IDOMNodeList **result); + virtual HRESULT STDMETHODCALLTYPE childNodes( + /* [retval][out] */ IDOMNodeList** result); - virtual HRESULT STDMETHODCALLTYPE firstChild( - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE firstChild( + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE lastChild( - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE lastChild( + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE previousSibling( - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE previousSibling( + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE nextSibling( - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE nextSibling( + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE attributes( - /* [retval][out] */ IDOMNamedNodeMap **result); + virtual HRESULT STDMETHODCALLTYPE attributes( + /* [retval][out] */ IDOMNamedNodeMap** result); - virtual HRESULT STDMETHODCALLTYPE ownerDocument( - /* [retval][out] */ IDOMDocument **result); + virtual HRESULT STDMETHODCALLTYPE ownerDocument( + /* [retval][out] */ IDOMDocument** result); - virtual HRESULT STDMETHODCALLTYPE insertBefore( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *refChild, - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE insertBefore( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* refChild, + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE replaceChild( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE replaceChild( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE removeChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE removeChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE appendChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result); + virtual HRESULT STDMETHODCALLTYPE appendChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE hasChildNodes( - /* [retval][out] */ BOOL *result); + virtual HRESULT STDMETHODCALLTYPE hasChildNodes( + /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE cloneNode( + virtual HRESULT STDMETHODCALLTYPE cloneNode( /* [in] */ BOOL deep, - /* [retval][out] */ IDOMNode **result); + /* [retval][out] */ IDOMNode** result); virtual HRESULT STDMETHODCALLTYPE normalize( void); - virtual HRESULT STDMETHODCALLTYPE isSupported( + virtual HRESULT STDMETHODCALLTYPE isSupported( /* [in] */ BSTR feature, /* [in] */ BSTR version, - /* [retval][out] */ BOOL *result); + /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE namespaceURI( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE namespaceURI( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE prefix( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE prefix( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE setPrefix( + virtual HRESULT STDMETHODCALLTYPE setPrefix( /* [in] */ BSTR prefix); - virtual HRESULT STDMETHODCALLTYPE localName( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE localName( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE hasAttributes( - /* [retval][out] */ BOOL *result); + virtual HRESULT STDMETHODCALLTYPE hasAttributes( + /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE isSameNode( + virtual HRESULT STDMETHODCALLTYPE isSameNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE isEqualNode( + virtual HRESULT STDMETHODCALLTYPE isEqualNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE textContent( + virtual HRESULT STDMETHODCALLTYPE textContent( /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE setTextContent( + virtual HRESULT STDMETHODCALLTYPE setTextContent( /* [in] */ BSTR text); // IDOMEventTarget - virtual HRESULT STDMETHODCALLTYPE addEventListener( + virtual HRESULT STDMETHODCALLTYPE addEventListener( /* [in] */ BSTR type, /* [in] */ IDOMEventListener *listener, /* [in] */ BOOL useCapture); - virtual HRESULT STDMETHODCALLTYPE removeEventListener( + virtual HRESULT STDMETHODCALLTYPE removeEventListener( /* [in] */ BSTR type, /* [in] */ IDOMEventListener *listener, /* [in] */ BOOL useCapture); - virtual HRESULT STDMETHODCALLTYPE dispatchEvent( + virtual HRESULT STDMETHODCALLTYPE dispatchEvent( /* [in] */ IDOMEvent *evt, - /* [retval][out] */ BOOL *result); + /* [retval][out] */ BOOL* result); // DOMNode WebCore::Node* node() const { return m_node; } @@ -244,8 +243,7 @@ protected: WebCore::Node* m_node; }; -class DOMNodeList : public DOMObject, public IDOMNodeList -{ +class DOMNodeList : public DOMObject, public IDOMNodeList { protected: DOMNodeList(WebCore::NodeList* l); ~DOMNodeList(); @@ -260,51 +258,50 @@ public: virtual ULONG STDMETHODCALLTYPE Release(void) { return DOMObject::Release(); } // IWebScriptObject - virtual HRESULT STDMETHODCALLTYPE throwException( + virtual HRESULT STDMETHODCALLTYPE throwException( /* [in] */ BSTR exceptionMessage, - /* [retval][out] */ BOOL *result) { return DOMObject::throwException(exceptionMessage, result); } + /* [retval][out] */ BOOL* result) { return DOMObject::throwException(exceptionMessage, result); } - virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( /* [in] */ BSTR name, /* [size_is][in] */ const VARIANT args[ ], /* [in] */ int cArgs, - /* [retval][out] */ VARIANT *result) { return DOMObject::callWebScriptMethod(name, args, cArgs, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::callWebScriptMethod(name, args, cArgs, result); } - virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( /* [in] */ BSTR script, - /* [retval][out] */ VARIANT *result) { return DOMObject::evaluateWebScript(script, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::evaluateWebScript(script, result); } - virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( /* [in] */ BSTR name) { return DOMObject::removeWebScriptKey(name); } - virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( /* [retval][out] */ BSTR* stringRepresentation) { return DOMObject::stringRepresentation(stringRepresentation); } - virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( /* [in] */ unsigned int index, - /* [retval][out] */ VARIANT *result) { return DOMObject::webScriptValueAtIndex(index, result); } + /* [retval][out] */ VARIANT* result) { return DOMObject::webScriptValueAtIndex(index, result); } - virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( /* [in] */ unsigned int index, /* [in] */ VARIANT val) { return DOMObject::setWebScriptValueAtIndex(index, val); } - virtual HRESULT STDMETHODCALLTYPE setException( + virtual HRESULT STDMETHODCALLTYPE setException( /* [in] */ BSTR description) { return DOMObject::setException(description); } // IDOMNodeList - virtual HRESULT STDMETHODCALLTYPE item( + virtual HRESULT STDMETHODCALLTYPE item( /* [in] */ UINT index, - /* [retval][out] */ IDOMNode **result); + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE length( - /* [retval][out] */ UINT *result); + virtual HRESULT STDMETHODCALLTYPE length( + /* [retval][out] */ UINT* result); protected: WebCore::NodeList* m_nodeList; }; -class DOMDocument : public DOMNode, public IDOMDocument, public IDOMViewCSS, public IDOMDocumentEvent -{ +class DOMDocument : public DOMNode, public IDOMDocument, public IDOMViewCSS, public IDOMDocumentEvent { protected: DOMDocument(WebCore::Document* d); ~DOMDocument(); @@ -319,215 +316,215 @@ public: virtual ULONG STDMETHODCALLTYPE Release(void) { return DOMNode::Release(); } // IWebScriptObject - virtual HRESULT STDMETHODCALLTYPE throwException( + virtual HRESULT STDMETHODCALLTYPE throwException( /* [in] */ BSTR exceptionMessage, - /* [retval][out] */ BOOL *result) { return DOMNode::throwException(exceptionMessage, result); } + /* [retval][out] */ BOOL* result) { return DOMNode::throwException(exceptionMessage, result); } - virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( /* [in] */ BSTR name, /* [size_is][in] */ const VARIANT args[ ], /* [in] */ int cArgs, - /* [retval][out] */ VARIANT *result) { return DOMNode::callWebScriptMethod(name, args, cArgs, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::callWebScriptMethod(name, args, cArgs, result); } - virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( /* [in] */ BSTR script, - /* [retval][out] */ VARIANT *result) { return DOMNode::evaluateWebScript(script, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::evaluateWebScript(script, result); } - virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( /* [in] */ BSTR name) { return DOMNode::removeWebScriptKey(name); } - virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( /* [retval][out] */ BSTR* stringRepresentation) { return DOMNode::stringRepresentation(stringRepresentation); } - virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( /* [in] */ unsigned int index, - /* [retval][out] */ VARIANT *result) { return DOMNode::webScriptValueAtIndex(index, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::webScriptValueAtIndex(index, result); } - virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( /* [in] */ unsigned int index, /* [in] */ VARIANT val) { return DOMNode::setWebScriptValueAtIndex(index, val); } - virtual HRESULT STDMETHODCALLTYPE setException( + virtual HRESULT STDMETHODCALLTYPE setException( /* [in] */ BSTR description) { return DOMNode::setException(description); } // IDOMNode - virtual HRESULT STDMETHODCALLTYPE nodeName( - /* [retval][out] */ BSTR *result) { return DOMNode::nodeName(result); } + virtual HRESULT STDMETHODCALLTYPE nodeName( + /* [retval][out] */ BSTR* result) { return DOMNode::nodeName(result); } - virtual HRESULT STDMETHODCALLTYPE nodeValue( - /* [retval][out] */ BSTR *result) { return DOMNode::nodeValue(result); } + virtual HRESULT STDMETHODCALLTYPE nodeValue( + /* [retval][out] */ BSTR* result) { return DOMNode::nodeValue(result); } - virtual HRESULT STDMETHODCALLTYPE setNodeValue( + virtual HRESULT STDMETHODCALLTYPE setNodeValue( /* [in] */ BSTR value) { return DOMNode::setNodeValue(value); } - virtual HRESULT STDMETHODCALLTYPE nodeType( - /* [retval][out] */ unsigned short *result) { return DOMNode::nodeType(result); } + virtual HRESULT STDMETHODCALLTYPE nodeType( + /* [retval][out] */ unsigned short* result) { return DOMNode::nodeType(result); } - virtual HRESULT STDMETHODCALLTYPE parentNode( - /* [retval][out] */ IDOMNode **result) { return DOMNode::parentNode(result); } + virtual HRESULT STDMETHODCALLTYPE parentNode( + /* [retval][out] */ IDOMNode** result) { return DOMNode::parentNode(result); } - virtual HRESULT STDMETHODCALLTYPE childNodes( - /* [retval][out] */ IDOMNodeList **result) { return DOMNode::childNodes(result); } + virtual HRESULT STDMETHODCALLTYPE childNodes( + /* [retval][out] */ IDOMNodeList** result) { return DOMNode::childNodes(result); } - virtual HRESULT STDMETHODCALLTYPE firstChild( - /* [retval][out] */ IDOMNode **result) { return DOMNode::firstChild(result); } + virtual HRESULT STDMETHODCALLTYPE firstChild( + /* [retval][out] */ IDOMNode** result) { return DOMNode::firstChild(result); } - virtual HRESULT STDMETHODCALLTYPE lastChild( - /* [retval][out] */ IDOMNode **result) { return DOMNode::lastChild(result); } + virtual HRESULT STDMETHODCALLTYPE lastChild( + /* [retval][out] */ IDOMNode** result) { return DOMNode::lastChild(result); } - virtual HRESULT STDMETHODCALLTYPE previousSibling( - /* [retval][out] */ IDOMNode **result) { return DOMNode::previousSibling(result); } + virtual HRESULT STDMETHODCALLTYPE previousSibling( + /* [retval][out] */ IDOMNode** result) { return DOMNode::previousSibling(result); } - virtual HRESULT STDMETHODCALLTYPE nextSibling( - /* [retval][out] */ IDOMNode **result) { return DOMNode::nextSibling(result); } + virtual HRESULT STDMETHODCALLTYPE nextSibling( + /* [retval][out] */ IDOMNode** result) { return DOMNode::nextSibling(result); } - virtual HRESULT STDMETHODCALLTYPE attributes( - /* [retval][out] */ IDOMNamedNodeMap **result) { return DOMNode::attributes(result); } + virtual HRESULT STDMETHODCALLTYPE attributes( + /* [retval][out] */ IDOMNamedNodeMap** result) { return DOMNode::attributes(result); } - virtual HRESULT STDMETHODCALLTYPE ownerDocument( - /* [retval][out] */ IDOMDocument **result) { return DOMNode::ownerDocument(result); } + virtual HRESULT STDMETHODCALLTYPE ownerDocument( + /* [retval][out] */ IDOMDocument** result) { return DOMNode::ownerDocument(result); } - virtual HRESULT STDMETHODCALLTYPE insertBefore( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *refChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::insertBefore(newChild, refChild, result); } + virtual HRESULT STDMETHODCALLTYPE insertBefore( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* refChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::insertBefore(newChild, refChild, result); } - virtual HRESULT STDMETHODCALLTYPE replaceChild( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::replaceChild(newChild, oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE replaceChild( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::replaceChild(newChild, oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE removeChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::removeChild(oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE removeChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::removeChild(oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE appendChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::appendChild(oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE appendChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::appendChild(oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE hasChildNodes( - /* [retval][out] */ BOOL *result) { return DOMNode::hasChildNodes(result); } + virtual HRESULT STDMETHODCALLTYPE hasChildNodes( + /* [retval][out] */ BOOL* result) { return DOMNode::hasChildNodes(result); } - virtual HRESULT STDMETHODCALLTYPE cloneNode( + virtual HRESULT STDMETHODCALLTYPE cloneNode( /* [in] */ BOOL deep, - /* [retval][out] */ IDOMNode **result) { return DOMNode::cloneNode(deep, result); } + /* [retval][out] */ IDOMNode** result) { return DOMNode::cloneNode(deep, result); } virtual HRESULT STDMETHODCALLTYPE normalize( void) { return DOMNode::normalize(); } - virtual HRESULT STDMETHODCALLTYPE isSupported( + virtual HRESULT STDMETHODCALLTYPE isSupported( /* [in] */ BSTR feature, /* [in] */ BSTR version, - /* [retval][out] */ BOOL *result) { return DOMNode::isSupported(feature, version, result); } + /* [retval][out] */ BOOL* result) { return DOMNode::isSupported(feature, version, result); } - virtual HRESULT STDMETHODCALLTYPE namespaceURI( - /* [retval][out] */ BSTR *result) { return DOMNode::namespaceURI(result); } + virtual HRESULT STDMETHODCALLTYPE namespaceURI( + /* [retval][out] */ BSTR* result) { return DOMNode::namespaceURI(result); } - virtual HRESULT STDMETHODCALLTYPE prefix( - /* [retval][out] */ BSTR *result) { return DOMNode::prefix(result); } + virtual HRESULT STDMETHODCALLTYPE prefix( + /* [retval][out] */ BSTR* result) { return DOMNode::prefix(result); } - virtual HRESULT STDMETHODCALLTYPE setPrefix( + virtual HRESULT STDMETHODCALLTYPE setPrefix( /* [in] */ BSTR prefix) { return DOMNode::setPrefix(prefix); } - virtual HRESULT STDMETHODCALLTYPE localName( - /* [retval][out] */ BSTR *result) { return DOMNode::localName(result); } + virtual HRESULT STDMETHODCALLTYPE localName( + /* [retval][out] */ BSTR* result) { return DOMNode::localName(result); } - virtual HRESULT STDMETHODCALLTYPE hasAttributes( - /* [retval][out] */ BOOL *result) { return DOMNode::hasAttributes(result); } + virtual HRESULT STDMETHODCALLTYPE hasAttributes( + /* [retval][out] */ BOOL* result) { return DOMNode::hasAttributes(result); } - virtual HRESULT STDMETHODCALLTYPE isSameNode( + virtual HRESULT STDMETHODCALLTYPE isSameNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result) { return DOMNode::isSameNode(other, result); } - virtual HRESULT STDMETHODCALLTYPE isEqualNode( + virtual HRESULT STDMETHODCALLTYPE isEqualNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result) { return DOMNode::isEqualNode(other, result); } - virtual HRESULT STDMETHODCALLTYPE textContent( + virtual HRESULT STDMETHODCALLTYPE textContent( /* [retval][out] */ BSTR* result) { return DOMNode::textContent(result); } - virtual HRESULT STDMETHODCALLTYPE setTextContent( + virtual HRESULT STDMETHODCALLTYPE setTextContent( /* [in] */ BSTR text) { return DOMNode::setTextContent(text); } // IDOMDocument - virtual HRESULT STDMETHODCALLTYPE doctype( - /* [retval][out] */ IDOMDocumentType **result); + virtual HRESULT STDMETHODCALLTYPE doctype( + /* [retval][out] */ IDOMDocumentType** result); - virtual HRESULT STDMETHODCALLTYPE implementation( - /* [retval][out] */ IDOMImplementation **result); + virtual HRESULT STDMETHODCALLTYPE implementation( + /* [retval][out] */ IDOMImplementation** result); - virtual HRESULT STDMETHODCALLTYPE documentElement( - /* [retval][out] */ IDOMElement **result); + virtual HRESULT STDMETHODCALLTYPE documentElement( + /* [retval][out] */ IDOMElement** result); - virtual HRESULT STDMETHODCALLTYPE createElement( + virtual HRESULT STDMETHODCALLTYPE createElement( /* [in] */ BSTR tagName, - /* [retval][out] */ IDOMElement **result); + /* [retval][out] */ IDOMElement** result); - virtual HRESULT STDMETHODCALLTYPE createDocumentFragment( - /* [retval][out] */ IDOMDocumentFragment **result); + virtual HRESULT STDMETHODCALLTYPE createDocumentFragment( + /* [retval][out] */ IDOMDocumentFragment** result); - virtual HRESULT STDMETHODCALLTYPE createTextNode( + virtual HRESULT STDMETHODCALLTYPE createTextNode( /* [in] */ BSTR data, - /* [retval][out] */ IDOMText **result); + /* [retval][out] */ IDOMText** result); - virtual HRESULT STDMETHODCALLTYPE createComment( + virtual HRESULT STDMETHODCALLTYPE createComment( /* [in] */ BSTR data, - /* [retval][out] */ IDOMComment **result); + /* [retval][out] */ IDOMComment** result); - virtual HRESULT STDMETHODCALLTYPE createCDATASection( + virtual HRESULT STDMETHODCALLTYPE createCDATASection( /* [in] */ BSTR data, - /* [retval][out] */ IDOMCDATASection **result); + /* [retval][out] */ IDOMCDATASection** result); - virtual HRESULT STDMETHODCALLTYPE createProcessingInstruction( + virtual HRESULT STDMETHODCALLTYPE createProcessingInstruction( /* [in] */ BSTR target, /* [in] */ BSTR data, - /* [retval][out] */ IDOMProcessingInstruction **result); + /* [retval][out] */ IDOMProcessingInstruction** result); - virtual HRESULT STDMETHODCALLTYPE createAttribute( + virtual HRESULT STDMETHODCALLTYPE createAttribute( /* [in] */ BSTR name, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE createEntityReference( + virtual HRESULT STDMETHODCALLTYPE createEntityReference( /* [in] */ BSTR name, - /* [retval][out] */ IDOMEntityReference **result); + /* [retval][out] */ IDOMEntityReference** result); - virtual HRESULT STDMETHODCALLTYPE getElementsByTagName( + virtual HRESULT STDMETHODCALLTYPE getElementsByTagName( /* [in] */ BSTR tagName, - /* [retval][out] */ IDOMNodeList **result); + /* [retval][out] */ IDOMNodeList** result); - virtual HRESULT STDMETHODCALLTYPE importNode( - /* [in] */ IDOMNode *importedNode, + virtual HRESULT STDMETHODCALLTYPE importNode( + /* [in] */ IDOMNode* importedNode, /* [in] */ BOOL deep, - /* [retval][out] */ IDOMNode **result); + /* [retval][out] */ IDOMNode** result); - virtual HRESULT STDMETHODCALLTYPE createElementNS( + virtual HRESULT STDMETHODCALLTYPE createElementNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR qualifiedName, - /* [retval][out] */ IDOMElement **result); + /* [retval][out] */ IDOMElement** result); - virtual HRESULT STDMETHODCALLTYPE createAttributeNS( + virtual HRESULT STDMETHODCALLTYPE createAttributeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR qualifiedName, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE getElementsByTagNameNS( + virtual HRESULT STDMETHODCALLTYPE getElementsByTagNameNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName, - /* [retval][out] */ IDOMNodeList **result); + /* [retval][out] */ IDOMNodeList** result); - virtual HRESULT STDMETHODCALLTYPE getElementById( + virtual HRESULT STDMETHODCALLTYPE getElementById( /* [in] */ BSTR elementId, - /* [retval][out] */ IDOMElement **result); + /* [retval][out] */ IDOMElement** result); // IDOMViewCSS - virtual HRESULT STDMETHODCALLTYPE getComputedStyle( - /* [in] */ IDOMElement *elt, + virtual HRESULT STDMETHODCALLTYPE getComputedStyle( + /* [in] */ IDOMElement* elt, /* [in] */ BSTR pseudoElt, - /* [retval][out] */ IDOMCSSStyleDeclaration **result); + /* [retval][out] */ IDOMCSSStyleDeclaration** result); // IDOMDocumentEvent - virtual HRESULT STDMETHODCALLTYPE createEvent( + virtual HRESULT STDMETHODCALLTYPE createEvent( /* [in] */ BSTR eventType, - /* [retval][out] */ IDOMEvent **result); + /* [retval][out] */ IDOMEvent** result); // DOMDocument WebCore::Document* document() { return m_document; } @@ -536,8 +533,7 @@ protected: WebCore::Document* m_document; }; -class DOMElement : public DOMNode, public IDOMElement, public IDOMElementPrivate, public IDOMNodeExtensions, public IDOMElementCSSInlineStyle, public IDOMElementExtensions -{ +class DOMElement : public DOMNode, public IDOMElement, public IDOMElementPrivate, public IDOMNodeExtensions, public IDOMElementCSSInlineStyle, public IDOMElementExtensions { protected: DOMElement(WebCore::Element* e); ~DOMElement(); @@ -551,225 +547,225 @@ public: virtual ULONG STDMETHODCALLTYPE Release(void) { return DOMNode::Release(); } // IWebScriptObject - virtual HRESULT STDMETHODCALLTYPE throwException( + virtual HRESULT STDMETHODCALLTYPE throwException( /* [in] */ BSTR exceptionMessage, - /* [retval][out] */ BOOL *result) { return DOMNode::throwException(exceptionMessage, result); } + /* [retval][out] */ BOOL* result) { return DOMNode::throwException(exceptionMessage, result); } - virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( /* [in] */ BSTR name, /* [size_is][in] */ const VARIANT args[ ], /* [in] */ int cArgs, - /* [retval][out] */ VARIANT *result) { return DOMNode::callWebScriptMethod(name, args, cArgs, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::callWebScriptMethod(name, args, cArgs, result); } - virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( /* [in] */ BSTR script, - /* [retval][out] */ VARIANT *result) { return DOMNode::evaluateWebScript(script, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::evaluateWebScript(script, result); } - virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( /* [in] */ BSTR name) { return DOMNode::removeWebScriptKey(name); } - virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( /* [retval][out] */ BSTR* stringRepresentation) { return DOMNode::stringRepresentation(stringRepresentation); } - virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( /* [in] */ unsigned int index, - /* [retval][out] */ VARIANT *result) { return DOMNode::webScriptValueAtIndex(index, result); } + /* [retval][out] */ VARIANT* result) { return DOMNode::webScriptValueAtIndex(index, result); } - virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( /* [in] */ unsigned int index, /* [in] */ VARIANT val) { return DOMNode::setWebScriptValueAtIndex(index, val); } - virtual HRESULT STDMETHODCALLTYPE setException( + virtual HRESULT STDMETHODCALLTYPE setException( /* [in] */ BSTR description) { return DOMNode::setException(description); } // IDOMNode - virtual HRESULT STDMETHODCALLTYPE nodeName( - /* [retval][out] */ BSTR *result) { return DOMNode::nodeName(result); } + virtual HRESULT STDMETHODCALLTYPE nodeName( + /* [retval][out] */ BSTR* result) { return DOMNode::nodeName(result); } - virtual HRESULT STDMETHODCALLTYPE nodeValue( - /* [retval][out] */ BSTR *result) { return DOMNode::nodeValue(result); } + virtual HRESULT STDMETHODCALLTYPE nodeValue( + /* [retval][out] */ BSTR* result) { return DOMNode::nodeValue(result); } - virtual HRESULT STDMETHODCALLTYPE setNodeValue( + virtual HRESULT STDMETHODCALLTYPE setNodeValue( /* [in] */ BSTR value) { return DOMNode::setNodeValue(value); } - virtual HRESULT STDMETHODCALLTYPE nodeType( - /* [retval][out] */ unsigned short *result) { return DOMNode::nodeType(result); } + virtual HRESULT STDMETHODCALLTYPE nodeType( + /* [retval][out] */ unsigned short* result) { return DOMNode::nodeType(result); } - virtual HRESULT STDMETHODCALLTYPE parentNode( - /* [retval][out] */ IDOMNode **result) { return DOMNode::parentNode(result); } + virtual HRESULT STDMETHODCALLTYPE parentNode( + /* [retval][out] */ IDOMNode** result) { return DOMNode::parentNode(result); } - virtual HRESULT STDMETHODCALLTYPE childNodes( - /* [retval][out] */ IDOMNodeList **result) { return DOMNode::childNodes(result); } + virtual HRESULT STDMETHODCALLTYPE childNodes( + /* [retval][out] */ IDOMNodeList** result) { return DOMNode::childNodes(result); } - virtual HRESULT STDMETHODCALLTYPE firstChild( - /* [retval][out] */ IDOMNode **result) { return DOMNode::firstChild(result); } + virtual HRESULT STDMETHODCALLTYPE firstChild( + /* [retval][out] */ IDOMNode** result) { return DOMNode::firstChild(result); } - virtual HRESULT STDMETHODCALLTYPE lastChild( - /* [retval][out] */ IDOMNode **result) { return DOMNode::lastChild(result); } + virtual HRESULT STDMETHODCALLTYPE lastChild( + /* [retval][out] */ IDOMNode** result) { return DOMNode::lastChild(result); } - virtual HRESULT STDMETHODCALLTYPE previousSibling( - /* [retval][out] */ IDOMNode **result) { return DOMNode::previousSibling(result); } + virtual HRESULT STDMETHODCALLTYPE previousSibling( + /* [retval][out] */ IDOMNode** result) { return DOMNode::previousSibling(result); } - virtual HRESULT STDMETHODCALLTYPE nextSibling( - /* [retval][out] */ IDOMNode **result) { return DOMNode::nextSibling(result); } + virtual HRESULT STDMETHODCALLTYPE nextSibling( + /* [retval][out] */ IDOMNode** result) { return DOMNode::nextSibling(result); } - virtual HRESULT STDMETHODCALLTYPE attributes( - /* [retval][out] */ IDOMNamedNodeMap **result) { return DOMNode::attributes(result); } + virtual HRESULT STDMETHODCALLTYPE attributes( + /* [retval][out] */ IDOMNamedNodeMap** result) { return DOMNode::attributes(result); } - virtual HRESULT STDMETHODCALLTYPE ownerDocument( - /* [retval][out] */ IDOMDocument **result) { return DOMNode::ownerDocument(result); } + virtual HRESULT STDMETHODCALLTYPE ownerDocument( + /* [retval][out] */ IDOMDocument** result) { return DOMNode::ownerDocument(result); } - virtual HRESULT STDMETHODCALLTYPE insertBefore( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *refChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::insertBefore(newChild, refChild, result); } + virtual HRESULT STDMETHODCALLTYPE insertBefore( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* refChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::insertBefore(newChild, refChild, result); } - virtual HRESULT STDMETHODCALLTYPE replaceChild( - /* [in] */ IDOMNode *newChild, - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::replaceChild(newChild, oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE replaceChild( + /* [in] */ IDOMNode* newChild, + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::replaceChild(newChild, oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE removeChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::removeChild(oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE removeChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::removeChild(oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE appendChild( - /* [in] */ IDOMNode *oldChild, - /* [retval][out] */ IDOMNode **result) { return DOMNode::appendChild(oldChild, result); } + virtual HRESULT STDMETHODCALLTYPE appendChild( + /* [in] */ IDOMNode* oldChild, + /* [retval][out] */ IDOMNode** result) { return DOMNode::appendChild(oldChild, result); } - virtual HRESULT STDMETHODCALLTYPE hasChildNodes( - /* [retval][out] */ BOOL *result) { return DOMNode::hasChildNodes(result); } + virtual HRESULT STDMETHODCALLTYPE hasChildNodes( + /* [retval][out] */ BOOL* result) { return DOMNode::hasChildNodes(result); } - virtual HRESULT STDMETHODCALLTYPE cloneNode( + virtual HRESULT STDMETHODCALLTYPE cloneNode( /* [in] */ BOOL deep, - /* [retval][out] */ IDOMNode **result) { return DOMNode::cloneNode(deep, result); } + /* [retval][out] */ IDOMNode** result) { return DOMNode::cloneNode(deep, result); } virtual HRESULT STDMETHODCALLTYPE normalize( void) { return DOMNode::normalize(); } - virtual HRESULT STDMETHODCALLTYPE isSupported( + virtual HRESULT STDMETHODCALLTYPE isSupported( /* [in] */ BSTR feature, /* [in] */ BSTR version, - /* [retval][out] */ BOOL *result) { return DOMNode::isSupported(feature, version, result); } + /* [retval][out] */ BOOL* result) { return DOMNode::isSupported(feature, version, result); } - virtual HRESULT STDMETHODCALLTYPE namespaceURI( - /* [retval][out] */ BSTR *result) { return DOMNode::namespaceURI(result); } + virtual HRESULT STDMETHODCALLTYPE namespaceURI( + /* [retval][out] */ BSTR* result) { return DOMNode::namespaceURI(result); } - virtual HRESULT STDMETHODCALLTYPE prefix( - /* [retval][out] */ BSTR *result) { return DOMNode::prefix(result); } + virtual HRESULT STDMETHODCALLTYPE prefix( + /* [retval][out] */ BSTR* result) { return DOMNode::prefix(result); } - virtual HRESULT STDMETHODCALLTYPE setPrefix( + virtual HRESULT STDMETHODCALLTYPE setPrefix( /* [in] */ BSTR prefix) { return DOMNode::setPrefix(prefix); } - virtual HRESULT STDMETHODCALLTYPE localName( - /* [retval][out] */ BSTR *result) { return DOMNode::localName(result); } + virtual HRESULT STDMETHODCALLTYPE localName( + /* [retval][out] */ BSTR* result) { return DOMNode::localName(result); } - virtual HRESULT STDMETHODCALLTYPE hasAttributes( - /* [retval][out] */ BOOL *result) { return DOMNode::hasAttributes(result); } + virtual HRESULT STDMETHODCALLTYPE hasAttributes( + /* [retval][out] */ BOOL* result) { return DOMNode::hasAttributes(result); } - virtual HRESULT STDMETHODCALLTYPE isSameNode( + virtual HRESULT STDMETHODCALLTYPE isSameNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result) { return DOMNode::isSameNode(other, result); } - virtual HRESULT STDMETHODCALLTYPE isEqualNode( + virtual HRESULT STDMETHODCALLTYPE isEqualNode( /* [in] */ IDOMNode* other, /* [retval][out] */ BOOL* result) { return DOMNode::isEqualNode(other, result); } - virtual HRESULT STDMETHODCALLTYPE textContent( + virtual HRESULT STDMETHODCALLTYPE textContent( /* [retval][out] */ BSTR* result) { return DOMNode::textContent(result); } - virtual HRESULT STDMETHODCALLTYPE setTextContent( + virtual HRESULT STDMETHODCALLTYPE setTextContent( /* [in] */ BSTR text) { return DOMNode::setTextContent(text); } // IDOMElement - virtual HRESULT STDMETHODCALLTYPE tagName( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE tagName( + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE getAttribute( + virtual HRESULT STDMETHODCALLTYPE getAttribute( /* [in] */ BSTR name, - /* [retval][out] */ BSTR *result); + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE setAttribute( + virtual HRESULT STDMETHODCALLTYPE setAttribute( /* [in] */ BSTR name, /* [in] */ BSTR value); - virtual HRESULT STDMETHODCALLTYPE removeAttribute( + virtual HRESULT STDMETHODCALLTYPE removeAttribute( /* [in] */ BSTR name); - virtual HRESULT STDMETHODCALLTYPE getAttributeNode( + virtual HRESULT STDMETHODCALLTYPE getAttributeNode( /* [in] */ BSTR name, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE setAttributeNode( + virtual HRESULT STDMETHODCALLTYPE setAttributeNode( /* [in] */ IDOMAttr *newAttr, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE removeAttributeNode( + virtual HRESULT STDMETHODCALLTYPE removeAttributeNode( /* [in] */ IDOMAttr *oldAttr, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE getElementsByTagName( + virtual HRESULT STDMETHODCALLTYPE getElementsByTagName( /* [in] */ BSTR name, - /* [retval][out] */ IDOMNodeList **result); + /* [retval][out] */ IDOMNodeList** result); - virtual HRESULT STDMETHODCALLTYPE getAttributeNS( + virtual HRESULT STDMETHODCALLTYPE getAttributeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName, - /* [retval][out] */ BSTR *result); + /* [retval][out] */ BSTR* result); - virtual HRESULT STDMETHODCALLTYPE setAttributeNS( + virtual HRESULT STDMETHODCALLTYPE setAttributeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR qualifiedName, /* [in] */ BSTR value); - virtual HRESULT STDMETHODCALLTYPE removeAttributeNS( + virtual HRESULT STDMETHODCALLTYPE removeAttributeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName); - virtual HRESULT STDMETHODCALLTYPE getAttributeNodeNS( + virtual HRESULT STDMETHODCALLTYPE getAttributeNodeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE setAttributeNodeNS( + virtual HRESULT STDMETHODCALLTYPE setAttributeNodeNS( /* [in] */ IDOMAttr *newAttr, - /* [retval][out] */ IDOMAttr **result); + /* [retval][out] */ IDOMAttr** result); - virtual HRESULT STDMETHODCALLTYPE getElementsByTagNameNS( + virtual HRESULT STDMETHODCALLTYPE getElementsByTagNameNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName, - /* [retval][out] */ IDOMNodeList **result); + /* [retval][out] */ IDOMNodeList** result); - virtual HRESULT STDMETHODCALLTYPE hasAttribute( + virtual HRESULT STDMETHODCALLTYPE hasAttribute( /* [in] */ BSTR name, - /* [retval][out] */ BOOL *result); + /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE hasAttributeNS( + virtual HRESULT STDMETHODCALLTYPE hasAttributeNS( /* [in] */ BSTR namespaceURI, /* [in] */ BSTR localName, - /* [retval][out] */ BOOL *result); + /* [retval][out] */ BOOL* result); virtual HRESULT STDMETHODCALLTYPE focus( void); virtual HRESULT STDMETHODCALLTYPE blur( void); // IDOMNodeExtensions - virtual HRESULT STDMETHODCALLTYPE boundingBox( + virtual HRESULT STDMETHODCALLTYPE boundingBox( /* [retval][out] */ LPRECT rect); - virtual HRESULT STDMETHODCALLTYPE lineBoxRects( + virtual HRESULT STDMETHODCALLTYPE lineBoxRects( /* [size_is][in] */ RECT* rects, /* [in] */ int cRects); // IDOMElementPrivate - virtual HRESULT STDMETHODCALLTYPE coreElement( + virtual HRESULT STDMETHODCALLTYPE coreElement( void** element); - virtual HRESULT STDMETHODCALLTYPE isEqual( - /* [in] */ IDOMElement *other, - /* [retval][out] */ BOOL *result); + virtual HRESULT STDMETHODCALLTYPE isEqual( + /* [in] */ IDOMElement* other, + /* [retval][out] */ BOOL* result); - virtual HRESULT STDMETHODCALLTYPE isFocused( - /* [retval][out] */ BOOL *result); + virtual HRESULT STDMETHODCALLTYPE isFocused( + /* [retval][out] */ BOOL* result); virtual HRESULT STDMETHODCALLTYPE innerText( /* [retval][out] */ BSTR* result); @@ -780,54 +776,57 @@ public: virtual HRESULT STDMETHODCALLTYPE renderedImage( /* [retval][out] */ HBITMAP* image); + virtual HRESULT STDMETHODCALLTYPE markerTextForListItem( + /* [retval][out] */ BSTR* markerText); + // IDOMElementCSSInlineStyle - virtual HRESULT STDMETHODCALLTYPE style( - /* [retval][out] */ IDOMCSSStyleDeclaration **result); + virtual HRESULT STDMETHODCALLTYPE style( + /* [retval][out] */ IDOMCSSStyleDeclaration** result); // IDOMElementExtensions - virtual HRESULT STDMETHODCALLTYPE offsetLeft( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE offsetLeft( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE offsetTop( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE offsetTop( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE offsetWidth( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE offsetWidth( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE offsetHeight( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE offsetHeight( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE offsetParent( - /* [retval][out] */ IDOMElement **result); + virtual HRESULT STDMETHODCALLTYPE offsetParent( + /* [retval][out] */ IDOMElement** result); - virtual HRESULT STDMETHODCALLTYPE clientWidth( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE clientWidth( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE clientHeight( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE clientHeight( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE scrollLeft( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE scrollLeft( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE setScrollLeft( + virtual HRESULT STDMETHODCALLTYPE setScrollLeft( /* [in] */ int newScrollLeft); - virtual HRESULT STDMETHODCALLTYPE scrollTop( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE scrollTop( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE setScrollTop( + virtual HRESULT STDMETHODCALLTYPE setScrollTop( /* [in] */ int newScrollTop); - virtual HRESULT STDMETHODCALLTYPE scrollWidth( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE scrollWidth( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE scrollHeight( - /* [retval][out] */ int *result); + virtual HRESULT STDMETHODCALLTYPE scrollHeight( + /* [retval][out] */ int* result); - virtual HRESULT STDMETHODCALLTYPE scrollIntoView( + virtual HRESULT STDMETHODCALLTYPE scrollIntoView( /* [in] */ BOOL alignWithTop); - virtual HRESULT STDMETHODCALLTYPE scrollIntoViewIfNeeded( + virtual HRESULT STDMETHODCALLTYPE scrollIntoViewIfNeeded( /* [in] */ BOOL centerIfNeeded); // DOMElement diff --git a/WebKit/win/DOMHTMLClasses.cpp b/WebKit/win/DOMHTMLClasses.cpp index 4889ba9..2dd6deb 100644 --- a/WebKit/win/DOMHTMLClasses.cpp +++ b/WebKit/win/DOMHTMLClasses.cpp @@ -27,6 +27,7 @@ #include "WebKitDLL.h" #include "DOMHTMLClasses.h" #include "COMPtr.h" +#include "WebFrame.h" #pragma warning(push, 0) #include <WebCore/BString.h> @@ -36,6 +37,7 @@ #include <WebCore/HTMLCollection.h> #include <WebCore/HTMLDocument.h> #include <WebCore/HTMLFormElement.h> +#include <WebCore/HTMLIFrameElement.h> #include <WebCore/HTMLInputElement.h> #include <WebCore/HTMLNames.h> #include <WebCore/HTMLOptionElement.h> @@ -481,7 +483,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLElement::innerText( /* [retval][out] */ BSTR* result) { ASSERT(m_element && m_element->isHTMLElement()); - WebCore::String innerTextString = static_cast<HTMLElement*>(m_element)->innerText(); + WTF::String innerTextString = static_cast<HTMLElement*>(m_element)->innerText(); *result = BString(innerTextString.characters(), innerTextString.length()).release(); return S_OK; } @@ -491,7 +493,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLElement::setInnerText( { ASSERT(m_element && m_element->isHTMLElement()); HTMLElement* htmlEle = static_cast<HTMLElement*>(m_element); - WebCore::String textString(text, SysStringLen(text)); + WTF::String textString(text, SysStringLen(text)); WebCore::ExceptionCode ec = 0; htmlEle->setInnerText(textString, ec); return S_OK; @@ -559,7 +561,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLFormElement::action( /* [retval][out] */ BSTR* result) { ASSERT(m_element && m_element->hasTagName(formTag)); - WebCore::String actionString = static_cast<HTMLFormElement*>(m_element)->action(); + WTF::String actionString = static_cast<HTMLFormElement*>(m_element)->action(); *result = BString(actionString.characters(), actionString.length()).release(); return S_OK; } @@ -589,7 +591,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLFormElement::method( /* [retval][out] */ BSTR* result) { ASSERT(m_element && m_element->hasTagName(formTag)); - WebCore::String methodString = static_cast<HTMLFormElement*>(m_element)->method(); + WTF::String methodString = static_cast<HTMLFormElement*>(m_element)->method(); *result = BString(methodString.characters(), methodString.length()).release(); return S_OK; } @@ -1186,7 +1188,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLInputElement::setType( { ASSERT(m_element && m_element->hasTagName(inputTag)); HTMLInputElement* inputElement = static_cast<HTMLInputElement*>(m_element); - WebCore::String typeString(type, SysStringLen(type)); + WTF::String typeString(type, SysStringLen(type)); inputElement->setType(typeString); return S_OK; } @@ -1210,7 +1212,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLInputElement::value( { ASSERT(m_element && m_element->hasTagName(inputTag)); HTMLInputElement* inputElement = static_cast<HTMLInputElement*>(m_element); - WebCore::String valueString = inputElement->value(); + WTF::String valueString = inputElement->value(); *result = BString(valueString.characters(), valueString.length()).release(); if (valueString.length() && !*result) return E_OUTOFMEMORY; @@ -1548,7 +1550,7 @@ HRESULT STDMETHODCALLTYPE DOMHTMLTextAreaElement::value( { ASSERT(m_element && m_element->hasTagName(textareaTag)); HTMLTextAreaElement* textareaElement = static_cast<HTMLTextAreaElement*>(m_element); - WebCore::String valueString = textareaElement->value(); + WTF::String valueString = textareaElement->value(); *result = BString(valueString.characters(), valueString.length()).release(); if (valueString.length() && !*result) return E_OUTOFMEMORY; @@ -1587,3 +1589,33 @@ HRESULT STDMETHODCALLTYPE DOMHTMLTextAreaElement::isUserEdited( *result = TRUE; return S_OK; } + +// DOMHTMLIFrameElement - IUnknown -------------------------------------------------- + +HRESULT STDMETHODCALLTYPE DOMHTMLIFrameElement::QueryInterface(REFIID riid, void** ppvObject) +{ + *ppvObject = 0; + if (IsEqualGUID(riid, IID_IDOMHTMLIFrameElement)) + *ppvObject = static_cast<IDOMHTMLIFrameElement*>(this); + else + return DOMHTMLElement::QueryInterface(riid, ppvObject); + + AddRef(); + return S_OK; +} + +// DOMHTMLIFrameElement ------------------------------------------------------------- + +HRESULT STDMETHODCALLTYPE DOMHTMLIFrameElement::contentFrame( + /* [retval][out] */ IWebFrame **result) +{ + if (!result) + return E_POINTER; + *result = 0; + ASSERT(m_element && m_element->hasTagName(iframeTag)); + HTMLIFrameElement* iFrameElement = static_cast<HTMLIFrameElement*>(m_element); + COMPtr<IWebFrame> webFrame = kit(iFrameElement->contentFrame()); + if (!webFrame) + return E_FAIL; + return webFrame.copyRefTo(result); +} diff --git a/WebKit/win/DOMHTMLClasses.h b/WebKit/win/DOMHTMLClasses.h index f520c3c..baeecc9 100644 --- a/WebKit/win/DOMHTMLClasses.h +++ b/WebKit/win/DOMHTMLClasses.h @@ -2356,4 +2356,266 @@ public: /* [retval][out] */ BOOL *result); }; +class DOMHTMLIFrameElement : public DOMHTMLElement, public IDOMHTMLIFrameElement +{ +protected: + DOMHTMLIFrameElement(); +public: + DOMHTMLIFrameElement(WebCore::Element* e) : DOMHTMLElement(e) {} + + // IUnknown + virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject); + virtual ULONG STDMETHODCALLTYPE AddRef(void) { return DOMHTMLElement::AddRef(); } + virtual ULONG STDMETHODCALLTYPE Release(void) { return DOMHTMLElement::Release(); } + + // IWebScriptObject + virtual HRESULT STDMETHODCALLTYPE throwException( + /* [in] */ BSTR exceptionMessage, + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::throwException(exceptionMessage, result); } + + virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod( + /* [in] */ BSTR name, + /* [size_is][in] */ const VARIANT args[ ], + /* [in] */ int cArgs, + /* [retval][out] */ VARIANT *result) { return DOMHTMLElement::callWebScriptMethod(name, args, cArgs, result); } + + virtual HRESULT STDMETHODCALLTYPE evaluateWebScript( + /* [in] */ BSTR script, + /* [retval][out] */ VARIANT *result) { return DOMHTMLElement::evaluateWebScript(script, result); } + + virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey( + /* [in] */ BSTR name) { return DOMHTMLElement::removeWebScriptKey(name); } + + virtual HRESULT STDMETHODCALLTYPE stringRepresentation( + /* [retval][out] */ BSTR* stringRepresentation) { return DOMHTMLElement::stringRepresentation(stringRepresentation); } + + virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex( + /* [in] */ unsigned int index, + /* [retval][out] */ VARIANT *result) { return DOMHTMLElement::webScriptValueAtIndex(index, result); } + + virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex( + /* [in] */ unsigned int index, + /* [in] */ VARIANT val) { return DOMHTMLElement::setWebScriptValueAtIndex(index, val); } + + virtual HRESULT STDMETHODCALLTYPE setException( + /* [in] */ BSTR description) { return DOMHTMLElement::setException(description); } + + // IDOMNode + virtual HRESULT STDMETHODCALLTYPE nodeName( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::nodeName(result); } + + virtual HRESULT STDMETHODCALLTYPE nodeValue( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::nodeValue(result); } + + virtual HRESULT STDMETHODCALLTYPE setNodeValue( + /* [in] */ BSTR value) { return DOMHTMLElement::setNodeValue(value); } + + virtual HRESULT STDMETHODCALLTYPE nodeType( + /* [retval][out] */ unsigned short *result) { return DOMHTMLElement::nodeType(result); } + + virtual HRESULT STDMETHODCALLTYPE parentNode( + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::parentNode(result); } + + virtual HRESULT STDMETHODCALLTYPE childNodes( + /* [retval][out] */ IDOMNodeList **result) { return DOMHTMLElement::childNodes(result); } + + virtual HRESULT STDMETHODCALLTYPE firstChild( + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::firstChild(result); } + + virtual HRESULT STDMETHODCALLTYPE lastChild( + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::lastChild(result); } + + virtual HRESULT STDMETHODCALLTYPE previousSibling( + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::previousSibling(result); } + + virtual HRESULT STDMETHODCALLTYPE nextSibling( + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::nextSibling(result); } + + virtual HRESULT STDMETHODCALLTYPE attributes( + /* [retval][out] */ IDOMNamedNodeMap **result) { return DOMHTMLElement::attributes(result); } + + virtual HRESULT STDMETHODCALLTYPE ownerDocument( + /* [retval][out] */ IDOMDocument **result) { return DOMHTMLElement::ownerDocument(result); } + + virtual HRESULT STDMETHODCALLTYPE insertBefore( + /* [in] */ IDOMNode *newChild, + /* [in] */ IDOMNode *refChild, + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::insertBefore(newChild, refChild, result); } + + virtual HRESULT STDMETHODCALLTYPE replaceChild( + /* [in] */ IDOMNode *newChild, + /* [in] */ IDOMNode *oldChild, + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::replaceChild(newChild, oldChild, result); } + + virtual HRESULT STDMETHODCALLTYPE removeChild( + /* [in] */ IDOMNode *oldChild, + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::removeChild(oldChild, result); } + + virtual HRESULT STDMETHODCALLTYPE appendChild( + /* [in] */ IDOMNode *oldChild, + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::appendChild(oldChild, result); } + + virtual HRESULT STDMETHODCALLTYPE hasChildNodes( + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::hasChildNodes(result); } + + virtual HRESULT STDMETHODCALLTYPE cloneNode( + /* [in] */ BOOL deep, + /* [retval][out] */ IDOMNode **result) { return DOMHTMLElement::cloneNode(deep, result); } + + virtual HRESULT STDMETHODCALLTYPE normalize( void) { return DOMHTMLElement::normalize(); } + + virtual HRESULT STDMETHODCALLTYPE isSupported( + /* [in] */ BSTR feature, + /* [in] */ BSTR version, + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::isSupported(feature, version, result); } + + virtual HRESULT STDMETHODCALLTYPE namespaceURI( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::namespaceURI(result); } + + virtual HRESULT STDMETHODCALLTYPE prefix( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::prefix(result); } + + virtual HRESULT STDMETHODCALLTYPE setPrefix( + /* [in] */ BSTR prefix) { return DOMHTMLElement::setPrefix(prefix); } + + virtual HRESULT STDMETHODCALLTYPE localName( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::localName(result); } + + virtual HRESULT STDMETHODCALLTYPE hasAttributes( + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::hasAttributes(result); } + + virtual HRESULT STDMETHODCALLTYPE isSameNode( + /* [in] */ IDOMNode* other, + /* [retval][out] */ BOOL* result) { return DOMHTMLElement::isSameNode(other, result); } + + virtual HRESULT STDMETHODCALLTYPE isEqualNode( + /* [in] */ IDOMNode* other, + /* [retval][out] */ BOOL* result) { return DOMHTMLElement::isEqualNode(other, result); } + + virtual HRESULT STDMETHODCALLTYPE textContent( + /* [retval][out] */ BSTR* result) { return DOMHTMLElement::textContent(result); } + + virtual HRESULT STDMETHODCALLTYPE setTextContent( + /* [in] */ BSTR text) { return DOMHTMLElement::setTextContent(text); } + + // IDOMElement + virtual HRESULT STDMETHODCALLTYPE tagName( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::tagName(result); } + + virtual HRESULT STDMETHODCALLTYPE getAttribute( + /* [in] */ BSTR name, + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::getAttribute(name, result); } + + virtual HRESULT STDMETHODCALLTYPE setAttribute( + /* [in] */ BSTR name, + /* [in] */ BSTR value) { return DOMHTMLElement::setAttribute(name, value); } + + virtual HRESULT STDMETHODCALLTYPE removeAttribute( + /* [in] */ BSTR name) { return DOMHTMLElement::removeAttribute(name); } + + virtual HRESULT STDMETHODCALLTYPE getAttributeNode( + /* [in] */ BSTR name, + /* [retval][out] */ IDOMAttr **result) { return DOMHTMLElement::getAttributeNode(name, result); } + + virtual HRESULT STDMETHODCALLTYPE setAttributeNode( + /* [in] */ IDOMAttr *newAttr, + /* [retval][out] */ IDOMAttr **result) { return DOMHTMLElement::setAttributeNode(newAttr, result); } + + virtual HRESULT STDMETHODCALLTYPE removeAttributeNode( + /* [in] */ IDOMAttr *oldAttr, + /* [retval][out] */ IDOMAttr **result) { return DOMHTMLElement::removeAttributeNode(oldAttr, result); } + + virtual HRESULT STDMETHODCALLTYPE getElementsByTagName( + /* [in] */ BSTR name, + /* [retval][out] */ IDOMNodeList **result) { return DOMHTMLElement::getElementsByTagName(name, result); } + + virtual HRESULT STDMETHODCALLTYPE getAttributeNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR localName, + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::getAttributeNS(namespaceURI, localName, result); } + + virtual HRESULT STDMETHODCALLTYPE setAttributeNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR qualifiedName, + /* [in] */ BSTR value) { return DOMHTMLElement::setAttributeNS(namespaceURI, qualifiedName, value); } + + virtual HRESULT STDMETHODCALLTYPE removeAttributeNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR localName) { return DOMHTMLElement::removeAttributeNS(namespaceURI, localName); } + + virtual HRESULT STDMETHODCALLTYPE getAttributeNodeNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR localName, + /* [retval][out] */ IDOMAttr **result) { return DOMHTMLElement::getAttributeNodeNS(namespaceURI, localName, result); } + + virtual HRESULT STDMETHODCALLTYPE setAttributeNodeNS( + /* [in] */ IDOMAttr *newAttr, + /* [retval][out] */ IDOMAttr **result) { return DOMHTMLElement::setAttributeNodeNS(newAttr, result); } + + virtual HRESULT STDMETHODCALLTYPE getElementsByTagNameNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR localName, + /* [retval][out] */ IDOMNodeList **result) { return DOMHTMLElement::getElementsByTagNameNS(namespaceURI, localName, result); } + + virtual HRESULT STDMETHODCALLTYPE hasAttribute( + /* [in] */ BSTR name, + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::hasAttribute(name, result); } + + virtual HRESULT STDMETHODCALLTYPE hasAttributeNS( + /* [in] */ BSTR namespaceURI, + /* [in] */ BSTR localName, + /* [retval][out] */ BOOL *result) { return DOMHTMLElement::hasAttributeNS(namespaceURI, localName, result); } + + virtual HRESULT STDMETHODCALLTYPE focus( void) { return DOMHTMLElement::focus(); } + + virtual HRESULT STDMETHODCALLTYPE blur( void) { return DOMHTMLElement::blur(); } + + // IDOMHTMLElement + virtual HRESULT STDMETHODCALLTYPE idName( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::idName(result); } + + virtual HRESULT STDMETHODCALLTYPE setIdName( + /* [in] */ BSTR idName) { return DOMHTMLElement::setIdName(idName); } + + virtual HRESULT STDMETHODCALLTYPE title( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::title(result); } + + virtual HRESULT STDMETHODCALLTYPE setTitle( + /* [in] */ BSTR title) { return DOMHTMLElement::setTitle(title); } + + virtual HRESULT STDMETHODCALLTYPE lang( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::lang(result); } + + virtual HRESULT STDMETHODCALLTYPE setLang( + /* [in] */ BSTR lang) { return DOMHTMLElement::setLang(lang); } + + virtual HRESULT STDMETHODCALLTYPE dir( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::dir(result); } + + virtual HRESULT STDMETHODCALLTYPE setDir( + /* [in] */ BSTR dir) { return DOMHTMLElement::setDir(dir); } + + virtual HRESULT STDMETHODCALLTYPE className( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::className(result); } + + virtual HRESULT STDMETHODCALLTYPE setClassName( + /* [in] */ BSTR className) { return DOMHTMLElement::setClassName(className); } + + virtual HRESULT STDMETHODCALLTYPE innerHTML( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::innerHTML(result); } + + virtual HRESULT STDMETHODCALLTYPE setInnerHTML( + /* [in] */ BSTR html) { return DOMHTMLElement::setInnerHTML(html); } + + virtual HRESULT STDMETHODCALLTYPE innerText( + /* [retval][out] */ BSTR *result) { return DOMHTMLElement::innerText(result); } + + virtual HRESULT STDMETHODCALLTYPE setInnerText( + /* [in] */ BSTR text) { return DOMHTMLElement::setInnerText(text); } + + // IDOMHTMLIFrameElement + virtual HRESULT STDMETHODCALLTYPE contentFrame( + /* [retval][out] */ IWebFrame **result); +}; + #endif diff --git a/WebKit/win/DefaultDownloadDelegate.cpp b/WebKit/win/DefaultDownloadDelegate.cpp index cf443b5..29da6a4 100644 --- a/WebKit/win/DefaultDownloadDelegate.cpp +++ b/WebKit/win/DefaultDownloadDelegate.cpp @@ -30,6 +30,7 @@ #include "WebKit.h" #include "WebKitLogging.h" #include "WebMutableURLRequest.h" +#include <wtf/text/CString.h> #include <shlobj.h> #include <tchar.h> diff --git a/WebKit/win/ForEachCoClass.h b/WebKit/win/ForEachCoClass.h index ab7182d..02aa097 100644 --- a/WebKit/win/ForEachCoClass.h +++ b/WebKit/win/ForEachCoClass.h @@ -66,6 +66,7 @@ macro(WebScriptWorld) \ macro(WebGeolocationPosition) \ macro(WebSerializedJSValue) \ + macro(WebUserContentURLPattern) \ // end of macro // Everything below this point is deprecated. Please do not use. diff --git a/WebKit/win/FullscreenVideoController.cpp b/WebKit/win/FullscreenVideoController.cpp index dbfc794..5f9b959 100644 --- a/WebKit/win/FullscreenVideoController.cpp +++ b/WebKit/win/FullscreenVideoController.cpp @@ -30,12 +30,16 @@ #include "FullscreenVideoController.h" #include "WebKitDLL.h" +#include "WebView.h" #include <ApplicationServices/ApplicationServices.h> #include <WebCore/BitmapInfo.h> +#include <WebCore/Chrome.h> #include <WebCore/Font.h> #include <WebCore/FontSelector.h> #include <WebCore/GraphicsContext.h> +#include <WebCore/Page.h> #include <WebCore/TextRun.h> +#include <WebCore/WKCACFLayer.h> #include <WebKitSystemInterface/WebKitSystemInterface.h> #include <windowsx.h> #include <wtf/StdLibExtras.h> @@ -112,7 +116,7 @@ HUDButton::HUDButton(HUDButtonType type, const IntPoint& position) void HUDButton::draw(GraphicsContext& context) { Image* image = (m_showAltButton && m_buttonImageAlt) ? m_buttonImageAlt.get() : m_buttonImage.get(); - context.drawImage(image, DeviceColorSpace, m_rect.location()); + context.drawImage(image, ColorSpaceDeviceRGB, m_rect.location()); } HUDSlider::HUDSlider(HUDSliderButtonShape shape, int buttonSize, const IntRect& rect) @@ -128,11 +132,11 @@ void HUDSlider::draw(GraphicsContext& context) { // Draw gutter IntSize radius(m_rect.height() / 2, m_rect.height() / 2); - context.fillRoundedRect(m_rect, radius, radius, radius, radius, Color(sliderGutterColor), DeviceColorSpace); + context.fillRoundedRect(m_rect, radius, radius, radius, radius, Color(sliderGutterColor), ColorSpaceDeviceRGB); // Draw button - context.setStrokeColor(Color(sliderButtonColor), DeviceColorSpace); - context.setFillColor(Color(sliderButtonColor), DeviceColorSpace); + context.setStrokeColor(Color(sliderButtonColor), ColorSpaceDeviceRGB); + context.setFillColor(Color(sliderButtonColor), ColorSpaceDeviceRGB); if (m_buttonShape == RoundButton) { context.drawEllipse(IntRect(m_rect.location().x() + m_buttonPosition, m_rect.location().y() - (m_buttonSize - m_rect.height()) / 2, m_buttonSize, m_buttonSize)); @@ -169,9 +173,53 @@ void HUDSlider::drag(const IntPoint& point, bool start) m_buttonPosition = max(0, min(m_rect.width() - m_buttonSize, point.x() - m_dragStartOffset)); } +#if USE(ACCELERATED_COMPOSITING) +class FullscreenVideoController::LayoutClient : public WKCACFLayerLayoutClient { +public: + LayoutClient(FullscreenVideoController* parent); + void layoutSublayersOfLayer(WKCACFLayer* layer); + + FullscreenVideoController* m_parent; +}; + +FullscreenVideoController::LayoutClient::LayoutClient(FullscreenVideoController* parent) + : m_parent(parent) +{ +} + +void FullscreenVideoController::LayoutClient::layoutSublayersOfLayer(WKCACFLayer* layer) +{ + ASSERT_ARG(layer, layer == m_parent->m_rootChild); + + HTMLMediaElement* mediaElement = m_parent->m_mediaElement.get(); + if (!mediaElement) + return; + + WKCACFLayer* videoLayer = mediaElement->platformLayer(); + if (!videoLayer || videoLayer->superlayer() != layer) + return; + + FloatRect layerBounds = layer->bounds(); + + FloatSize videoSize = mediaElement->player()->naturalSize(); + float scaleFactor; + if (videoSize.aspectRatio() > layerBounds.size().aspectRatio()) + scaleFactor = layerBounds.width() / videoSize.width(); + else + scaleFactor = layerBounds.height() / videoSize.height(); + videoSize.scale(scaleFactor); + + // Calculate the centered position based on the videoBounds and layerBounds: + FloatPoint videoPosition; + FloatPoint videoOrigin; + videoOrigin.setX((layerBounds.width() - videoSize.width()) * 0.5); + videoOrigin.setY((layerBounds.height() - videoSize.height()) * 0.5); + videoLayer->setFrame(FloatRect(videoOrigin, videoSize)); +} +#endif + FullscreenVideoController::FullscreenVideoController() : m_hudWindow(0) - , m_videoWindow(0) , m_playPauseButton(HUDButton::PlayPauseButton, IntPoint((windowWidth - buttonSize) / 2, marginTop)) , m_timeSliderButton(HUDButton::TimeSliderButton, IntPoint(0, 0)) , m_volumeUpButton(HUDButton::VolumeUpButton, IntPoint(margin + buttonMiniSize + volumeSliderWidth + buttonMiniSize / 2, marginTop + (buttonSize - buttonMiniSize) / 2)) @@ -183,18 +231,22 @@ FullscreenVideoController::FullscreenVideoController() , m_hitWidget(0) , m_movingWindow(false) , m_timer(this, &FullscreenVideoController::timerFired) +#if USE(ACCELERATED_COMPOSITING) + , m_rootChild(WKCACFLayer::create(WKCACFLayer::Layer)) + , m_layoutClient(new LayoutClient(this)) +#endif + , m_fullscreenWindow(new MediaPlayerPrivateFullscreenWindow(this)) { +#if USE(ACCELERATED_COMPOSITING) + m_rootChild->setLayoutClient(m_layoutClient.get()); +#endif } FullscreenVideoController::~FullscreenVideoController() { - if (movie()) - movie()->exitFullscreen(); -} - -QTMovieWin* FullscreenVideoController::movie() const -{ - return m_mediaElement ? reinterpret_cast<QTMovieWin*>(m_mediaElement->platformMedia().qtMovie) : 0; +#if USE(ACCELERATED_COMPOSITING) + m_rootChild->setLayoutClient(0); +#endif } void FullscreenVideoController::setMediaElement(HTMLMediaElement* mediaElement) @@ -211,13 +263,24 @@ void FullscreenVideoController::setMediaElement(HTMLMediaElement* mediaElement) void FullscreenVideoController::enterFullscreen() { - if (!movie()) + if (!m_mediaElement) return; - m_videoWindow = movie()->enterFullscreen(this); + WebView* webView = kit(m_mediaElement->document()->page()); + HWND parentHwnd = webView ? webView->viewWindow() : 0; + + m_fullscreenWindow->createWindow(parentHwnd); +#if USE(ACCELERATED_COMPOSITING) + m_fullscreenWindow->setRootChildLayer(m_rootChild); + + WKCACFLayer* videoLayer = m_mediaElement->platformLayer(); + m_rootChild->addSublayer(videoLayer); + m_rootChild->setNeedsLayout(); + m_rootChild->setGeometryFlipped(1); +#endif RECT windowRect; - GetClientRect(m_videoWindow, &windowRect); + GetClientRect(m_fullscreenWindow->hwnd(), &windowRect); m_fullscreenSize.setWidth(windowRect.right - windowRect.left); m_fullscreenSize.setHeight(windowRect.bottom - windowRect.top); @@ -226,13 +289,24 @@ void FullscreenVideoController::enterFullscreen() void FullscreenVideoController::exitFullscreen() { - if (movie()) - movie()->exitFullscreen(); - - m_videoWindow = 0; SetWindowLongPtr(m_hudWindow, 0, 0); - DestroyWindow(m_hudWindow); + + if (m_fullscreenWindow) + m_fullscreenWindow = 0; + + ASSERT(!IsWindow(m_hudWindow)); m_hudWindow = 0; + + // We previously ripped the mediaElement's platform layer out + // of its orginial layer tree to display it in our fullscreen + // window. Now, we need to get the layer back in its original + // tree. + // + // As a side effect of setting the player to invisible/visible, + // the player's layer will be recreated, and will be picked up + // the next time the layer tree is synched. + m_mediaElement->player()->setVisible(0); + m_mediaElement->player()->setVisible(1); } bool FullscreenVideoController::canPlay() const @@ -301,6 +375,9 @@ LRESULT FullscreenVideoController::fullscreenClientWndProc(HWND wnd, UINT messag case WM_CHAR: onChar(wParam); break; + case WM_KEYDOWN: + onKeyDown(wParam); + break; case WM_LBUTTONDOWN: onMouseDown(IntPoint(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam))); break; @@ -357,7 +434,7 @@ void FullscreenVideoController::createHUDWindow() // Dirty the window so the HUD draws RECT clearRect = { m_hudPosition.x(), m_hudPosition.y(), m_hudPosition.x() + windowWidth, m_hudPosition.y() + windowHeight }; - InvalidateRect(m_videoWindow, &clearRect, true); + InvalidateRect(m_fullscreenWindow->hwnd(), &clearRect, true); m_playPauseButton.setShowAltButton(!canPlay()); m_volumeSlider.setValue(volume()); @@ -368,9 +445,9 @@ void FullscreenVideoController::createHUDWindow() registerHUDWindowClass(); - m_hudWindow = CreateWindowEx(WS_EX_LAYERED | WS_EX_TRANSPARENT | WS_EX_TOPMOST | WS_EX_TOOLWINDOW, + m_hudWindow = CreateWindowEx(WS_EX_LAYERED | WS_EX_TRANSPARENT | WS_EX_TOOLWINDOW, fullscreenVideeoHUDWindowClassName, 0, WS_POPUP | WS_VISIBLE, - m_hudPosition.x(), m_hudPosition.y(), 0, 0, 0, 0, gInstance, 0); + m_hudPosition.x(), m_hudPosition.y(), 0, 0, m_fullscreenWindow->hwnd(), 0, gInstance, 0); ASSERT(::IsWindow(m_hudWindow)); SetWindowLongPtr(m_hudWindow, 0, reinterpret_cast<LONG_PTR>(this)); @@ -400,7 +477,7 @@ void FullscreenVideoController::draw() HDC windowDC = GetDC(m_hudWindow); HDC bitmapDC = CreateCompatibleDC(windowDC); ::ReleaseDC(m_hudWindow, windowDC); - SelectObject(bitmapDC, m_bitmap.get()); + HGDIOBJ oldBitmap = SelectObject(bitmapDC, m_bitmap.get()); GraphicsContext context(bitmapDC, true); @@ -412,9 +489,9 @@ void FullscreenVideoController::draw() IntSize innerRadius(borderRadius - borderThickness, borderRadius - borderThickness); IntRect innerRect(borderThickness, borderThickness, windowWidth - borderThickness * 2, windowHeight - borderThickness * 2); - context.fillRoundedRect(outerRect, outerRadius, outerRadius, outerRadius, outerRadius, Color(borderColor), DeviceColorSpace); + context.fillRoundedRect(outerRect, outerRadius, outerRadius, outerRadius, outerRadius, Color(borderColor), ColorSpaceDeviceRGB); context.setCompositeOperation(CompositeCopy); - context.fillRoundedRect(innerRect, innerRadius, innerRadius, innerRadius, innerRadius, Color(backgroundColor), DeviceColorSpace); + context.fillRoundedRect(innerRect, innerRadius, innerRadius, innerRadius, innerRadius, Color(backgroundColor), ColorSpaceDeviceRGB); // Draw the widgets m_playPauseButton.draw(context); @@ -449,13 +526,13 @@ void FullscreenVideoController::draw() // Left string s = timeToString(currentTime()); TextRun leftText(s); - context.setFillColor(Color(textColor), DeviceColorSpace); + context.setFillColor(Color(textColor), ColorSpaceDeviceRGB); context.drawText(font, leftText, IntPoint(windowWidth / 2 - timeSliderWidth / 2 - margin - font.width(leftText), windowHeight - margin - sliderHeight / 2 + font.height() / 4)); // Right string s = timeToString(currentTime() - duration()); TextRun rightText(s); - context.setFillColor(Color(textColor), DeviceColorSpace); + context.setFillColor(Color(textColor), ColorSpaceDeviceRGB); context.drawText(font, rightText, IntPoint(windowWidth / 2 + timeSliderWidth / 2 + margin, windowHeight - margin - sliderHeight / 2 + font.height() / 4)); // Copy to the window @@ -467,6 +544,7 @@ void FullscreenVideoController::draw() context.restore(); + ::SelectObject(bitmapDC, oldBitmap); ::DeleteDC(bitmapDC); } @@ -481,6 +559,9 @@ LRESULT FullscreenVideoController::hudWndProc(HWND wnd, UINT message, WPARAM wPa case WM_CHAR: controller->onChar(wParam); break; + case WM_KEYDOWN: + controller->onKeyDown(wParam); + break; case WM_LBUTTONDOWN: controller->onMouseDown(IntPoint(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam))); break; @@ -504,6 +585,14 @@ void FullscreenVideoController::onChar(int c) togglePlay(); } +void FullscreenVideoController::onKeyDown(int virtualKey) +{ + if (virtualKey == VK_ESCAPE) { + if (m_mediaElement) + m_mediaElement->exitFullscreen(); + } +} + void FullscreenVideoController::timerFired(Timer<FullscreenVideoController>*) { // Update the time slider @@ -513,7 +602,7 @@ void FullscreenVideoController::timerFired(Timer<FullscreenVideoController>*) void FullscreenVideoController::onMouseDown(const IntPoint& point) { - IntPoint convertedPoint(fullScreenToHUDCoordinates(point)); + IntPoint convertedPoint(fullscreenToHUDCoordinates(point)); // Don't bother hit testing if we're outside the bounds of the window if (convertedPoint.x() < 0 || convertedPoint.x() >= windowWidth || convertedPoint.y() < 0 || convertedPoint.y() >= windowHeight) @@ -552,7 +641,7 @@ void FullscreenVideoController::onMouseDown(const IntPoint& point) void FullscreenVideoController::onMouseMove(const IntPoint& point) { - IntPoint convertedPoint(fullScreenToHUDCoordinates(point)); + IntPoint convertedPoint(fullscreenToHUDCoordinates(point)); if (m_hitWidget) { m_hitWidget->drag(convertedPoint, false); @@ -567,7 +656,7 @@ void FullscreenVideoController::onMouseMove(const IntPoint& point) void FullscreenVideoController::onMouseUp(const IntPoint& point) { - IntPoint convertedPoint(fullScreenToHUDCoordinates(point)); + IntPoint convertedPoint(fullscreenToHUDCoordinates(point)); m_movingWindow = false; if (m_hitWidget) { diff --git a/WebKit/win/FullscreenVideoController.h b/WebKit/win/FullscreenVideoController.h index b39e30c..9ac8c69 100644 --- a/WebKit/win/FullscreenVideoController.h +++ b/WebKit/win/FullscreenVideoController.h @@ -28,7 +28,7 @@ #if ENABLE(VIDEO) -#include "QTMovieWin.h" +#include "MediaPlayerPrivateFullscreenWindow.h" #include <WebCore/HTMLMediaElement.h> #include <WebCore/Image.h> @@ -38,6 +38,9 @@ namespace WebCore { class GraphicsContext; +#if USE(ACCELERATED_COMPOSITING) +class WKCACFLayer; +#endif } class HUDWidget { @@ -99,7 +102,7 @@ private: int m_dragStartOffset; }; -class FullscreenVideoController : QTMovieWinFullscreenClient, public Noncopyable { +class FullscreenVideoController : WebCore::MediaPlayerPrivateFullscreenClient, public Noncopyable { public: FullscreenVideoController(); virtual ~FullscreenVideoController(); @@ -111,12 +114,11 @@ public: void exitFullscreen(); private: - // QTMovieWinFullscreenClient + // MediaPlayerPrivateFullscreenWindowClient virtual LRESULT fullscreenClientWndProc(HWND, UINT message, WPARAM, LPARAM); - + void ensureWindow(); - QTMovieWin* movie() const; - + bool canPlay() const; void play(); void pause(); @@ -128,7 +130,7 @@ private: void beginScrubbing(); void endScrubbing(); - WebCore::IntPoint fullScreenToHUDCoordinates(const WebCore::IntPoint& point) const + WebCore::IntPoint fullscreenToHUDCoordinates(const WebCore::IntPoint& point) const { return WebCore::IntPoint(point.x()- m_hudPosition.x(), point.y() - m_hudPosition.y()); } @@ -145,13 +147,21 @@ private: void onMouseDown(const WebCore::IntPoint&); void onMouseMove(const WebCore::IntPoint&); void onMouseUp(const WebCore::IntPoint&); + void onKeyDown(int virtualKey); RefPtr<WebCore::HTMLMediaElement> m_mediaElement; - HWND m_hudWindow, m_videoWindow; + HWND m_hudWindow; OwnPtr<HBITMAP> m_bitmap; WebCore::IntSize m_fullscreenSize; WebCore::IntPoint m_hudPosition; + OwnPtr<WebCore::MediaPlayerPrivateFullscreenWindow> m_fullscreenWindow; +#if USE(ACCELERATED_COMPOSITING) + RefPtr<WebCore::WKCACFLayer> m_rootChild; + class LayoutClient; + friend class LayoutClient; + OwnPtr<LayoutClient> m_layoutClient; +#endif HUDButton m_playPauseButton; HUDButton m_timeSliderButton; diff --git a/WebKit/win/Interfaces/DOMHTML.idl b/WebKit/win/Interfaces/DOMHTML.idl index 7ccb682..0ee651b 100644 --- a/WebKit/win/Interfaces/DOMHTML.idl +++ b/WebKit/win/Interfaces/DOMHTML.idl @@ -37,6 +37,7 @@ interface IDOMDocument; interface IDOMElement; interface IDOMNode; interface IDOMNodeList; +interface IWebFrame; /* @interface DOMHTMLCollection : DOMObject @@ -933,3 +934,17 @@ interface IDOMHTMLTextAreaElement : IDOMHTMLElement */ HRESULT select(); } + +/* + @interface DOMHTMLIFrameElement : DOMHTMLElement +*/ +[ + object, + oleautomation, + uuid(8CFFB1DA-7BA5-4cf7-B7E6-80583354855B), + pointer_default(unique) +] +interface IDOMHTMLIFrameElement : IDOMHTMLElement +{ + HRESULT contentFrame([out, retval] IWebFrame** result); +} diff --git a/WebKit/win/Interfaces/DOMPrivate.idl b/WebKit/win/Interfaces/DOMPrivate.idl index 3365565..c3bb60e 100644 --- a/WebKit/win/Interfaces/DOMPrivate.idl +++ b/WebKit/win/Interfaces/DOMPrivate.idl @@ -47,6 +47,7 @@ interface IDOMElementPrivate : IUnknown HRESULT innerText([out, retval] BSTR* result); [local] HRESULT font(WebFontDescription* webFontDescription); HRESULT renderedImage([out, retval] HBITMAP* image); + [local] HRESULT markerTextForListItem([out, retval] BSTR* markerText); } /* diff --git a/WebKit/win/Interfaces/IWebDataSource.idl b/WebKit/win/Interfaces/IWebDataSource.idl index 15bea1a..dd78d7e 100644 --- a/WebKit/win/Interfaces/IWebDataSource.idl +++ b/WebKit/win/Interfaces/IWebDataSource.idl @@ -214,4 +214,5 @@ interface IWebDataSourcePrivate : IUnknown HRESULT overrideEncoding([out, retval] BSTR* encoding); HRESULT setOverrideEncoding([in] BSTR encoding); HRESULT mainDocumentError([out, retval] IWebError** error); + HRESULT setDeferMainResourceDataLoad([in] BOOL flag); } diff --git a/WebKit/win/Interfaces/IWebEmbeddedView.idl b/WebKit/win/Interfaces/IWebEmbeddedView.idl index fb47f60..14b61fd 100644 --- a/WebKit/win/Interfaces/IWebEmbeddedView.idl +++ b/WebKit/win/Interfaces/IWebEmbeddedView.idl @@ -1,46 +1,46 @@ -/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-#ifndef DO_NO_IMPORTS
-import "oaidl.idl";
-import "ocidl.idl";
-#endif
-
-[
- object,
- oleautomation,
- uuid(F2771780-84C2-4684-8D52-D4F923E67F71),
- pointer_default(unique)
-]
-interface IWebEmbeddedView : IUnknown
-{
- HRESULT createViewWindow([in] OLE_HANDLE parentWindow, [in] LPSIZE pluginSize, [out, retval] OLE_HANDLE* window);
-
- HRESULT didReceiveResponse([in] IWebURLResponse* response);
- HRESULT didReceiveData([in] IStream* data);
- HRESULT didFinishLoading();
- HRESULT didFail([in] IWebError* error);
-}
+/* + * Copyright (C) 2008 Apple Inc. All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#ifndef DO_NO_IMPORTS +import "oaidl.idl"; +import "ocidl.idl"; +#endif + +[ + object, + oleautomation, + uuid(F2771780-84C2-4684-8D52-D4F923E67F71), + pointer_default(unique) +] +interface IWebEmbeddedView : IUnknown +{ + HRESULT createViewWindow([in] OLE_HANDLE parentWindow, [in] LPSIZE pluginSize, [out, retval] OLE_HANDLE* window); + + HRESULT didReceiveResponse([in] IWebURLResponse* response); + HRESULT didReceiveData([in] IStream* data); + HRESULT didFinishLoading(); + HRESULT didFail([in] IWebError* error); +} diff --git a/WebKit/win/Interfaces/IWebFrameLoadDelegatePrivate2.idl b/WebKit/win/Interfaces/IWebFrameLoadDelegatePrivate2.idl index 7e07c55..b1eb87a 100644 --- a/WebKit/win/Interfaces/IWebFrameLoadDelegatePrivate2.idl +++ b/WebKit/win/Interfaces/IWebFrameLoadDelegatePrivate2.idl @@ -52,4 +52,5 @@ interface IWebFrameLoadDelegatePrivate2 : IWebFrameLoadDelegatePrivate HRESULT didPushStateWithinPageForFrame([in] IWebView* webView, [in] IWebFrame* frame); HRESULT didReplaceStateWithinPageForFrame([in] IWebView* webView, [in] IWebFrame* frame); HRESULT didPopStateWithinPageForFrame([in] IWebView* webView, [in] IWebFrame* frame); + HRESULT didChangeIcons([in] IWebView* webView, [in] IWebFrame* frame); } diff --git a/WebKit/win/Interfaces/IWebFramePrivate.idl b/WebKit/win/Interfaces/IWebFramePrivate.idl index ef1c133..279cbbf 100755 --- a/WebKit/win/Interfaces/IWebFramePrivate.idl +++ b/WebKit/win/Interfaces/IWebFramePrivate.idl @@ -30,8 +30,6 @@ import "IWebFrame.idl"; #endif interface IWebFrame; -interface IWebIconFetcher; -interface IWebIconFetcherDelegate; interface IWebScriptWorld; typedef enum { @@ -57,7 +55,7 @@ typedef enum { interface IWebFramePrivate : IUnknown { - HRESULT renderTreeAsExternalRepresentation([out, retval] BSTR* result); + HRESULT unused1([out, retval] BSTR*); HRESULT scrollOffset([out, retval] SIZE* offset); // FIXME: This shouldn't be needed once IWebDocumentView is implemented. @@ -81,7 +79,7 @@ interface IWebFramePrivate : IUnknown HRESULT pendingFrameUnloadEventCount([out, retval] UINT* result); - HRESULT fetchApplicationIcon([in] IWebIconFetcherDelegate* delegate, [out, retval] IWebIconFetcher** result); + HRESULT unused2(); HRESULT paintDocumentRectToContext([in] RECT rect, [in] OLE_HANDLE deviceContext); @@ -102,4 +100,23 @@ interface IWebFramePrivate : IUnknown HRESULT counterValueForElementById([in] BSTR id, [out, retval] BSTR* result); HRESULT pauseSVGAnimation([in] BSTR elementId, [in] IDOMNode* node, [in] double secondsFromNow, [out, retval] BOOL* animationWasRunning); + + HRESULT visibleContentRect([out, retval] RECT*); + + HRESULT pageNumberForElementById([in] BSTR id, [in] float pageWidthInPixels, [in] float pageHeightInPixels, [out, retval] int* pageNumber); + + HRESULT numberOfPages([in] float pageWidthInPixels, [in] float pageHeightInPixels, [out, retval] int* pageNumber); + + HRESULT layerTreeAsText([out, retval] BSTR* result); + + HRESULT paintScrollViewRectToContextAtPoint([in] RECT rect, [in] POINT pt, [in] OLE_HANDLE deviceContext); + + HRESULT renderTreeAsExternalRepresentation([in] BOOL forPrinting, [out, retval] BSTR* result); + + HRESULT suspendAnimations(); + HRESULT resumeAnimations(); + + HRESULT loadPlainTextString([in] BSTR string, [in] BSTR url); + + HRESULT hasSpellingMarker([in] UINT from, [in] UINT length, [out, retval] BOOL* result); } diff --git a/WebKit/win/Interfaces/IWebPreferences.idl b/WebKit/win/Interfaces/IWebPreferences.idl index 9a52d7c..dd7f282 100644 --- a/WebKit/win/Interfaces/IWebPreferences.idl +++ b/WebKit/win/Interfaces/IWebPreferences.idl @@ -47,6 +47,13 @@ typedef enum WebKitEditableLinkBehavior { WebKitEditableLinkNeverLive } WebKitEditableLinkBehavior; +typedef enum WebKitEditingBehavior { + WebKitEditingMacBehavior = 0, + WebKitEditingWinBehavior, + WebKitEditingUnixBehavior +} WebKitEditingBehavior; + + typedef enum WebKitCookieStorageAcceptPolicy { WebKitCookieStorageAcceptPolicyAlways = 0, WebKitCookieStorageAcceptPolicyNever, @@ -186,4 +193,10 @@ interface IWebPreferences : IUnknown HRESULT setZoomsTextOnly(BOOL zoomsTextOnly); HRESULT zoomsTextOnly(BOOL *zoomsTextOnly); + + HRESULT setAcceleratedCompositingEnabled(BOOL acceleratedCompositingEnabled); + HRESULT acceleratedCompositingEnabled(BOOL *acceleratedCompositingEnabled); + + HRESULT editingBehavior([out, retval] WebKitEditingBehavior* editingBehavior); + HRESULT setEditingBehavior([in] WebKitEditingBehavior behavior); } diff --git a/WebKit/win/Interfaces/IWebPreferencesPrivate.idl b/WebKit/win/Interfaces/IWebPreferencesPrivate.idl index 613a53d..68cbcf3 100644 --- a/WebKit/win/Interfaces/IWebPreferencesPrivate.idl +++ b/WebKit/win/Interfaces/IWebPreferencesPrivate.idl @@ -79,8 +79,8 @@ interface IWebPreferencesPrivate : IUnknown HRESULT isXSSAuditorEnabled([out, retval] BOOL *enabled); HRESULT setXSSAuditorEnabled([in] BOOL enabled); - HRESULT isFrameSetFlatteningEnabled([out, retval] BOOL *enabled); - HRESULT setFrameSetFlatteningEnabled([in] BOOL enabled); + HRESULT isFrameFlatteningEnabled([out, retval] BOOL *enabled); + HRESULT setFrameFlatteningEnabled([in] BOOL enabled); HRESULT experimentalNotificationsEnabled([out, retval] BOOL *enabled); HRESULT setExperimentalNotificationsEnabled([in] BOOL enabled); @@ -100,4 +100,25 @@ interface IWebPreferencesPrivate : IUnknown HRESULT setCustomDragCursorsEnabled([in] BOOL); HRESULT customDragCursorsEnabled([out, retval] BOOL*); + + HRESULT allowFileAccessFromFileURLs([out, retval] BOOL *allowAccess); + HRESULT setAllowFileAccessFromFileURLs([in] BOOL allowAccess); + + HRESULT setShowDebugBorders([in] BOOL); + HRESULT showDebugBorders([out, retval] BOOL*); + + HRESULT setShowRepaintCounter([in] BOOL); + HRESULT showRepaintCounter([out, retval] BOOL*); + + HRESULT javaScriptCanAccessClipboard([out, retval] BOOL *enabled); + HRESULT setJavaScriptCanAccessClipboard([in] BOOL enabled); + + HRESULT isDNSPrefetchingEnabled([out, retval] BOOL *enabled); + HRESULT setDNSPrefetchingEnabled([in] BOOL enabled); + + HRESULT memoryInfoEnabled([out, retval] BOOL *enabled); + HRESULT setMemoryInfoEnabled([in] BOOL enabled); + + HRESULT hyperlinkAuditingEnabled(BOOL *hyperlinkAuditingEnabled); + HRESULT setHyperlinkAuditingEnabled(BOOL hyperlinkAuditingEnabled); } diff --git a/WebKit/win/WebIconFetcher.h b/WebKit/win/Interfaces/IWebResourceLoadDelegatePrivate2.idl index 694aebf..7e98e6a 100644 --- a/WebKit/win/WebIconFetcher.h +++ b/WebKit/win/Interfaces/IWebResourceLoadDelegatePrivate2.idl @@ -1,52 +1,52 @@ -/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WebIconFetcher_h
-#define WebIconFetcher_h
-
-#include "WebKit.h"
-#include <WebCore/IconFetcher.h>
-
-class WebIconFetcher : public IWebIconFetcher {
-public:
- static WebIconFetcher* fetchApplicationIcon(WebCore::Frame*, IWebIconFetcherDelegate*);
-
- // IUnknown
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef();
- virtual ULONG STDMETHODCALLTYPE Release();
-
- // IWebIconFetcher
- virtual HRESULT STDMETHODCALLTYPE cancel();
-
-private:
- WebIconFetcher(PassRefPtr<WebCore::IconFetcher>);
- ~WebIconFetcher();
-
- ULONG m_refCount;
- RefPtr<WebCore::IconFetcher> m_iconFetcher;
-};
-
-#endif // WebIconFetcher_h
+/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef DO_NO_IMPORTS +import "oaidl.idl"; +import "ocidl.idl"; +import "IWebView.idl"; +#endif + +interface IWebView; + +[ + object, + oleautomation, + uuid(3517ADDA-5870-4aab-9A4E-056E65989DF8), + pointer_default(unique) +] +interface IWebResourceLoadDelegatePrivate2 : IUnknown +{ + /*! + @method webView:removeIdentifierForRequest + @param webView The WebView sending the message. + @param identifier An identifier that can be used to track the progress of a resource load across + multiple call backs. + @discussion This message is sent to notify the delegate to stop using the identifier + to track the progress of a resource load. + - (void)webView:(WebView *)sender removeIdentifierForRequest:(id)identifier; + */ + HRESULT removeIdentifierForRequest([in] IWebView* webView, [in] unsigned long identifier); +} diff --git a/WebKit/win/Interfaces/IWebScriptWorld.idl b/WebKit/win/Interfaces/IWebScriptWorld.idl index bd8012d..b66c4ec 100644 --- a/WebKit/win/Interfaces/IWebScriptWorld.idl +++ b/WebKit/win/Interfaces/IWebScriptWorld.idl @@ -37,4 +37,5 @@ import "JavaScriptCoreAPITypes.idl"; interface IWebScriptWorld : IUnknown { HRESULT standardWorld([out, retval] IWebScriptWorld**); [local] HRESULT scriptWorldForGlobalContext([in] JSGlobalContextRef, [out, retval] IWebScriptWorld**); + HRESULT unregisterWorld(); } diff --git a/WebKit/win/Interfaces/IWebIconFetcher.idl b/WebKit/win/Interfaces/IWebSerializedJSValuePrivate.idl index 1486687..847dd76 100644 --- a/WebKit/win/Interfaces/IWebIconFetcher.idl +++ b/WebKit/win/Interfaces/IWebSerializedJSValuePrivate.idl @@ -1,18 +1,18 @@ /* - * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. + * Copyright (C) 2007, 2008, 2009 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. + * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * documentation and/or other materials provided with the distribution. * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. + * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED @@ -31,26 +31,15 @@ import "oaidl.idl"; import "ocidl.idl"; #endif -interface IWebIconFetcher; - -[ - object, - oleautomation, - uuid(9d27e503-1e0e-458e-bc66-ffa9fa64600e), - pointer_default(unique) -] -interface IWebIconFetcherDelegate : IUnknown -{ - HRESULT finishedLoadingIcon([in] IWebIconFetcher* fetcher, [in] IStream* data); -} - [ object, oleautomation, - uuid(54f50460-8ffa-442c-b5Ab-5422e1fcc973), + hidden, + uuid(F695AF5F-35FE-44fb-9EC6-23ABCAC8C515), pointer_default(unique) ] -interface IWebIconFetcher : IUnknown +interface IWebSerializedJSValuePrivate : IUnknown { - HRESULT cancel(); + [local] HRESULT setInternalRepresentation([in] void* internalRepresentation); + [local] HRESULT getInternalRepresentation([out, retval] void** internalRepresentation); } diff --git a/WebKit/win/Interfaces/IWebUIDelegatePrivate.idl b/WebKit/win/Interfaces/IWebUIDelegatePrivate.idl index ce00430..1431db2 100755 --- a/WebKit/win/Interfaces/IWebUIDelegatePrivate.idl +++ b/WebKit/win/Interfaces/IWebUIDelegatePrivate.idl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. + * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -99,3 +99,14 @@ interface IWebUIDelegatePrivate2 : IWebUIDelegatePrivate HRESULT decidePolicyForGeolocationRequest([in] IWebView* sender, [in] IWebFrame* frame, [in] IWebSecurityOrigin* origin, [in] IWebGeolocationPolicyListener* listener); } + +[ + object, + oleautomation, + uuid(e9834891-233b-48a0-984b-8f8a19abdd0f), + pointer_default(unique) +] +interface IWebUIDelegatePrivate3 : IWebUIDelegatePrivate2 +{ + HRESULT didPressMissingPluginButton([in] IDOMElement*); +} diff --git a/WebKit/win/Interfaces/IWebUserContentURLPattern.idl b/WebKit/win/Interfaces/IWebUserContentURLPattern.idl new file mode 100644 index 0000000..0d4b133 --- /dev/null +++ b/WebKit/win/Interfaces/IWebUserContentURLPattern.idl @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef DO_NO_IMPORTS +import "oaidl.idl"; +import "ocidl.idl"; +#endif + +[ + object, + oleautomation, + uuid(DBF18E5A-701B-49ab-B490-BED40053B788), + pointer_default(unique) +] +interface IWebUserContentURLPattern : IUnknown +{ + HRESULT parse([in] BSTR patternString); + HRESULT isValid([out, retval] BOOL* isValid); + HRESULT scheme([out, retval] BSTR*); + HRESULT host([out, retval] BSTR*); + HRESULT matchesSubdomains([out, retval] BOOL* matches); + HRESULT matchesURL([in] BSTR url, [out, retval] BOOL* matches); +} diff --git a/WebKit/win/Interfaces/IWebView.idl b/WebKit/win/Interfaces/IWebView.idl index bec4df5..6c414f8 100644 --- a/WebKit/win/Interfaces/IWebView.idl +++ b/WebKit/win/Interfaces/IWebView.idl @@ -82,6 +82,7 @@ const LPCOLESTR WebElementImageKey = L"WebElementImageKey"; const LPCOLESTR WebElementImageRectKey = L"WebElementImageRectKey"; const LPCOLESTR WebElementImageURLKey = L"WebElementImageURLKey"; const LPCOLESTR WebElementIsSelectedKey = L"WebElementIsSelectedKey"; +const LPCOLESTR WebElementMediaURLKey = L"WebElementMediaURLKey"; const LPCOLESTR WebElementSpellingToolTipKey = L"WebElementSpellingToolTipKey"; const LPCOLESTR WebElementTitleKey = L"WebElementTitleKey"; const LPCOLESTR WebElementLinkURLKey = L"WebElementLinkURLKey"; @@ -1216,3 +1217,6 @@ interface IWebViewEditingActions : IUnknown */ HRESULT stopSpeaking([in] IUnknown* sender); } + + + diff --git a/WebKit/win/Interfaces/IWebViewPrivate.idl b/WebKit/win/Interfaces/IWebViewPrivate.idl index 7ab2304..0377406 100644 --- a/WebKit/win/Interfaces/IWebViewPrivate.idl +++ b/WebKit/win/Interfaces/IWebViewPrivate.idl @@ -207,10 +207,13 @@ interface IWebViewPrivate : IUnknown // - destinationProtocol: The protocol to grant access to. // - destinationHost: The host to grant access to. // - allowDestinationSubdomains: If host is a domain, setting this to YES will whitelist host and all its subdomains, recursively. - HRESULT whiteListAccessFromOrigin([in] BSTR sourceOrigin, [in] BSTR destinationProtocol, [in] BSTR destinationHost, [in] BOOL allowDestinationSubdomains); + HRESULT addOriginAccessWhitelistEntry([in] BSTR sourceOrigin, [in] BSTR destinationProtocol, [in] BSTR destinationHost, [in] BOOL allowDestinationSubdomains); - // Removes all white list entries created with whiteListAccessFromOrigin. - HRESULT resetOriginAccessWhiteLists(); + // Removes a white list entry created with addOriginAccessWhitelistEntry. See above. + HRESULT removeOriginAccessWhitelistEntry([in] BSTR sourceOrigin, [in] BSTR destinationProtocol, [in] BSTR destinationHost, [in] BOOL allowDestinationSubdomains); + + // Removes all white list entries created with addOriginAccessWhitelistEntry. + HRESULT resetOriginAccessWhitelists(); HRESULT setHistoryDelegate([in] IWebHistoryDelegate* historyDelegate); HRESULT historyDelegate([out,retval] IWebHistoryDelegate** historyDelegate); @@ -226,4 +229,14 @@ interface IWebViewPrivate : IUnknown HRESULT geolocationDidFailWithError([in] IWebError* error); HRESULT setDomainRelaxationForbiddenForURLScheme([in] BOOL forbidden, [in] BSTR scheme); + + HRESULT registerURLSchemeAsSecure([in] BSTR scheme); + + HRESULT nextDisplayIsSynchronous(); + + HRESULT paintScrollViewRectToContextAtPoint([in] RECT rect, [in] POINT pt, [in] OLE_HANDLE dc); + + [local] HRESULT reportException([in] JSContextRef context, [in] JSValueRef exception); + + [local] HRESULT elementFromJS([in] JSContextRef context, [in] JSValueRef nodeObject, [out, retval] IDOMElement** element); } diff --git a/WebKit/win/Interfaces/JavaScriptCoreAPITypes.idl b/WebKit/win/Interfaces/JavaScriptCoreAPITypes.idl index f2ef1f1..f2ef1f1 100755..100644 --- a/WebKit/win/Interfaces/JavaScriptCoreAPITypes.idl +++ b/WebKit/win/Interfaces/JavaScriptCoreAPITypes.idl diff --git a/WebKit/win/Interfaces/WebKit.idl b/WebKit/win/Interfaces/WebKit.idl index 3cd748c..3f401be 100644 --- a/WebKit/win/Interfaces/WebKit.idl +++ b/WebKit/win/Interfaces/WebKit.idl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. + * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -20,11 +20,11 @@ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - + cpp_quote("/*") -cpp_quote(" * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.") +cpp_quote(" * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved.") cpp_quote(" *") cpp_quote(" * Redistribution and use in source and binary forms, with or without") cpp_quote(" * modification, are permitted provided that the following conditions") @@ -100,7 +100,6 @@ import "ocidl.idl"; #include "IWebHistoryItemPrivate.idl" #include "IWebHistoryPrivate.idl" #include "IWebIconDatabase.idl" -#include "IWebIconFetcher.idl" #include "IWebInspector.idl" #include "IWebInspectorPrivate.idl" #include "IWebJavaScriptCollector.idl" @@ -118,11 +117,13 @@ import "ocidl.idl"; #include "IWebResource.idl" #include "IWebResourceLoadDelegate.idl" #include "IWebResourceLoadDelegatePrivate.idl" +#include "IWebResourceLoadDelegatePrivate2.idl" #include "IWebScriptWorld.idl" #include "IWebScrollBarDelegatePrivate.idl" #include "IWebScrollBarPrivate.idl" #include "IWebSecurityOrigin.idl" #include "IWebSerializedJSValue.idl" +#include "IWebSerializedJSValuePrivate.idl" #include "IWebTextRenderer.idl" #include "IWebUIDelegate.idl" #include "IWebUIDelegate2.idl" @@ -134,6 +135,7 @@ import "ocidl.idl"; #include "IWebURLResponsePrivate.idl" #include "IWebUndoManager.idl" #include "IWebUndoTarget.idl" +#include "IWebUserContentURLPattern.idl" #include "IWebView.idl" #include "IWebViewPrivate.idl" #include "IWebWorkersPrivate.idl" @@ -283,7 +285,7 @@ library WebKit coclass WebScriptWorld { [default] interface IWebScriptWorld; } - + [uuid(13C45703-A3B3-8797-276B-75632F6165C3)] coclass WebSerializedJSValue { [default] interface IWebSerializedJSValue; @@ -293,4 +295,10 @@ library WebKit coclass WebGeolocationPosition { [default] interface IWebGeolocationPosition; } + + [uuid(2D62AE25-DEAA-4945-A76E-CCE05E899664)] + coclass WebUserContentURLPattern { + [default] interface IWebUserContentURLPattern; + } } + diff --git a/WebKit/win/MarshallingHelpers.h b/WebKit/win/MarshallingHelpers.h index bbde61f..b213fb9 100644 --- a/WebKit/win/MarshallingHelpers.h +++ b/WebKit/win/MarshallingHelpers.h @@ -26,12 +26,12 @@ #ifndef MarshallingHelpers_H #define MarshallingHelpers_H +#include <wtf/Forward.h> #include <CoreFoundation/CoreFoundation.h> namespace WebCore { class IntRect; class KURL; - class String; } class MarshallingHelpers @@ -39,8 +39,8 @@ class MarshallingHelpers public: static WebCore::KURL BSTRToKURL(BSTR); static BSTR KURLToBSTR(const WebCore::KURL&); - static CFURLRef PathStringToFileCFURLRef(const WebCore::String&); - static WebCore::String FileCFURLRefToPathString(CFURLRef fileURL); + static CFURLRef PathStringToFileCFURLRef(const WTF::String&); + static WTF::String FileCFURLRefToPathString(CFURLRef fileURL); static CFURLRef BSTRToCFURLRef(BSTR); static CFStringRef BSTRToCFStringRef(BSTR); static CFStringRef LPCOLESTRToCFStringRef(LPCOLESTR); diff --git a/WebKit/win/WebBackForwardList.cpp b/WebKit/win/WebBackForwardList.cpp index e8c2930..2faaf7e 100644 --- a/WebKit/win/WebBackForwardList.cpp +++ b/WebKit/win/WebBackForwardList.cpp @@ -32,7 +32,7 @@ #include "WebKit.h" #include "WebPreferences.h" -#include <WebCore/BackForwardList.h> +#include <WebCore/BackForwardListImpl.h> #include <WebCore/HistoryItem.h> using std::min; @@ -40,13 +40,15 @@ using namespace WebCore; // WebBackForwardList ---------------------------------------------------------------- -static HashMap<BackForwardList*, WebBackForwardList*>& backForwardListWrappers() +// FIXME: Instead of this we could just create a class derived from BackForwardListImpl +// with a pointer to a WebBackForwardList in it. +static HashMap<BackForwardListImpl*, WebBackForwardList*>& backForwardListWrappers() { - static HashMap<BackForwardList*, WebBackForwardList*> staticBackForwardListWrappers; + static HashMap<BackForwardListImpl*, WebBackForwardList*> staticBackForwardListWrappers; return staticBackForwardListWrappers; } -WebBackForwardList::WebBackForwardList(PassRefPtr<BackForwardList> backForwardList) +WebBackForwardList::WebBackForwardList(PassRefPtr<BackForwardListImpl> backForwardList) : m_refCount(0) , m_backForwardList(backForwardList) { @@ -68,7 +70,7 @@ WebBackForwardList::~WebBackForwardList() gClassNameCount.remove("WebBackForwardList"); } -WebBackForwardList* WebBackForwardList::createInstance(PassRefPtr<BackForwardList> backForwardList) +WebBackForwardList* WebBackForwardList::createInstance(PassRefPtr<BackForwardListImpl> backForwardList) { WebBackForwardList* instance; diff --git a/WebKit/win/WebBackForwardList.h b/WebKit/win/WebBackForwardList.h index 9375193..aebfa15 100644 --- a/WebKit/win/WebBackForwardList.h +++ b/WebKit/win/WebBackForwardList.h @@ -34,15 +34,15 @@ #include <WTF/RefPtr.h> namespace WebCore { - class BackForwardList; + class BackForwardListImpl; } class WebBackForwardList : public IWebBackForwardList, IWebBackForwardListPrivate { public: - static WebBackForwardList* createInstance(PassRefPtr<WebCore::BackForwardList>); + static WebBackForwardList* createInstance(PassRefPtr<WebCore::BackForwardListImpl>); protected: - WebBackForwardList(PassRefPtr<WebCore::BackForwardList>); + WebBackForwardList(PassRefPtr<WebCore::BackForwardListImpl>); ~WebBackForwardList(); public: @@ -109,7 +109,7 @@ public: protected: ULONG m_refCount; - RefPtr<WebCore::BackForwardList> m_backForwardList; + RefPtr<WebCore::BackForwardListImpl> m_backForwardList; }; #endif diff --git a/WebKit/win/WebCache.cpp b/WebKit/win/WebCache.cpp index d82fc43..dff53fe 100644 --- a/WebKit/win/WebCache.cpp +++ b/WebKit/win/WebCache.cpp @@ -31,7 +31,7 @@ #pragma warning(push, 0) #include <WebCore/ApplicationCacheStorage.h> -#include <WebCore/Cache.h> +#include <WebCore/MemoryCache.h> #include <WebCore/CrossOriginPreflightResultCache.h> #pragma warning(pop) @@ -100,7 +100,7 @@ HRESULT STDMETHODCALLTYPE WebCache::statistics( if (!s) return S_OK; - WebCore::Cache::Statistics stat = WebCore::cache()->getStatistics(); + WebCore::MemoryCache::Statistics stat = WebCore::cache()->getStatistics(); static CFStringRef imagesKey = CFSTR("images"); static CFStringRef stylesheetsKey = CFSTR("style sheets"); diff --git a/WebKit/win/WebCookieManagerCFNet.cpp b/WebKit/win/WebCookieManagerCFNet.cpp index 415a679..c2ef493 100644 --- a/WebKit/win/WebCookieManagerCFNet.cpp +++ b/WebKit/win/WebCookieManagerCFNet.cpp @@ -28,7 +28,7 @@ #include "WebCookieManager.h" #include <CFNetwork/CFHTTPCookiesPriv.h> -#include <WebCore/CookieStorageWin.h> +#include <WebCore/CookieStorageCFNet.h> using namespace WebCore; diff --git a/WebKit/win/WebCoreLocalizedStrings.cpp b/WebKit/win/WebCoreLocalizedStrings.cpp deleted file mode 100644 index 5850605..0000000 --- a/WebKit/win/WebCoreLocalizedStrings.cpp +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Copyright (C) 2007 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "config.h" -#include "WebLocalizableStrings.h" -#include <WebCore/IntSize.h> -#include <WebCore/LocalizedStrings.h> -#include <WebCore/PlatformString.h> -#include <wtf/MathExtras.h> -#include <wtf/RetainPtr.h> - -using namespace WebCore; - -String WebCore::searchableIndexIntroduction() { return String(LPCTSTR_UI_STRING("This is a searchable index. Enter search keywords: ", "text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'")); } -String WebCore::submitButtonDefaultLabel() { return String(LPCTSTR_UI_STRING("Submit", "default label for Submit buttons in forms on web pages")); } -String WebCore::inputElementAltText() { return String(LPCTSTR_UI_STRING_KEY("Submit", "Submit (input element)", "alt text for <input> elements with no alt, title, or value")); } -String WebCore::resetButtonDefaultLabel() { return String(LPCTSTR_UI_STRING("Reset", "default label for Reset buttons in forms on web pages")); } -String WebCore::fileButtonChooseFileLabel() { return String(LPCTSTR_UI_STRING("Choose File", "title for file button used in HTML forms")); } -String WebCore::fileButtonNoFileSelectedLabel() { return String(LPCTSTR_UI_STRING("no file selected", "text to display in file button used in HTML forms when no file is selected")); } -String WebCore::contextMenuItemTagOpenLinkInNewWindow() { return String(LPCTSTR_UI_STRING("Open Link in New Window", "Open in New Window context menu item")); } -String WebCore::contextMenuItemTagDownloadLinkToDisk() { return String(LPCTSTR_UI_STRING("Download Linked File", "Download Linked File context menu item")); } -String WebCore::contextMenuItemTagCopyLinkToClipboard() { return String(LPCTSTR_UI_STRING("Copy Link", "Copy Link context menu item")); } -String WebCore::contextMenuItemTagOpenImageInNewWindow() { return String(LPCTSTR_UI_STRING("Open Image in New Window", "Open Image in New Window context menu item")); } -String WebCore::contextMenuItemTagDownloadImageToDisk() { return String(LPCTSTR_UI_STRING("Download Image", "Download Image context menu item")); } -String WebCore::contextMenuItemTagCopyImageToClipboard() { return String(LPCTSTR_UI_STRING("Copy Image", "Copy Image context menu item")); } -String WebCore::contextMenuItemTagOpenFrameInNewWindow() { return String(LPCTSTR_UI_STRING("Open Frame in New Window", "Open Frame in New Window context menu item")); } -String WebCore::contextMenuItemTagCopy() { return String(LPCTSTR_UI_STRING("Copy", "Copy context menu item")); } -String WebCore::contextMenuItemTagGoBack() { return String(LPCTSTR_UI_STRING("Back", "Back context menu item")); } -String WebCore::contextMenuItemTagGoForward() { return String(LPCTSTR_UI_STRING("Forward", "Forward context menu item")); } -String WebCore::contextMenuItemTagStop() { return String(LPCTSTR_UI_STRING("Stop", "Stop context menu item")); } -String WebCore::contextMenuItemTagReload() { return String(LPCTSTR_UI_STRING("Reload", "Reload context menu item")); } -String WebCore::contextMenuItemTagCut() { return String(LPCTSTR_UI_STRING("Cut", "Cut context menu item")); } -String WebCore::contextMenuItemTagPaste() { return String(LPCTSTR_UI_STRING("Paste", "Paste context menu item")); } -String WebCore::contextMenuItemTagNoGuessesFound() { return String(LPCTSTR_UI_STRING("No Guesses Found", "No Guesses Found context menu item")); } -String WebCore::contextMenuItemTagIgnoreSpelling() { return String(LPCTSTR_UI_STRING("Ignore Spelling", "Ignore Spelling context menu item")); } -String WebCore::contextMenuItemTagLearnSpelling() { return String(LPCTSTR_UI_STRING("Learn Spelling", "Learn Spelling context menu item")); } -String WebCore::contextMenuItemTagSearchWeb() { return String(LPCTSTR_UI_STRING("Search with Google", "Search in Google context menu item")); } -String WebCore::contextMenuItemTagLookUpInDictionary() { return String(LPCTSTR_UI_STRING("Look Up in Dictionary", "Look Up in Dictionary context menu item")); } -String WebCore::contextMenuItemTagOpenLink() { return String(LPCTSTR_UI_STRING("Open Link", "Open Link context menu item")); } -String WebCore::contextMenuItemTagIgnoreGrammar() { return String(LPCTSTR_UI_STRING("Ignore Grammar", "Ignore Grammar context menu item")); } -String WebCore::contextMenuItemTagSpellingMenu() { return String(LPCTSTR_UI_STRING("Spelling and Grammar", "Spelling and Grammar context sub-menu item")); } -String WebCore::contextMenuItemTagCheckSpelling() { return String(LPCTSTR_UI_STRING("Check Document Now", "Check spelling context menu item")); } -String WebCore::contextMenuItemTagCheckSpellingWhileTyping() { return String(LPCTSTR_UI_STRING("Check Spelling While Typing", "Check spelling while typing context menu item")); } -String WebCore::contextMenuItemTagCheckGrammarWithSpelling() { return String(LPCTSTR_UI_STRING("Check Grammar With Spelling", "Check grammar with spelling context menu item")); } -String WebCore::contextMenuItemTagFontMenu() { return String(LPCTSTR_UI_STRING("Font", "Font context sub-menu item")); } -String WebCore::contextMenuItemTagBold() { return String(LPCTSTR_UI_STRING("Bold", "Bold context menu item")); } -String WebCore::contextMenuItemTagItalic() { return String(LPCTSTR_UI_STRING("Italic", "Italic context menu item")); } -String WebCore::contextMenuItemTagUnderline() { return String(LPCTSTR_UI_STRING("Underline", "Underline context menu item")); } -String WebCore::contextMenuItemTagOutline() { return String(LPCTSTR_UI_STRING("Outline", "Outline context menu item")); } -String WebCore::contextMenuItemTagWritingDirectionMenu() { return String(LPCTSTR_UI_STRING("Paragraph Direction", "Paragraph direction context sub-menu item")); } -String WebCore::contextMenuItemTagTextDirectionMenu() { return String(LPCTSTR_UI_STRING("Selection Direction", "Selection direction context sub-menu item")); } -String WebCore::contextMenuItemTagDefaultDirection() { return String(LPCTSTR_UI_STRING("Default", "Default writing direction context menu item")); } -String WebCore::contextMenuItemTagLeftToRight() { return String(LPCTSTR_UI_STRING("Left to Right", "Left to Right context menu item")); } -String WebCore::contextMenuItemTagRightToLeft() { return String(LPCTSTR_UI_STRING("Right to Left", "Right to Left context menu item")); } -String WebCore::contextMenuItemTagShowSpellingPanel(bool show) { return String(show ? LPCTSTR_UI_STRING("Show Spelling and Grammar", "menu item title") : LPCTSTR_UI_STRING("Hide Spelling and Grammar", "menu item title")); } -String WebCore::contextMenuItemTagInspectElement() { return String(LPCTSTR_UI_STRING("Inspect Element", "Inspect Element context menu item")); } -String WebCore::searchMenuNoRecentSearchesText() { return String(LPCTSTR_UI_STRING("No recent searches", "Label for only item in menu that appears when clicking on the search field image, when no searches have been performed")); } -String WebCore::searchMenuRecentSearchesText() { return String(LPCTSTR_UI_STRING("Recent Searches", "label for first item in the menu that appears when clicking on the search field image, used as embedded menu title")); } -String WebCore::searchMenuClearRecentSearchesText() { return String(LPCTSTR_UI_STRING("Clear Recent Searches", "menu item in Recent Searches menu that empties menu's contents")); } -String WebCore::AXWebAreaText() { return String(LPCTSTR_UI_STRING("web area", "accessibility role description for web area")); } -String WebCore::AXLinkText() { return String(LPCTSTR_UI_STRING("link", "accessibility role description for link")); } -String WebCore::AXListMarkerText() { return String(LPCTSTR_UI_STRING("list marker", "accessibility role description for list marker")); } -String WebCore::AXImageMapText() { return String(LPCTSTR_UI_STRING("image map", "accessibility role description for image map")); } -String WebCore::AXHeadingText() { return String(LPCTSTR_UI_STRING("heading", "accessibility role description for headings")); } -String WebCore::AXDefinitionListTermText() { return String(LPCTSTR_UI_STRING("term", "term word of a definition")); } -String WebCore::AXDefinitionListDefinitionText() { return String(LPCTSTR_UI_STRING("definition", "definition phrase")); } -String WebCore::AXButtonActionVerb() { return String(LPCTSTR_UI_STRING("press", "Verb stating the action that will occur when a button is pressed, as used by accessibility")); } -String WebCore::AXRadioButtonActionVerb() { return String(LPCTSTR_UI_STRING("select", "Verb stating the action that will occur when a radio button is clicked, as used by accessibility")); } -String WebCore::AXTextFieldActionVerb() { return String(LPCTSTR_UI_STRING("activate", "Verb stating the action that will occur when a text field is selected, as used by accessibility")); } -String WebCore::AXCheckedCheckBoxActionVerb() { return String(LPCTSTR_UI_STRING("uncheck", "Verb stating the action that will occur when a checked checkbox is clicked, as used by accessibility")); } -String WebCore::AXUncheckedCheckBoxActionVerb() { return String(LPCTSTR_UI_STRING("check", "Verb stating the action that will occur when an unchecked checkbox is clicked, as used by accessibility")); } -String WebCore::AXLinkActionVerb() { return String(LPCTSTR_UI_STRING("jump", "Verb stating the action that will occur when a link is clicked, as used by accessibility")); } -String WebCore::AXMenuListActionVerb() { return String(LPCTSTR_UI_STRING("open", "Verb stating the action that will occur when a select element is clicked, as used by accessibility")); } -String WebCore::AXMenuListPopupActionVerb() { return String(LPCTSTR_UI_STRING("press", "Verb stating the action that will occur when a select element's popup list is clicked, as used by accessibility")); } -String WebCore::unknownFileSizeText() { return String(LPCTSTR_UI_STRING("Unknown", "Unknown filesize FTP directory listing item")); } -String WebCore::uploadFileText() { return String(LPCTSTR_UI_STRING("Upload file", "(Windows) Form submit file upload dialog title")); } -String WebCore::allFilesText() { return String(LPCTSTR_UI_STRING("All Files", "(Windows) Form submit file upload all files pop-up")); } - -String WebCore::imageTitle(const String& filename, const IntSize& size) -{ - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%@ %d\xC3\x97%d pixels", "window title for a standalone image (uses multiplication symbol, not x)")); - - RetainPtr<CFStringRef> filenameCF(AdoptCF, filename.createCFString()); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), filenameCF.get(), size.width(), size.height())); - - return result.get(); -} - -String multipleFileUploadText(unsigned numberOfFiles) -{ - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%d files", "Label to describe the number of files selected in a file upload control that allows multiple files")); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), numberOfFiles)); - - return result.get(); -} - -#if ENABLE(VIDEO) -String WebCore::mediaElementLoadingStateText() { return String(LPCTSTR_UI_STRING("Loading...", "Media controller status message when the media is loading")); } -String WebCore::mediaElementLiveBroadcastStateText() { return String(LPCTSTR_UI_STRING("Live Broadcast", "Media controller status message when watching a live broadcast")); } - -String WebCore::localizedMediaControlElementString(const String& name) -{ - if (name == "AudioElement") - return String(LPCTSTR_UI_STRING("audio element controller", "accessibility role description for audio element controller")); - if (name == "VideoElement") - return String(LPCTSTR_UI_STRING("video element controller", "accessibility role description for video element controller")); - if (name == "MuteButton") - return String(LPCTSTR_UI_STRING("mute", "accessibility role description for mute button")); - if (name == "UnMuteButton") - return String(LPCTSTR_UI_STRING("unmute", "accessibility role description for turn mute off button")); - if (name == "PlayButton") - return String(LPCTSTR_UI_STRING("play", "accessibility role description for play button")); - if (name == "PauseButton") - return String(LPCTSTR_UI_STRING("pause", "accessibility role description for pause button")); - if (name == "Slider") - return String(LPCTSTR_UI_STRING("movie time", "accessibility role description for timeline slider")); - if (name == "SliderThumb") - return String(LPCTSTR_UI_STRING("timeline slider thumb", "accessibility role description for timeline thumb")); - if (name == "RewindButton") - return String(LPCTSTR_UI_STRING("back 30 seconds", "accessibility role description for seek back 30 seconds button")); - if (name == "ReturnToRealtimeButton") - return String(LPCTSTR_UI_STRING("return to realtime", "accessibility role description for return to real time button")); - if (name == "CurrentTimeDisplay") - return String(LPCTSTR_UI_STRING("elapsed time", "accessibility role description for elapsed time display")); - if (name == "TimeRemainingDisplay") - return String(LPCTSTR_UI_STRING("remaining time", "accessibility role description for time remaining display")); - if (name == "StatusDisplay") - return String(LPCTSTR_UI_STRING("status", "accessibility role description for movie status")); - if (name == "FullscreenButton") - return String(LPCTSTR_UI_STRING("fullscreen", "accessibility role description for enter fullscreen button")); - if (name == "SeekForwardButton") - return String(LPCTSTR_UI_STRING("fast forward", "accessibility role description for fast forward button")); - if (name == "SeekBackButton") - return String(LPCTSTR_UI_STRING("fast reverse", "accessibility role description for fast reverse button")); - if (name == "ShowClosedCaptionsButton") - return String(LPCTSTR_UI_STRING("show closed captions", "accessibility role description for show closed captions button")); - if (name == "HideClosedCaptionsButton") - return String(LPCTSTR_UI_STRING("hide closed captions", "accessibility role description for hide closed captions button")); - - ASSERT_NOT_REACHED(); - return String(); -} - -String WebCore::localizedMediaControlElementHelpText(const String& name) -{ - if (name == "AudioElement") - return String(LPCTSTR_UI_STRING("audio element playback controls and status display", "accessibility role description for audio element controller")); - if (name == "VideoElement") - return String(LPCTSTR_UI_STRING("video element playback controls and status display", "accessibility role description for video element controller")); - if (name == "MuteButton") - return String(LPCTSTR_UI_STRING("mute audio tracks", "accessibility help text for mute button")); - if (name == "UnMuteButton") - return String(LPCTSTR_UI_STRING("unmute audio tracks", "accessibility help text for un mute button")); - if (name == "PlayButton") - return String(LPCTSTR_UI_STRING("begin playback", "accessibility help text for play button")); - if (name == "PauseButton") - return String(LPCTSTR_UI_STRING("pause playback", "accessibility help text for pause button")); - if (name == "Slider") - return String(LPCTSTR_UI_STRING("movie time scrubber", "accessibility help text for timeline slider")); - if (name == "SliderThumb") - return String(LPCTSTR_UI_STRING("movie time scrubber thumb", "accessibility help text for timeline slider thumb")); - if (name == "RewindButton") - return String(LPCTSTR_UI_STRING("seek movie back 30 seconds", "accessibility help text for jump back 30 seconds button")); - if (name == "ReturnToRealtimeButton") - return String(LPCTSTR_UI_STRING("return streaming movie to real time", "accessibility help text for return streaming movie to real time button")); - if (name == "CurrentTimeDisplay") - return String(LPCTSTR_UI_STRING("current movie time in seconds", "accessibility help text for elapsed time display")); - if (name == "TimeRemainingDisplay") - return String(LPCTSTR_UI_STRING("number of seconds of movie remaining", "accessibility help text for remaining time display")); - if (name == "StatusDisplay") - return String(LPCTSTR_UI_STRING("current movie status", "accessibility help text for movie status display")); - if (name == "SeekBackButton") - return String(LPCTSTR_UI_STRING("seek quickly back", "accessibility help text for fast rewind button")); - if (name == "SeekForwardButton") - return String(LPCTSTR_UI_STRING("seek quickly forward", "accessibility help text for fast forward button")); - if (name == "FullscreenButton") - return String(LPCTSTR_UI_STRING("Play movie in fullscreen mode", "accessibility help text for enter fullscreen button")); - if (name == "ShowClosedCaptionsButton") - return String(LPCTSTR_UI_STRING("start displaying closed captions", "accessibility help text for show closed captions button")); - if (name == "HideClosedCaptionsButton") - return String(LPCTSTR_UI_STRING("stop displaying closed captions", "accessibility help text for hide closed captions button")); - - ASSERT_NOT_REACHED(); - return String(); -} - -String WebCore::localizedMediaTimeDescription(float time) -{ - if (!isfinite(time)) - return String(LPCTSTR_UI_STRING("indefinite time", "accessibility help text for an indefinite media controller time value")); - - int seconds = (int)fabsf(time); - int days = seconds / (60 * 60 * 24); - int hours = seconds / (60 * 60); - int minutes = (seconds / 60) % 60; - seconds %= 60; - - if (days) { - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%1$d days %2$d hours %3$d minutes %4$d seconds", "accessibility help text for media controller time value >= 1 day")); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), days, hours, minutes, seconds)); - return result.get(); - } - - if (hours) { - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%1$d hours %2$d minutes %3$d seconds", "accessibility help text for media controller time value >= 60 minutes")); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), hours, minutes, seconds)); - return result.get(); - } - - if (minutes) { - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%1$d minutes %2$d seconds", "accessibility help text for media controller time value >= 60 seconds")); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), minutes, seconds)); - return result.get(); - } - - static RetainPtr<CFStringRef> format(AdoptCF, UI_STRING("%1$d seconds", "accessibility help text for media controller time value < 60 seconds")); - RetainPtr<CFStringRef> result(AdoptCF, CFStringCreateWithFormat(0, 0, format.get(), seconds)); - return result.get(); -} - -#endif // ENABLE(VIDEO) - -String WebCore::validationMessageValueMissingText() { return String(LPCTSTR_UI_STRING("value missing", "Validation message for required form control elements that have no value")); } -String WebCore::validationMessageTypeMismatchText() { return String(LPCTSTR_UI_STRING("type mismatch", "Validation message for input form controls with a value not matching type")); } -String WebCore::validationMessagePatternMismatchText() { return String(LPCTSTR_UI_STRING("pattern mismatch", "Validation message for input form controls requiring a constrained value according to pattern")); } -String WebCore::validationMessageTooLongText() { return String(LPCTSTR_UI_STRING("too long", "Validation message for form control elements with a value longer than maximum allowed length")); } -String WebCore::validationMessageRangeUnderflowText() { return String(LPCTSTR_UI_STRING("range underflow", "Validation message for input form controls with value lower than allowed minimum")); } -String WebCore::validationMessageRangeOverflowText() { return String(LPCTSTR_UI_STRING("range overflow", "Validation message for input form controls with value higher than allowed maximum")); } -String WebCore::validationMessageStepMismatchText() { return String(LPCTSTR_UI_STRING("step mismatch", "Validation message for input form controls with value not respecting the step attribute")); } diff --git a/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp b/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp index 6bd8f44..371ff3a 100644 --- a/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp +++ b/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp @@ -1,238 +1,238 @@ -/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "EmbeddedWidget.h"
-
-#include <WebCore/Document.h>
-#include <WebCore/Element.h>
-#include <WebCore/FrameView.h>
-#include <WebCore/RenderObject.h>
-
-#include "MemoryStream.h"
-#include "WebError.h"
-#include "WebURLResponse.h"
-
-using namespace WebCore;
-
-PassRefPtr<EmbeddedWidget> EmbeddedWidget::create(IWebEmbeddedView* view, Element* element, HWND parentWindow, const IntSize& size)
-{
- RefPtr<EmbeddedWidget> widget = adoptRef(new EmbeddedWidget(view, element));
-
- widget->createWindow(parentWindow, size);
- return widget.release();
-}
-
-EmbeddedWidget::~EmbeddedWidget()
-{
- if (m_window)
- DestroyWindow(m_window);
-}
-
-bool EmbeddedWidget::createWindow(HWND parentWindow, const IntSize& size)
-{
- ASSERT(!m_window);
-
- HWND window;
-
- SIZE pluginSize(size);
-
- HRESULT hr = m_view->createViewWindow((OLE_HANDLE)parentWindow, &pluginSize, (OLE_HANDLE*)&window);
-
- if (FAILED(hr) || !window)
- return false;
-
- m_window = window;
- return true;
-}
-
-void EmbeddedWidget::invalidateRect(const IntRect& rect)
-{
- if (!m_window)
- return;
-
- RECT r = rect;
- ::InvalidateRect(m_window, &r, false);
-}
-
-void EmbeddedWidget::setFrameRect(const IntRect& rect)
-{
- if (m_element->document()->printing())
- return;
-
- if (rect != frameRect())
- Widget::setFrameRect(rect);
-
- frameRectsChanged();
-}
-
-void EmbeddedWidget::frameRectsChanged()
-{
- if (!parent())
- return;
-
- ASSERT(parent()->isFrameView());
- FrameView* frameView = static_cast<FrameView*>(parent());
-
- IntRect oldWindowRect = m_windowRect;
- IntRect oldClipRect = m_clipRect;
-
- m_windowRect = IntRect(frameView->contentsToWindow(frameRect().location()), frameRect().size());
- m_clipRect = windowClipRect();
- m_clipRect.move(-m_windowRect.x(), -m_windowRect.y());
-
- if (!m_window)
- return;
-
- if (m_windowRect == oldWindowRect && m_clipRect == oldClipRect)
- return;
-
- HRGN rgn;
-
- // To prevent flashes while scrolling, we disable drawing during the window
- // update process by clipping the window to the zero rect.
-
- bool clipToZeroRect = true;
-
- if (clipToZeroRect) {
- rgn = ::CreateRectRgn(0, 0, 0, 0);
- ::SetWindowRgn(m_window, rgn, FALSE);
- } else {
- rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom());
- ::SetWindowRgn(m_window, rgn, TRUE);
- }
-
- if (m_windowRect != oldWindowRect)
- ::MoveWindow(m_window, m_windowRect.x(), m_windowRect.y(), m_windowRect.width(), m_windowRect.height(), TRUE);
-
- if (clipToZeroRect) {
- rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom());
- ::SetWindowRgn(m_window, rgn, TRUE);
- }
-}
-
-void EmbeddedWidget::setFocus()
-{
- if (m_window)
- SetFocus(m_window);
-
- Widget::setFocus();
-}
-
-void EmbeddedWidget::show()
-{
- m_isVisible = true;
-
- if (m_attachedToWindow && m_window)
- ShowWindow(m_window, SW_SHOWNA);
-
- Widget::show();
-}
-
-void EmbeddedWidget::hide()
-{
- m_isVisible = false;
-
- if (m_attachedToWindow && m_window)
- ShowWindow(m_window, SW_HIDE);
-
- Widget::hide();
-}
-
-IntRect EmbeddedWidget::windowClipRect() const
-{
- // Start by clipping to our bounds.
- IntRect clipRect(m_windowRect);
-
- // Take our element and get the clip rect from the enclosing layer and frame view.
- RenderLayer* layer = m_element->renderer()->enclosingLayer();
- FrameView* parentView = m_element->document()->view();
- clipRect.intersect(parentView->windowClipRectForLayer(layer, true));
-
- return clipRect;
-}
-
-void EmbeddedWidget::setParent(ScrollView* parent)
-{
- Widget::setParent(parent);
-
- if (!m_window)
- return;
-
- if (parent)
- return;
-
- // If the embedded window or one of its children have the focus, we need to
- // clear it to prevent the web view window from being focused because that can
- // trigger a layout while the plugin element is being detached.
- HWND focusedWindow = ::GetFocus();
- if (m_window == focusedWindow || ::IsChild(m_window, focusedWindow))
- ::SetFocus(0);
-}
-
-void EmbeddedWidget::attachToWindow()
-{
- if (m_attachedToWindow)
- return;
-
- m_attachedToWindow = true;
- if (m_isVisible && m_window)
- ShowWindow(m_window, SW_SHOWNA);
-}
-
-void EmbeddedWidget::detachFromWindow()
-{
- if (!m_attachedToWindow)
- return;
-
- if (m_isVisible && m_window)
- ShowWindow(m_window, SW_HIDE);
- m_attachedToWindow = false;
-}
-
-void EmbeddedWidget::didReceiveResponse(const ResourceResponse& response)
-{
- ASSERT(m_view);
-
- COMPtr<IWebURLResponse> urlResponse(AdoptCOM, WebURLResponse::createInstance(response));
- m_view->didReceiveResponse(urlResponse.get());
-}
-
-void EmbeddedWidget::didReceiveData(const char* data, int length)
-{
- COMPtr<MemoryStream> stream = MemoryStream::createInstance(SharedBuffer::create(data, length));
- m_view->didReceiveData(stream.get());
-}
-
-void EmbeddedWidget::didFinishLoading()
-{
- m_view->didFinishLoading();
-}
-
-void EmbeddedWidget::didFail(const ResourceError& error)
-{
- COMPtr<IWebError> webError(AdoptCOM, WebError::createInstance(error));
- m_view->didFail(webError.get());
-}
+/* + * Copyright (C) 2008 Apple Inc. All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "config.h" +#include "EmbeddedWidget.h" + +#include <WebCore/Document.h> +#include <WebCore/Element.h> +#include <WebCore/FrameView.h> +#include <WebCore/RenderObject.h> + +#include "MemoryStream.h" +#include "WebError.h" +#include "WebURLResponse.h" + +using namespace WebCore; + +PassRefPtr<EmbeddedWidget> EmbeddedWidget::create(IWebEmbeddedView* view, Element* element, HWND parentWindow, const IntSize& size) +{ + RefPtr<EmbeddedWidget> widget = adoptRef(new EmbeddedWidget(view, element)); + + widget->createWindow(parentWindow, size); + return widget.release(); +} + +EmbeddedWidget::~EmbeddedWidget() +{ + if (m_window) + DestroyWindow(m_window); +} + +bool EmbeddedWidget::createWindow(HWND parentWindow, const IntSize& size) +{ + ASSERT(!m_window); + + HWND window; + + SIZE pluginSize(size); + + HRESULT hr = m_view->createViewWindow((OLE_HANDLE)parentWindow, &pluginSize, (OLE_HANDLE*)&window); + + if (FAILED(hr) || !window) + return false; + + m_window = window; + return true; +} + +void EmbeddedWidget::invalidateRect(const IntRect& rect) +{ + if (!m_window) + return; + + RECT r = rect; + ::InvalidateRect(m_window, &r, false); +} + +void EmbeddedWidget::setFrameRect(const IntRect& rect) +{ + if (m_element->document()->printing()) + return; + + if (rect != frameRect()) + Widget::setFrameRect(rect); + + frameRectsChanged(); +} + +void EmbeddedWidget::frameRectsChanged() +{ + if (!parent()) + return; + + ASSERT(parent()->isFrameView()); + FrameView* frameView = static_cast<FrameView*>(parent()); + + IntRect oldWindowRect = m_windowRect; + IntRect oldClipRect = m_clipRect; + + m_windowRect = IntRect(frameView->contentsToWindow(frameRect().location()), frameRect().size()); + m_clipRect = windowClipRect(); + m_clipRect.move(-m_windowRect.x(), -m_windowRect.y()); + + if (!m_window) + return; + + if (m_windowRect == oldWindowRect && m_clipRect == oldClipRect) + return; + + HRGN rgn; + + // To prevent flashes while scrolling, we disable drawing during the window + // update process by clipping the window to the zero rect. + + bool clipToZeroRect = true; + + if (clipToZeroRect) { + rgn = ::CreateRectRgn(0, 0, 0, 0); + ::SetWindowRgn(m_window, rgn, FALSE); + } else { + rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom()); + ::SetWindowRgn(m_window, rgn, TRUE); + } + + if (m_windowRect != oldWindowRect) + ::MoveWindow(m_window, m_windowRect.x(), m_windowRect.y(), m_windowRect.width(), m_windowRect.height(), TRUE); + + if (clipToZeroRect) { + rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom()); + ::SetWindowRgn(m_window, rgn, TRUE); + } +} + +void EmbeddedWidget::setFocus(bool focused) +{ + if (m_window && focused) + SetFocus(m_window); + + Widget::setFocus(focused); +} + +void EmbeddedWidget::show() +{ + m_isVisible = true; + + if (m_attachedToWindow && m_window) + ShowWindow(m_window, SW_SHOWNA); + + Widget::show(); +} + +void EmbeddedWidget::hide() +{ + m_isVisible = false; + + if (m_attachedToWindow && m_window) + ShowWindow(m_window, SW_HIDE); + + Widget::hide(); +} + +IntRect EmbeddedWidget::windowClipRect() const +{ + // Start by clipping to our bounds. + IntRect clipRect(m_windowRect); + + // Take our element and get the clip rect from the enclosing layer and frame view. + RenderLayer* layer = m_element->renderer()->enclosingLayer(); + FrameView* parentView = m_element->document()->view(); + clipRect.intersect(parentView->windowClipRectForLayer(layer, true)); + + return clipRect; +} + +void EmbeddedWidget::setParent(ScrollView* parent) +{ + Widget::setParent(parent); + + if (!m_window) + return; + + if (parent) + return; + + // If the embedded window or one of its children have the focus, we need to + // clear it to prevent the web view window from being focused because that can + // trigger a layout while the plugin element is being detached. + HWND focusedWindow = ::GetFocus(); + if (m_window == focusedWindow || ::IsChild(m_window, focusedWindow)) + ::SetFocus(0); +} + +void EmbeddedWidget::attachToWindow() +{ + if (m_attachedToWindow) + return; + + m_attachedToWindow = true; + if (m_isVisible && m_window) + ShowWindow(m_window, SW_SHOWNA); +} + +void EmbeddedWidget::detachFromWindow() +{ + if (!m_attachedToWindow) + return; + + if (m_isVisible && m_window) + ShowWindow(m_window, SW_HIDE); + m_attachedToWindow = false; +} + +void EmbeddedWidget::didReceiveResponse(const ResourceResponse& response) +{ + ASSERT(m_view); + + COMPtr<IWebURLResponse> urlResponse(AdoptCOM, WebURLResponse::createInstance(response)); + m_view->didReceiveResponse(urlResponse.get()); +} + +void EmbeddedWidget::didReceiveData(const char* data, int length) +{ + COMPtr<MemoryStream> stream = MemoryStream::createInstance(SharedBuffer::create(data, length)); + m_view->didReceiveData(stream.get()); +} + +void EmbeddedWidget::didFinishLoading() +{ + m_view->didFinishLoading(); +} + +void EmbeddedWidget::didFail(const ResourceError& error) +{ + COMPtr<IWebError> webError(AdoptCOM, WebError::createInstance(error)); + m_view->didFail(webError.get()); +} diff --git a/WebKit/win/WebCoreSupport/EmbeddedWidget.h b/WebKit/win/WebCoreSupport/EmbeddedWidget.h index 5eee892..ccd3451 100644 --- a/WebKit/win/WebCoreSupport/EmbeddedWidget.h +++ b/WebKit/win/WebCoreSupport/EmbeddedWidget.h @@ -1,85 +1,85 @@ -/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef EmbeddedWidget_h
-#define EmbeddedWidget_h
-
-#include <WebCore/COMPtr.h>
-#include <WebCore/IntRect.h>
-#include <WebCore/PluginView.h>
-
-namespace WebCore {
- class Element;
- class IntSize;
-}
-
-interface IWebEmbeddedView;
-
-class EmbeddedWidget : public WebCore::Widget, public WebCore::PluginManualLoader {
-public:
- static PassRefPtr<EmbeddedWidget> create(IWebEmbeddedView*, WebCore::Element* element, HWND parentWindow, const WebCore::IntSize&);
- ~EmbeddedWidget();
-
-private:
- EmbeddedWidget(IWebEmbeddedView* view, WebCore::Element* element)
- : m_view(view)
- , m_element(element)
- , m_window(0)
- , m_isVisible(false)
- , m_attachedToWindow(false)
- {
- }
-
- bool createWindow(HWND parentWindow, const WebCore::IntSize& size);
-
- virtual void didReceiveResponse(const WebCore::ResourceResponse&);
- virtual void didReceiveData(const char*, int);
- virtual void didFinishLoading();
- virtual void didFail(const WebCore::ResourceError&);
-
- virtual void invalidateRect(const WebCore::IntRect&);
- virtual void setFrameRect(const WebCore::IntRect&);
- virtual void frameRectsChanged();
- virtual void setFocus();
- virtual void show();
- virtual void hide();
- virtual WebCore::IntRect windowClipRect() const;
- virtual void setParent(WebCore::ScrollView*);
-
- virtual void attachToWindow();
- virtual void detachFromWindow();
-
- COMPtr<IWebEmbeddedView> m_view;
- WebCore::Element* m_element;
- HWND m_window;
-
- bool m_isVisible;
- bool m_attachedToWindow;
-
- WebCore::IntRect m_clipRect; // The clip rect to apply to an embedded view.
- WebCore::IntRect m_windowRect; // Our window rect.
-};
-
-#endif // EmbeddedWidget_h
+/* + * Copyright (C) 2008 Apple Inc. All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef EmbeddedWidget_h +#define EmbeddedWidget_h + +#include <WebCore/COMPtr.h> +#include <WebCore/IntRect.h> +#include <WebCore/PluginView.h> + +namespace WebCore { + class Element; + class IntSize; +} + +interface IWebEmbeddedView; + +class EmbeddedWidget : public WebCore::Widget, public WebCore::PluginManualLoader { +public: + static PassRefPtr<EmbeddedWidget> create(IWebEmbeddedView*, WebCore::Element* element, HWND parentWindow, const WebCore::IntSize&); + ~EmbeddedWidget(); + +private: + EmbeddedWidget(IWebEmbeddedView* view, WebCore::Element* element) + : m_view(view) + , m_element(element) + , m_window(0) + , m_isVisible(false) + , m_attachedToWindow(false) + { + } + + bool createWindow(HWND parentWindow, const WebCore::IntSize& size); + + virtual void didReceiveResponse(const WebCore::ResourceResponse&); + virtual void didReceiveData(const char*, int); + virtual void didFinishLoading(); + virtual void didFail(const WebCore::ResourceError&); + + virtual void invalidateRect(const WebCore::IntRect&); + virtual void setFrameRect(const WebCore::IntRect&); + virtual void frameRectsChanged(); + virtual void setFocus(bool); + virtual void show(); + virtual void hide(); + virtual WebCore::IntRect windowClipRect() const; + virtual void setParent(WebCore::ScrollView*); + + virtual void attachToWindow(); + virtual void detachFromWindow(); + + COMPtr<IWebEmbeddedView> m_view; + WebCore::Element* m_element; + HWND m_window; + + bool m_isVisible; + bool m_attachedToWindow; + + WebCore::IntRect m_clipRect; // The clip rect to apply to an embedded view. + WebCore::IntRect m_windowRect; // Our window rect. +}; + +#endif // EmbeddedWidget_h diff --git a/WebKit/win/WebCoreSupport/WebChromeClient.cpp b/WebKit/win/WebCoreSupport/WebChromeClient.cpp index a1bb3a8..d046c21 100644 --- a/WebKit/win/WebCoreSupport/WebChromeClient.cpp +++ b/WebKit/win/WebCoreSupport/WebChromeClient.cpp @@ -1,5 +1,6 @@ /* * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. + * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -28,6 +29,7 @@ #include "COMPropertyBag.h" #include "COMVariantSetter.h" +#include "DOMCoreClasses.h" #include "WebElementPropertyBag.h" #include "WebFrame.h" #include "WebGeolocationPolicyListener.h" @@ -36,7 +38,6 @@ #include "WebDesktopNotificationsDelegate.h" #include "WebSecurityOrigin.h" #include "WebView.h" -#pragma warning(push, 0) #include <WebCore/BString.h> #include <WebCore/Console.h> #include <WebCore/ContextMenu.h> @@ -47,14 +48,22 @@ #include <WebCore/FrameView.h> #include <WebCore/Geolocation.h> #include <WebCore/HTMLNames.h> +#include <WebCore/Icon.h> +#include <WebCore/LocalWindowsContext.h> #include <WebCore/LocalizedStrings.h> +#include <WebCore/NavigationAction.h> #include <WebCore/NotImplemented.h> #include <WebCore/Page.h> +#include <WebCore/SecurityOrigin.h> +#include <WebCore/PopupMenuWin.h> +#include <WebCore/SearchPopupMenuWin.h> #include <WebCore/WindowFeatures.h> -#pragma warning(pop) - #include <tchar.h> +#if USE(ACCELERATED_COMPOSITING) +#include <WebCore/GraphicsLayer.h> +#endif + using namespace WebCore; // When you call GetOpenFileName, if the size of the buffer is too small, @@ -163,6 +172,10 @@ void WebChromeClient::focusedNodeChanged(Node*) { } +void WebChromeClient::focusedFrameChanged(Frame*) +{ +} + static COMPtr<IPropertyBag> createWindowFeaturesPropertyBag(const WindowFeatures& features) { HashMap<String, COMVariant> map; @@ -185,7 +198,7 @@ static COMPtr<IPropertyBag> createWindowFeaturesPropertyBag(const WindowFeatures return COMPtr<IPropertyBag>(AdoptCOM, COMPropertyBag<COMVariant>::adopt(map)); } -Page* WebChromeClient::createWindow(Frame*, const FrameLoadRequest& frameLoadRequest, const WindowFeatures& features) +Page* WebChromeClient::createWindow(Frame*, const FrameLoadRequest& frameLoadRequest, const WindowFeatures& features, const NavigationAction&) { COMPtr<IWebUIDelegate> delegate = uiDelegate(); if (!delegate) @@ -451,10 +464,22 @@ IntRect WebChromeClient::windowResizerRect() const return IntRect(); } -void WebChromeClient::repaint(const IntRect& windowRect, bool contentChanged, bool immediate, bool repaintContentOnly) +void WebChromeClient::invalidateWindow(const IntRect& windowRect, bool immediate) +{ + ASSERT(core(m_webView->topLevelFrame())); + m_webView->repaint(windowRect, false /*contentChanged*/, immediate, false /*repaintContentOnly*/); +} + +void WebChromeClient::invalidateContentsAndWindow(const IntRect& windowRect, bool immediate) +{ + ASSERT(core(m_webView->topLevelFrame())); + m_webView->repaint(windowRect, true /*contentChanged*/, immediate /*immediate*/, false /*repaintContentOnly*/); +} + +void WebChromeClient::invalidateContentsForSlowScroll(const IntRect& windowRect, bool immediate) { ASSERT(core(m_webView->topLevelFrame())); - m_webView->repaint(windowRect, contentChanged, immediate, repaintContentOnly); + m_webView->repaint(windowRect, true /*contentChanged*/, immediate, true /*repaintContentOnly*/); } void WebChromeClient::scroll(const IntSize& delta, const IntRect& scrollViewRect, const IntRect& clipRect) @@ -518,6 +543,32 @@ void WebChromeClient::mouseDidMoveOverElement(const HitTestResult& result, unsig uiDelegate->mouseDidMoveOverElement(m_webView, element.get(), modifierFlags); } +bool WebChromeClient::shouldMissingPluginMessageBeButton() const +{ + COMPtr<IWebUIDelegate> uiDelegate; + if (FAILED(m_webView->uiDelegate(&uiDelegate))) + return false; + + // If the UI delegate implements IWebUIDelegatePrivate3, + // which contains didPressMissingPluginButton, then the message should be a button. + COMPtr<IWebUIDelegatePrivate3> uiDelegatePrivate3(Query, uiDelegate); + return uiDelegatePrivate3; +} + +void WebChromeClient::missingPluginButtonClicked(Element* element) const +{ + COMPtr<IWebUIDelegate> uiDelegate; + if (FAILED(m_webView->uiDelegate(&uiDelegate))) + return; + + COMPtr<IWebUIDelegatePrivate3> uiDelegatePrivate3(Query, uiDelegate); + if (!uiDelegatePrivate3) + return; + + COMPtr<IDOMElement> e(AdoptCOM, DOMElement::createInstance(element)); + uiDelegatePrivate3->didPressMissingPluginButton(e.get()); +} + void WebChromeClient::setToolTip(const String& toolTip, TextDirection) { m_webView->setToolTip(toolTip); @@ -545,7 +596,7 @@ void WebChromeClient::exceededDatabaseQuota(Frame* frame, const String& database HMODULE safariHandle = GetModuleHandle(TEXT("Safari.exe")); if (!safariHandle) return; - GetModuleFileName(safariHandle, path, ARRAYSIZE(path)); + GetModuleFileName(safariHandle, path, WTF_ARRAY_LENGTH(path)); DWORD handle; DWORD versionSize = GetFileVersionInfoSize(path, &handle); if (!versionSize) @@ -574,6 +625,11 @@ void WebChromeClient::reachedMaxAppCacheSize(int64_t spaceNeeded) // FIXME: Free some space. notImplemented(); } + +void WebChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin*) +{ + notImplemented(); +} #endif void WebChromeClient::populateVisitedLinks() @@ -653,10 +709,9 @@ bool WebChromeClient::paintCustomScrollbar(GraphicsContext* context, const Float webState |= WebPressedScrollbarState; RECT webRect = enclosingIntRect(rect); - HDC hDC = context->getWindowsContext(webRect); - HRESULT hr = delegate->paintCustomScrollbar(m_webView, hDC, webRect, webSize, webState, webPressedPart, + LocalWindowsContext windowsContext(context, webRect); + HRESULT hr = delegate->paintCustomScrollbar(m_webView, windowsContext.hdc(), webRect, webSize, webState, webPressedPart, vertical, value, proportion, webParts); - context->releaseWindowsContext(hDC, webRect); return SUCCEEDED(hr); } @@ -670,9 +725,8 @@ bool WebChromeClient::paintCustomScrollCorner(GraphicsContext* context, const Fl return false; RECT webRect = enclosingIntRect(rect); - HDC hDC = context->getWindowsContext(webRect); - HRESULT hr = delegate->paintCustomScrollCorner(m_webView, hDC, webRect); - context->releaseWindowsContext(hDC, webRect); + LocalWindowsContext windowsContext(context, webRect); + HRESULT hr = delegate->paintCustomScrollCorner(m_webView, windowsContext.hdc(), webRect); return SUCCEEDED(hr); } @@ -734,21 +788,33 @@ void WebChromeClient::runOpenPanel(Frame*, PassRefPtr<FileChooser> prpFileChoose // FIXME: Show some sort of error if too many files are selected and the buffer is too small. For now, this will fail silently. } -bool WebChromeClient::setCursor(PlatformCursorHandle cursor) +void WebChromeClient::chooseIconForFiles(const Vector<WTF::String>& filenames, WebCore::FileChooser* chooser) { - if (!cursor) - return false; + chooser->iconLoaded(Icon::createIconForFiles(filenames)); +} + +void WebChromeClient::setCursor(const Cursor& cursor) +{ + HCURSOR platformCursor = cursor.platformCursor()->nativeCursor(); + if (!platformCursor) + return; if (COMPtr<IWebUIDelegate> delegate = uiDelegate()) { COMPtr<IWebUIDelegatePrivate> delegatePrivate(Query, delegate); if (delegatePrivate) { - if (SUCCEEDED(delegatePrivate->webViewSetCursor(m_webView, reinterpret_cast<OLE_HANDLE>(cursor)))) - return true; + if (SUCCEEDED(delegatePrivate->webViewSetCursor(m_webView, reinterpret_cast<OLE_HANDLE>(platformCursor)))) + return; } } - ::SetCursor(cursor); - return true; + m_webView->setLastCursor(platformCursor); + ::SetCursor(platformCursor); + return; +} + +void WebChromeClient::setLastSetCursorToCurrentCursor() +{ + m_webView->setLastCursor(::GetCursor()); } void WebChromeClient::requestGeolocationPermissionForFrame(Frame* frame, Geolocation* geolocation) @@ -777,7 +843,7 @@ void WebChromeClient::requestGeolocationPermissionForFrame(Frame* frame, Geoloca #if USE(ACCELERATED_COMPOSITING) void WebChromeClient::attachRootGraphicsLayer(Frame* frame, GraphicsLayer* graphicsLayer) { - m_webView->setRootChildLayer(graphicsLayer ? graphicsLayer->platformLayer() : 0); + m_webView->setRootChildLayer(graphicsLayer ? static_cast<WKCACFLayer*>(graphicsLayer->platformLayer()) : 0); } void WebChromeClient::scheduleCompositingLayerSync() @@ -813,3 +879,18 @@ void WebChromeClient::exitFullscreenForNode(Node*) #endif +bool WebChromeClient::selectItemWritingDirectionIsNatural() +{ + return true; +} + +PassRefPtr<PopupMenu> WebChromeClient::createPopupMenu(PopupMenuClient* client) const +{ + return adoptRef(new PopupMenuWin(client)); +} + +PassRefPtr<SearchPopupMenu> WebChromeClient::createSearchPopupMenu(PopupMenuClient* client) const +{ + return adoptRef(new SearchPopupMenuWin(client)); +} + diff --git a/WebKit/win/WebCoreSupport/WebChromeClient.h b/WebKit/win/WebCoreSupport/WebChromeClient.h index 5198e7c..55167b6 100644 --- a/WebKit/win/WebCoreSupport/WebChromeClient.h +++ b/WebKit/win/WebCoreSupport/WebChromeClient.h @@ -1,5 +1,6 @@ /* * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. + * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -56,8 +57,9 @@ public: virtual void takeFocus(WebCore::FocusDirection); virtual void focusedNodeChanged(WebCore::Node*); + virtual void focusedFrameChanged(WebCore::Frame*); - virtual WebCore::Page* createWindow(WebCore::Frame*, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&); + virtual WebCore::Page* createWindow(WebCore::Frame*, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&, const WebCore::NavigationAction&); virtual void show(); virtual bool canRunModal(); @@ -77,24 +79,27 @@ public: virtual void setResizable(bool); - virtual void addMessageToConsole(WebCore::MessageSource source, WebCore::MessageType type, WebCore::MessageLevel level, const WebCore::String& message, unsigned line, const WebCore::String& url); + virtual void addMessageToConsole(WebCore::MessageSource source, WebCore::MessageType type, WebCore::MessageLevel level, const WTF::String& message, unsigned line, const WTF::String& url); virtual bool canRunBeforeUnloadConfirmPanel(); - virtual bool runBeforeUnloadConfirmPanel(const WebCore::String& message, WebCore::Frame* frame); + virtual bool runBeforeUnloadConfirmPanel(const WTF::String& message, WebCore::Frame* frame); virtual void closeWindowSoon(); - virtual void runJavaScriptAlert(WebCore::Frame*, const WebCore::String&); - virtual bool runJavaScriptConfirm(WebCore::Frame*, const WebCore::String&); - virtual bool runJavaScriptPrompt(WebCore::Frame*, const WebCore::String& message, const WebCore::String& defaultValue, WebCore::String& result); - virtual void setStatusbarText(const WebCore::String&); + virtual void runJavaScriptAlert(WebCore::Frame*, const WTF::String&); + virtual bool runJavaScriptConfirm(WebCore::Frame*, const WTF::String&); + virtual bool runJavaScriptPrompt(WebCore::Frame*, const WTF::String& message, const WTF::String& defaultValue, WTF::String& result); + virtual void setStatusbarText(const WTF::String&); virtual bool shouldInterruptJavaScript(); virtual bool tabsToLinks() const; virtual WebCore::IntRect windowResizerRect() const; - virtual void repaint(const WebCore::IntRect&, bool contentChanged, bool immediate = false, bool repaintContentOnly = false); + virtual void invalidateWindow(const WebCore::IntRect&, bool); + virtual void invalidateContentsAndWindow(const WebCore::IntRect&, bool); + virtual void invalidateContentsForSlowScroll(const WebCore::IntRect&, bool); virtual void scroll(const WebCore::IntSize& scrollDelta, const WebCore::IntRect& rectToScroll, const WebCore::IntRect& clipRect); + virtual WebCore::IntPoint screenToWindow(const WebCore::IntPoint& p) const; virtual WebCore::IntRect windowToScreen(const WebCore::IntRect& r) const; virtual PlatformPageClient platformPageClient() const; @@ -102,17 +107,24 @@ public: virtual void scrollbarsModeDidChange() const { } virtual void mouseDidMoveOverElement(const WebCore::HitTestResult&, unsigned modifierFlags); + virtual bool shouldMissingPluginMessageBeButton() const; + virtual void missingPluginButtonClicked(WebCore::Element*) const; - virtual void setToolTip(const WebCore::String&, WebCore::TextDirection); + virtual void setToolTip(const WTF::String&, WebCore::TextDirection); virtual void print(WebCore::Frame*); #if ENABLE(DATABASE) - virtual void exceededDatabaseQuota(WebCore::Frame*, const WebCore::String&); + virtual void exceededDatabaseQuota(WebCore::Frame*, const WTF::String&); #endif #if ENABLE(OFFLINE_WEB_APPLICATIONS) virtual void reachedMaxAppCacheSize(int64_t spaceNeeded); + virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*); +#endif + +#if ENABLE(CONTEXT_MENUS) + virtual void showContextMenu() { } #endif virtual void populateVisitedLinks(); @@ -123,8 +135,10 @@ public: virtual bool paintCustomScrollCorner(WebCore::GraphicsContext*, const WebCore::FloatRect&); virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>); + virtual void chooseIconForFiles(const Vector<WTF::String>&, WebCore::FileChooser*); - virtual bool setCursor(WebCore::PlatformCursorHandle cursor); + virtual void setCursor(const WebCore::Cursor&); + virtual void setLastSetCursorToCurrentCursor(); WebView* webView() const { return m_webView; } @@ -146,6 +160,7 @@ public: virtual void scrollRectIntoView(const WebCore::IntRect&, const WebCore::ScrollView*) const {} virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*); + virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*) { } #if ENABLE(VIDEO) virtual bool supportsFullscreenForNode(const WebCore::Node*); @@ -157,6 +172,10 @@ public: virtual WebCore::NotificationPresenter* notificationPresenter() const { return reinterpret_cast<WebCore::NotificationPresenter*>(m_notificationsDelegate.get()); } #endif + virtual bool selectItemWritingDirectionIsNatural(); + virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const; + virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const; + private: COMPtr<IWebUIDelegate> uiDelegate(); diff --git a/WebKit/win/WebCoreSupport/WebContextMenuClient.cpp b/WebKit/win/WebCoreSupport/WebContextMenuClient.cpp index 241c35d..24178f2 100644 --- a/WebKit/win/WebCoreSupport/WebContextMenuClient.cpp +++ b/WebKit/win/WebCoreSupport/WebContextMenuClient.cpp @@ -26,6 +26,7 @@ #include "config.h" #include "WebContextMenuClient.h" +#include "UserGestureIndicator.h" #include "WebElementPropertyBag.h" #include "WebLocalizableStrings.h" #include "WebView.h" @@ -59,7 +60,7 @@ static bool isPreInspectElementTagSafari(IWebUIDelegate* uiDelegate) return false; TCHAR modulePath[MAX_PATH]; - DWORD length = ::GetModuleFileName(0, modulePath, _countof(modulePath)); + DWORD length = ::GetModuleFileName(0, modulePath, WTF_ARRAY_LENGTH(modulePath)); if (!length) return false; @@ -131,7 +132,7 @@ void WebContextMenuClient::downloadURL(const KURL& url) void WebContextMenuClient::searchWithGoogle(const Frame* frame) { - String searchString = frame->selectedText(); + String searchString = frame->editor()->selectedText(); searchString.stripWhiteSpace(); String encoded = encodeWithURLEscapeSequences(searchString); encoded.replace("%20", "+"); @@ -140,9 +141,10 @@ void WebContextMenuClient::searchWithGoogle(const Frame* frame) url.append(encoded); url.append("&ie=UTF-8&oe=UTF-8"); - ResourceRequest request = ResourceRequest(url); - if (Page* page = frame->page()) - page->mainFrame()->loader()->urlSelected(request, String(), 0, false, false, true, SendReferrer); + if (Page* page = frame->page()) { + UserGestureIndicator indicator(DefinitelyProcessingUserGesture); + page->mainFrame()->loader()->urlSelected(KURL(ParsedURLString, url), String(), 0, false, false, SendReferrer); + } } void WebContextMenuClient::lookUpInDictionary(Frame*) diff --git a/WebKit/win/WebCoreSupport/WebContextMenuClient.h b/WebKit/win/WebCoreSupport/WebContextMenuClient.h index 153e30e..6bcb072 100644 --- a/WebKit/win/WebCoreSupport/WebContextMenuClient.h +++ b/WebKit/win/WebCoreSupport/WebContextMenuClient.h @@ -26,9 +26,6 @@ #include <WebCore/ContextMenuClient.h> #include <wtf/Forward.h> -namespace WebCore { - class String; -} class WebView; class WebContextMenuClient : public WebCore::ContextMenuClient { @@ -43,7 +40,7 @@ public: virtual void downloadURL(const WebCore::KURL&); virtual void searchWithGoogle(const WebCore::Frame*); virtual void lookUpInDictionary(WebCore::Frame*); - virtual void speak(const WebCore::String&); + virtual void speak(const WTF::String&); virtual void stopSpeaking(); virtual bool isSpeaking(); diff --git a/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.cpp b/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.cpp index 3f6eb07..8c66d0e 100644 --- a/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.cpp +++ b/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.cpp @@ -172,7 +172,7 @@ void WebDesktopNotificationsDelegate::requestPermission(SecurityOrigin* origin, notificationDelegate()->requestNotificationPermission(org); } -NotificationPresenter::Permission WebDesktopNotificationsDelegate::checkPermission(const KURL& url, Document*) +NotificationPresenter::Permission WebDesktopNotificationsDelegate::checkPermission(const KURL& url) { int out = 0; BString org(SecurityOrigin::create(url)->toString()); diff --git a/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.h b/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.h index d30b1e7..344c95b 100644 --- a/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.h +++ b/WebKit/win/WebCoreSupport/WebDesktopNotificationsDelegate.h @@ -50,7 +50,7 @@ public: virtual void cancel(WebCore::Notification* object); virtual void notificationObjectDestroyed(WebCore::Notification* object); virtual void requestPermission(WebCore::SecurityOrigin* origin, PassRefPtr<WebCore::VoidCallback> callback); - virtual WebCore::NotificationPresenter::Permission checkPermission(const KURL& url, Document* document); + virtual WebCore::NotificationPresenter::Permission checkPermission(const KURL& url); private: bool hasNotificationDelegate(); diff --git a/WebKit/win/WebCoreSupport/WebDragClient.cpp b/WebKit/win/WebCoreSupport/WebDragClient.cpp index 773e392..f4d9842 100644 --- a/WebKit/win/WebCoreSupport/WebDragClient.cpp +++ b/WebKit/win/WebCoreSupport/WebDragClient.cpp @@ -295,7 +295,7 @@ DragImageRef WebDragClient::createDragImageForLink(KURL& url, const String& inLa static const Color backgroundColor(140, 140, 140); static const IntSize radii(DRAG_LABEL_RADIUS, DRAG_LABEL_RADIUS); IntRect rect(0, 0, imageSize.width(), imageSize.height()); - context.fillRoundedRect(rect, radii, radii, radii, radii, backgroundColor, DeviceColorSpace); + context.fillRoundedRect(rect, radii, radii, radii, radii, backgroundColor, ColorSpaceDeviceRGB); // Draw the text static const Color topColor(0, 0, 0, 255); //original alpha = 0.75 diff --git a/WebKit/win/WebCoreSupport/WebDragClient.h b/WebKit/win/WebCoreSupport/WebDragClient.h index f7ca139..da2d208 100644 --- a/WebKit/win/WebCoreSupport/WebDragClient.h +++ b/WebKit/win/WebCoreSupport/WebDragClient.h @@ -39,7 +39,7 @@ public: virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint&); virtual void willPerformDragSourceAction(WebCore::DragSourceAction, const WebCore::IntPoint&, WebCore::Clipboard*); virtual void startDrag(WebCore::DragImageRef, const WebCore::IntPoint&, const WebCore::IntPoint&, WebCore::Clipboard*, WebCore::Frame*, bool); - virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WebCore::String&, WebCore::Frame*); + virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String&, WebCore::Frame*); private: WebView* m_webView; }; diff --git a/WebKit/win/WebCoreSupport/WebEditorClient.cpp b/WebKit/win/WebCoreSupport/WebEditorClient.cpp index c9118e5..f03ffd6 100644 --- a/WebKit/win/WebCoreSupport/WebEditorClient.cpp +++ b/WebKit/win/WebCoreSupport/WebEditorClient.cpp @@ -41,9 +41,10 @@ #include <WebCore/HTMLInputElement.h> #include <WebCore/HTMLNames.h> #include <WebCore/KeyboardEvent.h> -#include <WebCore/PlatformKeyboardEvent.h> #include <WebCore/NotImplemented.h> +#include <WebCore/PlatformKeyboardEvent.h> #include <WebCore/Range.h> +#include <WebCore/UserTypingGestureIndicator.h> #pragma warning(pop) using namespace WebCore; @@ -347,6 +348,9 @@ void WebEditorClient::textFieldDidEndEditing(Element* e) void WebEditorClient::textDidChangeInTextField(Element* e) { + if (!UserTypingGestureIndicator::processingUserTypingGesture() || UserTypingGestureIndicator::focusedElementAtGestureStart() != e) + return; + IWebFormDelegate* formDelegate; if (SUCCEEDED(m_webView->formDelegate(&formDelegate)) && formDelegate) { IDOMElement* domElement = DOMElement::createInstance(e); @@ -776,6 +780,10 @@ void WebEditorClient::getGuessesForWord(const String& word, Vector<String>& gues } } +void WebEditorClient::willSetInputMethodState() +{ +} + void WebEditorClient::setInputMethodState(bool enabled) { m_webView->setInputMethodState(enabled); diff --git a/WebKit/win/WebCoreSupport/WebEditorClient.h b/WebKit/win/WebCoreSupport/WebEditorClient.h index a29a264..8be6de9 100644 --- a/WebKit/win/WebCoreSupport/WebEditorClient.h +++ b/WebKit/win/WebCoreSupport/WebEditorClient.h @@ -53,7 +53,7 @@ public: virtual bool shouldBeginEditing(WebCore::Range*); virtual bool shouldEndEditing(WebCore::Range*); - virtual bool shouldInsertText(const WebCore::String&, WebCore::Range*, WebCore::EditorInsertAction); + virtual bool shouldInsertText(const WTF::String&, WebCore::Range*, WebCore::EditorInsertAction); virtual void didBeginEditing(); virtual void didEndEditing(); @@ -98,17 +98,18 @@ public: void handleKeyboardEvent(WebCore::KeyboardEvent*); void handleInputMethodKeydown(WebCore::KeyboardEvent*); - virtual void ignoreWordInSpellDocument(const WebCore::String&); - virtual void learnWord(const WebCore::String&); + virtual void ignoreWordInSpellDocument(const WTF::String&); + virtual void learnWord(const WTF::String&); virtual void checkSpellingOfString(const UChar*, int length, int* misspellingLocation, int* misspellingLength); - virtual WebCore::String getAutoCorrectSuggestionForMisspelledWord(const WebCore::String&); + virtual WTF::String getAutoCorrectSuggestionForMisspelledWord(const WTF::String&); virtual void checkGrammarOfString(const UChar*, int length, Vector<WebCore::GrammarDetail>&, int* badGrammarLocation, int* badGrammarLength); - virtual void updateSpellingUIWithGrammarString(const WebCore::String&, const WebCore::GrammarDetail& detail); - virtual void updateSpellingUIWithMisspelledWord(const WebCore::String&); + virtual void updateSpellingUIWithGrammarString(const WTF::String&, const WebCore::GrammarDetail& detail); + virtual void updateSpellingUIWithMisspelledWord(const WTF::String&); virtual void showSpellingUI(bool show); virtual bool spellingUIIsShowing(); - virtual void getGuessesForWord(const WebCore::String&, Vector<WebCore::String>& guesses); + virtual void getGuessesForWord(const WTF::String&, Vector<WTF::String>& guesses); + virtual void willSetInputMethodState(); virtual void setInputMethodState(bool); private: diff --git a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp index b927c72..24f97ca 100644 --- a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp +++ b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp @@ -59,6 +59,7 @@ #include <WebCore/HTMLFrameElement.h> #include <WebCore/HTMLFrameOwnerElement.h> #include <WebCore/HTMLNames.h> +#include <WebCore/HTMLParserIdioms.h> #include <WebCore/HTMLPlugInElement.h> #include <WebCore/HistoryItem.h> #include <WebCore/Page.h> @@ -66,7 +67,6 @@ #include <WebCore/PluginView.h> #include <WebCore/RenderPart.h> #include <WebCore/ResourceHandle.h> -#include <WebCore/ScriptString.h> #pragma warning(pop) using namespace WebCore; @@ -243,10 +243,6 @@ void WebFrameLoaderClient::dispatchDidFailLoading(DocumentLoader* loader, unsign resourceLoadDelegate->didFailLoadingWithError(webView, identifier, webError.get(), getWebDataSource(loader)); } -void WebFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest(unsigned long, const ScriptString&) -{ -} - bool WebFrameLoaderClient::shouldCacheResponse(DocumentLoader* loader, unsigned long identifier, const ResourceResponse& response, const unsigned char* data, const unsigned long long length) { WebView* webView = m_webFrame->webView(); @@ -376,6 +372,20 @@ void WebFrameLoaderClient::dispatchDidReceiveTitle(const String& title) frameLoadDelegate->didReceiveTitle(webView, BString(title), m_webFrame); } +void WebFrameLoaderClient::dispatchDidChangeIcons() +{ + WebView* webView = m_webFrame->webView(); + COMPtr<IWebFrameLoadDelegatePrivate> frameLoadDelegatePriv; + if (FAILED(webView->frameLoadDelegatePrivate(&frameLoadDelegatePriv)) || !frameLoadDelegatePriv) + return; + + COMPtr<IWebFrameLoadDelegatePrivate2> frameLoadDelegatePriv2(Query, frameLoadDelegatePriv); + if (!frameLoadDelegatePriv2) + return; + + frameLoadDelegatePriv2->didChangeIcons(webView, m_webFrame); +} + void WebFrameLoaderClient::dispatchDidCommitLoad() { WebView* webView = m_webFrame->webView(); @@ -416,7 +426,7 @@ void WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() frameLoadDelegatePrivate->didFirstVisuallyNonEmptyLayoutInFrame(webView, m_webFrame); } -Frame* WebFrameLoaderClient::dispatchCreatePage() +Frame* WebFrameLoaderClient::dispatchCreatePage(const NavigationAction&) { WebView* webView = m_webFrame->webView(); @@ -481,17 +491,20 @@ void WebFrameLoaderClient::postProgressFinishedNotification() void WebFrameLoaderClient::committedLoad(DocumentLoader* loader, const char* data, int length) { - // FIXME: This should probably go through the data source. - const String& textEncoding = loader->response().textEncodingName(); - if (!m_manualLoader) - receivedData(data, length, textEncoding); + loader->commitData(data, length); + + // If the document is a stand-alone media document, now is the right time to cancel the WebKit load. + // FIXME: This code should be shared across all ports. <http://webkit.org/b/48762>. + Frame* coreFrame = core(m_webFrame); + if (coreFrame->document()->isMediaDocument()) + loader->cancelMainResourceLoad(pluginWillHandleLoadError(loader->response())); if (!m_manualLoader) return; if (!m_hasSentResponseToPlugin) { - m_manualLoader->didReceiveResponse(core(m_webFrame)->loader()->documentLoader()->response()); + m_manualLoader->didReceiveResponse(loader->response()); // didReceiveResponse sets up a new stream to the plug-in. on a full-page plug-in, a failure in // setting up this stream can cause the main document load to be cancelled, setting m_manualLoader // to null @@ -502,31 +515,15 @@ void WebFrameLoaderClient::committedLoad(DocumentLoader* loader, const char* dat m_manualLoader->didReceiveData(data, length); } -void WebFrameLoaderClient::receivedData(const char* data, int length, const String& textEncoding) -{ - Frame* coreFrame = core(m_webFrame); - if (!coreFrame) - return; - - // Set the encoding. This only needs to be done once, but it's harmless to do it again later. - String encoding = coreFrame->loader()->documentLoader()->overrideEncoding(); - bool userChosen = !encoding.isNull(); - if (encoding.isNull()) - encoding = textEncoding; - coreFrame->loader()->setEncoding(encoding, userChosen); - - coreFrame->loader()->addData(data, length); -} - void WebFrameLoaderClient::finishedLoading(DocumentLoader* loader) { // Telling the frame we received some data and passing 0 as the data is our // way to get work done that is normally done when the first bit of data is // received, even for the case of a document with no data (like about:blank) - if (!m_manualLoader) { - committedLoad(loader, 0, 0); + committedLoad(loader, 0, 0); + + if (!m_manualLoader) return; - } m_manualLoader->didFinishLoading(); m_manualLoader = 0; @@ -723,6 +720,10 @@ void WebFrameLoaderClient::transitionToCommittedForNewPage() core(m_webFrame)->createView(IntRect(rect).size(), backgroundColor, transparent, IntSize(), false); } +void WebFrameLoaderClient::dispatchDidBecomeFrameset(bool) +{ +} + bool WebFrameLoaderClient::canCachePage() const { return true; @@ -737,6 +738,33 @@ PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& url, const Strin return result.release(); } +void WebFrameLoaderClient::didTransferChildFrameToNewDocument(Page*) +{ + Frame* coreFrame = core(m_webFrame); + ASSERT(coreFrame); + WebView* webView = kit(coreFrame->page()); + if (m_webFrame->webView() != webView) + m_webFrame->setWebView(webView); +} + +void WebFrameLoaderClient::transferLoadingResourceFromPage(unsigned long identifier, DocumentLoader* loader, const ResourceRequest& request, Page* oldPage) +{ + assignIdentifierToInitialRequest(identifier, loader, request); + + WebView* oldWebView = kit(oldPage); + if (!oldWebView) + return; + + COMPtr<IWebResourceLoadDelegate> oldResourceLoadDelegate; + if (FAILED(oldWebView->resourceLoadDelegate(&oldResourceLoadDelegate))) + return; + + COMPtr<IWebResourceLoadDelegatePrivate2> oldResourceLoadDelegatePrivate2(Query, oldResourceLoadDelegate); + if (!oldResourceLoadDelegatePrivate2) + return; + oldResourceLoadDelegatePrivate2->removeIdentifierForRequest(oldWebView, identifier); +} + PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& URL, const String& name, HTMLFrameOwnerElement* ownerElement, const String& referrer) { Frame* coreFrame = core(m_webFrame); @@ -746,8 +774,8 @@ PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& URL, const Strin RefPtr<Frame> childFrame = webFrame->init(m_webFrame->webView(), coreFrame->page(), ownerElement); - coreFrame->tree()->appendChild(childFrame); childFrame->tree()->setName(name); + coreFrame->tree()->appendChild(childFrame); childFrame->init(); coreFrame->loader()->loadURLIntoChildFrame(URL, referrer, childFrame.get()); @@ -773,7 +801,7 @@ void WebFrameLoaderClient::dispatchDidFailToStartPlugin(const PluginView* plugin ASSERT(frame == pluginView->parentFrame()); if (!pluginView->pluginsPage().isNull()) { - KURL pluginPageURL = frame->document()->completeURL(deprecatedParseURL(pluginView->pluginsPage())); + KURL pluginPageURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(pluginView->pluginsPage())); if (pluginPageURL.protocolInHTTPFamily()) { static CFStringRef key = MarshallingHelpers::LPCOLESTRToCFStringRef(WebKitErrorPlugInPageURLStringKey); RetainPtr<CFStringRef> str(AdoptCF, pluginPageURL.string().createCFString()); @@ -863,7 +891,7 @@ PassRefPtr<Widget> WebFrameLoaderClient::createPlugin(const IntSize& pluginSize, dispatchDidFailToStartPlugin(pluginView.get()); - return pluginView; + return 0; } void WebFrameLoaderClient::redirectDataToPlugin(Widget* pluginWidget) diff --git a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h index f1fb5f7..981daec 100644 --- a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h +++ b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h @@ -57,7 +57,6 @@ public: virtual void dispatchDidReceiveContentLength(WebCore::DocumentLoader*, unsigned long identifier, int lengthReceived); virtual void dispatchDidFinishLoading(WebCore::DocumentLoader*, unsigned long identifier); virtual void dispatchDidFailLoading(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::ResourceError&); - virtual void dispatchDidLoadResourceByXMLHttpRequest(unsigned long identifier, const WebCore::ScriptString&); virtual bool shouldCacheResponse(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::ResourceResponse&, const unsigned char* data, unsigned long long length); virtual void dispatchDidHandleOnloadEvents(); @@ -71,14 +70,15 @@ public: virtual void dispatchWillClose(); virtual void dispatchDidReceiveIcon(); virtual void dispatchDidStartProvisionalLoad(); - virtual void dispatchDidReceiveTitle(const WebCore::String&); + virtual void dispatchDidReceiveTitle(const WTF::String&); + virtual void dispatchDidChangeIcons(); virtual void dispatchDidCommitLoad(); virtual void dispatchDidFinishDocumentLoad(); virtual void dispatchDidFinishLoad(); virtual void dispatchDidFirstLayout(); virtual void dispatchDidFirstVisuallyNonEmptyLayout(); - virtual WebCore::Frame* dispatchCreatePage(); + virtual WebCore::Frame* dispatchCreatePage(const WebCore::NavigationAction&); virtual void dispatchShow(); virtual void dispatchDidLoadMainResource(WebCore::DocumentLoader*); @@ -102,20 +102,24 @@ public: virtual void didRunInsecureContent(WebCore::SecurityOrigin*); virtual PassRefPtr<WebCore::DocumentLoader> createDocumentLoader(const WebCore::ResourceRequest&, const WebCore::SubstituteData&); - virtual void setTitle(const WebCore::String& title, const WebCore::KURL&); + virtual void setTitle(const WTF::String& title, const WebCore::KURL&); virtual void savePlatformDataToCachedFrame(WebCore::CachedFrame*); virtual void transitionToCommittedFromCachedFrame(WebCore::CachedFrame*); virtual void transitionToCommittedForNewPage(); + virtual void dispatchDidBecomeFrameset(bool); + virtual bool canCachePage() const; - virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WebCore::String& name, WebCore::HTMLFrameOwnerElement* ownerElement, - const WebCore::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight); - virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector<WebCore::String>&, const Vector<WebCore::String>&, const WebCore::String&, bool loadManually); + virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement, + const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight); + virtual void didTransferChildFrameToNewDocument(WebCore::Page*); + virtual void transferLoadingResourceFromPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*); + virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector<WTF::String>&, const Vector<WTF::String>&, const WTF::String&, bool loadManually); virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget); - virtual bool shouldUsePluginDocument(const WebCore::String& mimeType) const; + virtual bool shouldUsePluginDocument(const WTF::String& mimeType) const; virtual void dispatchDidFailToStartPlugin(const WebCore::PluginView*) const; @@ -124,8 +128,7 @@ protected: ~WebFrameLoaderClient(); private: - PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL&, const WebCore::String& name, WebCore::HTMLFrameOwnerElement*, const WebCore::String& referrer); - void receivedData(const char*, int, const WebCore::String&); + PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL&, const WTF::String& name, WebCore::HTMLFrameOwnerElement*, const WTF::String& referrer); WebHistory* webHistory() const; WebFrame* m_webFrame; diff --git a/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp new file mode 100644 index 0000000..b87b6d9 --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp @@ -0,0 +1,44 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "config.h" + +#include "WebFrameNetworkingContext.h" + +using namespace WebCore; + +PassRefPtr<WebFrameNetworkingContext> WebFrameNetworkingContext::create(Frame* frame, const String& userAgent) +{ + return adoptRef(new WebFrameNetworkingContext(frame, userAgent)); +} + +String WebFrameNetworkingContext::userAgent() const +{ + return m_userAgent; +} + +String WebFrameNetworkingContext::referrer() const +{ + return frame()->loader()->referrer(); +} + +WebCore::ResourceError WebFrameNetworkingContext::blockedError(const WebCore::ResourceRequest& request) const +{ + return frame()->loader()->blockedError(request); +} diff --git a/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h new file mode 100644 index 0000000..a237c9a --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h @@ -0,0 +1,44 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef WebFrameNetworkingContext_h +#define WebFrameNetworkingContext_h + +#include <WebCore/FrameNetworkingContext.h> +#include <WebCore/ResourceError.h> + +class WebFrameNetworkingContext : public WebCore::FrameNetworkingContext { +public: + static PassRefPtr<WebFrameNetworkingContext> create(WebCore::Frame*, const WTF::String& userAgent); + +private: + WebFrameNetworkingContext(WebCore::Frame* frame, const WTF::String& userAgent) + : WebCore::FrameNetworkingContext(frame) + , m_userAgent(userAgent) + { + } + + virtual WTF::String userAgent() const; + virtual WTF::String referrer() const; + virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&) const; + + WTF::String m_userAgent; +}; + +#endif // WebFrameNetworkingContext_h diff --git a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.cpp b/WebKit/win/WebCoreSupport/WebGeolocationClient.cpp index db5ed90..8a526c4 100644 --- a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.cpp +++ b/WebKit/win/WebCoreSupport/WebGeolocationClient.cpp @@ -25,24 +25,24 @@ #include "config.h" #include "WebKitDLL.h" -#include "WebGeolocationControllerClient.h" +#include "WebGeolocationClient.h" #include "WebGeolocationPosition.h" #include "WebView.h" using namespace WebCore; -WebGeolocationControllerClient::WebGeolocationControllerClient(WebView* webView) +WebGeolocationClient::WebGeolocationClient(WebView* webView) : m_webView(webView) { } -void WebGeolocationControllerClient::geolocationDestroyed() +void WebGeolocationClient::geolocationDestroyed() { delete this; } -void WebGeolocationControllerClient::startUpdating() +void WebGeolocationClient::startUpdating() { COMPtr<IWebGeolocationProvider> provider; if (FAILED(m_webView->geolocationProvider(&provider))) @@ -50,15 +50,15 @@ void WebGeolocationControllerClient::startUpdating() provider->registerWebView(m_webView.get()); } -void WebGeolocationControllerClient::stopUpdating() +void WebGeolocationClient::stopUpdating() { COMPtr<IWebGeolocationProvider> provider; if (FAILED(m_webView->geolocationProvider(&provider))) return; - provider->registerWebView(m_webView.get()); + provider->unregisterWebView(m_webView.get()); } -GeolocationPosition* WebGeolocationControllerClient::lastPosition() +GeolocationPosition* WebGeolocationClient::lastPosition() { #if ENABLE(CLIENT_BASED_GEOLOCATION) COMPtr<IWebGeolocationProvider> provider; diff --git a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h b/WebKit/win/WebCoreSupport/WebGeolocationClient.h index ec0bef7..2422ae5 100644 --- a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h +++ b/WebKit/win/WebCoreSupport/WebGeolocationClient.h @@ -23,11 +23,11 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef WebGeolocationControllerClient_h -#define WebGeolocationControllerClient_h +#ifndef WebGeolocationClient_h +#define WebGeolocationClient_h #include "COMPtr.h" -#include <WebCore/GeolocationControllerClient.h> +#include <WebCore/GeolocationClient.h> namespace WebCore { class GeolocationPosition; @@ -35,17 +35,18 @@ namespace WebCore { class WebView; -class WebGeolocationControllerClient : public WebCore::GeolocationControllerClient { +class WebGeolocationClient : public WebCore::GeolocationClient { public: - WebGeolocationControllerClient(WebView*); + WebGeolocationClient(WebView*); virtual void geolocationDestroyed(); virtual void startUpdating(); virtual void stopUpdating(); + virtual void setEnableHighAccuracy(bool) { } virtual WebCore::GeolocationPosition* lastPosition(); private: COMPtr<WebView> m_webView; }; -#endif // WebGeolocationControllerClient_h +#endif // WebGeolocationClient_h diff --git a/WebKit/win/WebCoreSupport/WebInspectorClient.cpp b/WebKit/win/WebCoreSupport/WebInspectorClient.cpp index 0dd6e58..76ebc8f 100644 --- a/WebKit/win/WebCoreSupport/WebInspectorClient.cpp +++ b/WebKit/win/WebCoreSupport/WebInspectorClient.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. + * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -49,11 +49,10 @@ #include <tchar.h> #include <wtf/RetainPtr.h> +#include <wtf/text/StringConcatenate.h> using namespace WebCore; -static const char* const inspectorStartsAttachedName = "inspectorStartsAttached"; - static LPCTSTR kWebInspectorWindowClassName = TEXT("WebInspectorWindowClass"); static ATOM registerWindowClass(); static LPCTSTR kWebInspectorPointerProp = TEXT("WebInspectorPointer"); @@ -71,25 +70,15 @@ static CFBundleRef getWebKitBundle() WebInspectorClient::WebInspectorClient(WebView* webView) : m_inspectedWebView(webView) - , m_hwnd(0) - , m_webViewHwnd(0) - , m_shouldAttachWhenShown(false) - , m_attached(false) + , m_frontendPage(0) { ASSERT(m_inspectedWebView); - m_inspectedWebView->viewWindow((OLE_HANDLE*)&m_inspectedWebViewHwnd); - - // FIXME: Implement window size/position save/restore -#if 0 - [self setWindowFrameAutosaveName:@"Web Inspector"]; -#endif } WebInspectorClient::~WebInspectorClient() { - if (m_hwnd) - ::DestroyWindow(m_hwnd); + m_frontendPage = 0; } void WebInspectorClient::inspectorDestroyed() @@ -97,38 +86,32 @@ void WebInspectorClient::inspectorDestroyed() delete this; } -Page* WebInspectorClient::createPage() +void WebInspectorClient::openInspectorFrontend(InspectorController* inspectorController) { registerWindowClass(); - if (m_hwnd) - ::DestroyWindow(m_hwnd); - - m_hwnd = ::CreateWindowEx(0, kWebInspectorWindowClassName, 0, WS_OVERLAPPEDWINDOW, + HWND frontendHwnd = ::CreateWindowEx(0, kWebInspectorWindowClassName, 0, WS_OVERLAPPEDWINDOW, defaultWindowRect().x(), defaultWindowRect().y(), defaultWindowRect().width(), defaultWindowRect().height(), 0, 0, 0, 0); - if (!m_hwnd) - return 0; - - ::SetProp(m_hwnd, kWebInspectorPointerProp, reinterpret_cast<HANDLE>(this)); + if (!frontendHwnd) + return; - m_webView.adoptRef(WebView::createInstance()); + COMPtr<WebView> frontendWebView(AdoptCOM, WebView::createInstance()); - if (FAILED(m_webView->setHostWindow((OLE_HANDLE)(ULONG64)m_hwnd))) - return 0; + if (FAILED(frontendWebView->setHostWindow((OLE_HANDLE)(ULONG64)frontendHwnd))) + return; RECT rect; - GetClientRect(m_hwnd, &rect); - if (FAILED(m_webView->initWithFrame(rect, 0, 0))) - return 0; + GetClientRect(frontendHwnd, &rect); + if (FAILED(frontendWebView->initWithFrame(rect, 0, 0))) + return; COMPtr<WebInspectorDelegate> delegate(AdoptCOM, WebInspectorDelegate::createInstance()); - if (FAILED(m_webView->setUIDelegate(delegate.get()))) - return 0; + if (FAILED(frontendWebView->setUIDelegate(delegate.get()))) + return; // Keep preferences separate from the rest of the client, making sure we are using expected preference values. - // One reason this is good is that it keeps the inspector out of history via "private browsing". // FIXME: It's crazy that we have to do this song and dance to end up with // a private WebPreferences object, even within WebKit. We should make this // process simpler, and consider whether we can make it simpler for WebKit @@ -136,66 +119,124 @@ Page* WebInspectorClient::createPage() COMPtr<WebPreferences> tempPreferences(AdoptCOM, WebPreferences::createInstance()); COMPtr<IWebPreferences> iPreferences; if (FAILED(tempPreferences->initWithIdentifier(BString(L"WebInspectorPreferences"), &iPreferences))) - return 0; + return; COMPtr<WebPreferences> preferences(Query, iPreferences); if (!preferences) - return 0; + return; if (FAILED(preferences->setAutosaves(FALSE))) - return 0; - if (FAILED(preferences->setPrivateBrowsingEnabled(TRUE))) - return 0; + return; if (FAILED(preferences->setLoadsImagesAutomatically(TRUE))) - return 0; + return; if (FAILED(preferences->setAuthorAndUserStylesEnabled(TRUE))) - return 0; + return; if (FAILED(preferences->setAllowsAnimatedImages(TRUE))) - return 0; + return; if (FAILED(preferences->setLoadsImagesAutomatically(TRUE))) - return 0; + return; if (FAILED(preferences->setPlugInsEnabled(FALSE))) - return 0; + return; if (FAILED(preferences->setJavaEnabled(FALSE))) - return 0; + return; if (FAILED(preferences->setUserStyleSheetEnabled(FALSE))) - return 0; + return; if (FAILED(preferences->setTabsToLinks(FALSE))) - return 0; + return; if (FAILED(preferences->setMinimumFontSize(0))) - return 0; + return; if (FAILED(preferences->setMinimumLogicalFontSize(9))) - return 0; + return; if (FAILED(preferences->setFixedFontFamily(BString(L"Courier New")))) - return 0; + return; if (FAILED(preferences->setDefaultFixedFontSize(13))) - return 0; + return; - if (FAILED(m_webView->setPreferences(preferences.get()))) - return 0; + if (FAILED(frontendWebView->setPreferences(preferences.get()))) + return; - m_webView->setProhibitsMainFrameScrolling(TRUE); + frontendWebView->setProhibitsMainFrameScrolling(TRUE); - if (FAILED(m_webView->viewWindow(reinterpret_cast<OLE_HANDLE*>(&m_webViewHwnd)))) - return 0; + HWND frontendWebViewHwnd; + if (FAILED(frontendWebView->viewWindow(reinterpret_cast<OLE_HANDLE*>(&frontendWebViewHwnd)))) + return; - COMPtr<WebMutableURLRequest> request; - request.adoptRef(WebMutableURLRequest::createInstance()); + COMPtr<WebMutableURLRequest> request(AdoptCOM, WebMutableURLRequest::createInstance()); RetainPtr<CFURLRef> htmlURLRef(AdoptCF, CFBundleCopyResourceURL(getWebKitBundle(), CFSTR("inspector"), CFSTR("html"), CFSTR("inspector"))); if (!htmlURLRef) - return 0; + return; CFStringRef urlStringRef = ::CFURLGetString(htmlURLRef.get()); if (FAILED(request->initWithURL(BString(urlStringRef), WebURLRequestUseProtocolCachePolicy, 60))) - return 0; + return; - if (FAILED(m_webView->topLevelFrame()->loadRequest(request.get()))) - return 0; + if (FAILED(frontendWebView->topLevelFrame()->loadRequest(request.get()))) + return; - return core(m_webView.get()); + m_frontendPage = core(frontendWebView.get()); + WebInspectorFrontendClient* frontendClient = new WebInspectorFrontendClient(m_inspectedWebView, m_inspectedWebViewHwnd, frontendHwnd, frontendWebView, frontendWebViewHwnd, this); + m_frontendPage->inspectorController()->setInspectorFrontendClient(frontendClient); + m_frontendHwnd = frontendHwnd; } +void WebInspectorClient::highlight(Node*) +{ + bool creatingHighlight = !m_highlight; -String WebInspectorClient::localizedStringsURL() + if (creatingHighlight) + m_highlight.set(new WebNodeHighlight(m_inspectedWebView)); + + if (m_highlight->isShowing()) + m_highlight->update(); + else + m_highlight->setShowsWhileWebViewIsVisible(true); + + if (creatingHighlight && IsWindowVisible(m_frontendHwnd)) + m_highlight->placeBehindWindow(m_frontendHwnd); +} + +void WebInspectorClient::hideHighlight() +{ + if (m_highlight) + m_highlight->setShowsWhileWebViewIsVisible(false); +} + +void WebInspectorClient::updateHighlight() +{ + if (m_highlight && m_highlight->isShowing()) + m_highlight->update(); +} + +WebInspectorFrontendClient::WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frontendWebView, HWND frontendWebViewHwnd, WebInspectorClient* inspectorClient) + : InspectorFrontendClientLocal(inspectedWebView->page()->inspectorController(), core(frontendWebView.get())) + , m_inspectedWebView(inspectedWebView) + , m_inspectedWebViewHwnd(inspectedWebViewHwnd) + , m_inspectorClient(inspectorClient) + , m_frontendHwnd(frontendHwnd) + , m_frontendWebView(frontendWebView) + , m_frontendWebViewHwnd(frontendWebViewHwnd) + , m_attached(false) + , m_destroyingInspectorView(false) +{ + ::SetProp(frontendHwnd, kWebInspectorPointerProp, reinterpret_cast<HANDLE>(this)); + // FIXME: Implement window size/position save/restore +#if 0 + [self setWindowFrameAutosaveName:@"Web Inspector"]; +#endif +} + +WebInspectorFrontendClient::~WebInspectorFrontendClient() +{ + destroyInspectorView(true); +} + +void WebInspectorFrontendClient::frontendLoaded() +{ + InspectorFrontendClientLocal::frontendLoaded(); + + setAttachedWindow(m_attached); +} + +String WebInspectorFrontendClient::localizedStringsURL() { RetainPtr<CFURLRef> url(AdoptCF, CFBundleCopyResourceURL(getWebKitBundle(), CFSTR("localizedStrings"), CFSTR("js"), 0)); if (!url) @@ -204,53 +245,52 @@ String WebInspectorClient::localizedStringsURL() return CFURLGetString(url.get()); } - -String WebInspectorClient::hiddenPanels() +String WebInspectorFrontendClient::hiddenPanels() { // FIXME: implement this return String(); } -void WebInspectorClient::showWindow() +void WebInspectorFrontendClient::bringToFront() { showWindowWithoutNotifications(); - m_inspectedWebView->page()->inspectorController()->setWindowVisible(true, m_shouldAttachWhenShown); } -void WebInspectorClient::closeWindow() +void WebInspectorFrontendClient::closeWindow() { - closeWindowWithoutNotifications(); - m_inspectedWebView->page()->inspectorController()->setWindowVisible(false, m_shouldAttachWhenShown); + destroyInspectorView(true); } -bool WebInspectorClient::windowVisible() +void WebInspectorFrontendClient::disconnectFromBackend() { - return !!::IsWindowVisible(m_hwnd); + destroyInspectorView(false); } -void WebInspectorClient::attachWindow() +void WebInspectorFrontendClient::attachWindow() { if (m_attached) return; - m_inspectedWebView->page()->inspectorController()->setSetting(inspectorStartsAttachedName, "true"); + // FIXME: This flag can be saved to the flags storage directly. + m_inspectedWebView->page()->inspectorController()->setInspectorStartsAttached(true); closeWindowWithoutNotifications(); showWindowWithoutNotifications(); } -void WebInspectorClient::detachWindow() +void WebInspectorFrontendClient::detachWindow() { if (!m_attached) return; - m_inspectedWebView->page()->inspectorController()->setSetting(inspectorStartsAttachedName, "false"); + // FIXME: This flag can be saved to the flags storage directly. + m_inspectedWebView->page()->inspectorController()->setInspectorStartsAttached(false); closeWindowWithoutNotifications(); showWindowWithoutNotifications(); } -void WebInspectorClient::setAttachedWindowHeight(unsigned height) +void WebInspectorFrontendClient::setAttachedWindowHeight(unsigned height) { if (!m_attached) return; @@ -268,98 +308,76 @@ void WebInspectorClient::setAttachedWindowHeight(unsigned height) int totalHeight = hostWindowRect.bottom - hostWindowRect.top; int webViewWidth = inspectedRect.right - inspectedRect.left; - SetWindowPos(m_webViewHwnd, 0, 0, totalHeight - height, webViewWidth, height, SWP_NOZORDER); + SetWindowPos(m_frontendWebViewHwnd, 0, 0, totalHeight - height, webViewWidth, height, SWP_NOZORDER); // We want to set the inspected web view height to the totalHeight, because the height adjustment // of the inspected web view happens in onWebViewWindowPosChanging, not here. SetWindowPos(m_inspectedWebViewHwnd, 0, 0, 0, webViewWidth, totalHeight, SWP_NOZORDER); - RedrawWindow(m_webViewHwnd, 0, 0, RDW_INVALIDATE | RDW_ALLCHILDREN | RDW_UPDATENOW); + RedrawWindow(m_frontendWebViewHwnd, 0, 0, RDW_INVALIDATE | RDW_ALLCHILDREN | RDW_UPDATENOW); RedrawWindow(m_inspectedWebViewHwnd, 0, 0, RDW_INVALIDATE | RDW_ALLCHILDREN | RDW_UPDATENOW); } -void WebInspectorClient::highlight(Node*) -{ - bool creatingHighlight = !m_highlight; - - if (creatingHighlight) - m_highlight.set(new WebNodeHighlight(m_inspectedWebView)); - - if (m_highlight->isShowing()) - m_highlight->update(); - else - m_highlight->setShowsWhileWebViewIsVisible(true); - - if (creatingHighlight && IsWindowVisible(m_hwnd)) - m_highlight->placeBehindWindow(m_hwnd); -} - -void WebInspectorClient::hideHighlight() -{ - if (m_highlight) - m_highlight->setShowsWhileWebViewIsVisible(false); -} - -void WebInspectorClient::inspectedURLChanged(const String& newURL) +void WebInspectorFrontendClient::inspectedURLChanged(const String& newURL) { m_inspectedURL = newURL; updateWindowTitle(); } -void WebInspectorClient::inspectorWindowObjectCleared() -{ - notImplemented(); -} - -void WebInspectorClient::closeWindowWithoutNotifications() +void WebInspectorFrontendClient::closeWindowWithoutNotifications() { - if (!m_hwnd) + if (!m_frontendHwnd) return; if (!m_attached) { - ShowWindow(m_hwnd, SW_HIDE); + ShowWindow(m_frontendHwnd, SW_HIDE); return; } - ASSERT(m_webView); + ASSERT(m_frontendWebView); ASSERT(m_inspectedWebViewHwnd); - ASSERT(!IsWindowVisible(m_hwnd)); + ASSERT(!IsWindowVisible(m_frontendHwnd)); // Remove the Inspector's WebView from the inspected WebView's parent window. WindowMessageBroadcaster::removeListener(m_inspectedWebViewHwnd, this); m_attached = false; - m_webView->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_hwnd)); + m_frontendWebView->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_frontendHwnd)); // Make sure everything has the right size/position. HWND hostWindow; if (SUCCEEDED(m_inspectedWebView->hostWindow((OLE_HANDLE*)&hostWindow))) SendMessage(hostWindow, WM_SIZE, 0, 0); - - if (m_highlight && m_highlight->isShowing()) - m_highlight->update(); } -void WebInspectorClient::showWindowWithoutNotifications() +void WebInspectorFrontendClient::showWindowWithoutNotifications() { - if (!m_hwnd) + if (!m_frontendHwnd) return; - ASSERT(m_webView); + ASSERT(m_frontendWebView); ASSERT(m_inspectedWebViewHwnd); - // If no preference is set - default to an attached window. This is important for inspector LayoutTests. - String shouldAttach = m_inspectedWebView->page()->inspectorController()->setting(inspectorStartsAttachedName); - m_shouldAttachWhenShown = shouldAttach != "false"; + bool shouldAttach = false; + if (m_attached) + shouldAttach = true; + else { + // If no preference is set - default to an attached window. This is important for inspector LayoutTests. + // FIXME: This flag can be fetched directly from the flags storage. + shouldAttach = m_inspectedWebView->page()->inspectorController()->inspectorStartsAttached(); + + if (shouldAttach && !canAttachWindow()) + shouldAttach = false; + } - if (!m_shouldAttachWhenShown) { + if (!shouldAttach) { // Put the Inspector's WebView inside our window and show it. - m_webView->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_hwnd)); - SendMessage(m_hwnd, WM_SIZE, 0, 0); + m_frontendWebView->setHostWindow(reinterpret_cast<OLE_HANDLE>(m_frontendHwnd)); + SendMessage(m_frontendHwnd, WM_SIZE, 0, 0); updateWindowTitle(); - SetWindowPos(m_hwnd, HWND_TOP, 0, 0, 0, 0, SWP_SHOWWINDOW | SWP_NOMOVE | SWP_NOSIZE); + SetWindowPos(m_frontendHwnd, HWND_TOP, 0, 0, 0, 0, SWP_SHOWWINDOW | SWP_NOMOVE | SWP_NOSIZE); return; } @@ -370,31 +388,42 @@ void WebInspectorClient::showWindowWithoutNotifications() if (FAILED(m_inspectedWebView->hostWindow(reinterpret_cast<OLE_HANDLE*>(&hostWindow)))) return; - m_webView->setHostWindow(reinterpret_cast<OLE_HANDLE>(hostWindow)); + m_frontendWebView->setHostWindow(reinterpret_cast<OLE_HANDLE>(hostWindow)); // Then hide our own window. - ShowWindow(m_hwnd, SW_HIDE); + ShowWindow(m_frontendHwnd, SW_HIDE); m_attached = true; // Make sure everything has the right size/position. SendMessage(hostWindow, WM_SIZE, 0, 0); - if (m_highlight && m_highlight->isShowing()) - m_highlight->update(); + m_inspectorClient->updateHighlight(); +} + +void WebInspectorFrontendClient::destroyInspectorView(bool notifyInspectorController) +{ + if (m_destroyingInspectorView) + return; + m_destroyingInspectorView = true; + + + closeWindowWithoutNotifications(); + + if (notifyInspectorController) { + m_inspectedWebView->page()->inspectorController()->disconnectFrontend(); + m_inspectorClient->updateHighlight(); + m_inspectorClient->frontendClosing(); + } + ::DestroyWindow(m_frontendHwnd); } -void WebInspectorClient::updateWindowTitle() +void WebInspectorFrontendClient::updateWindowTitle() { - // FIXME: The series of appends should be replaced with a call to String::format() - // when it can be figured out how to get the unicode em-dash to show up. - String title = "Web Inspector "; - title.append((UChar)0x2014); // em-dash - title.append(' '); - title.append(m_inspectedURL); - ::SetWindowText(m_hwnd, title.charactersWithNullTermination()); + String title = makeString("Web Inspector ", static_cast<UChar>(0x2014), ' ', m_inspectedURL); + ::SetWindowText(m_frontendHwnd, title.charactersWithNullTermination()); } -LRESULT WebInspectorClient::onGetMinMaxInfo(WPARAM, LPARAM lParam) +LRESULT WebInspectorFrontendClient::onGetMinMaxInfo(WPARAM, LPARAM lParam) { MINMAXINFO* info = reinterpret_cast<MINMAXINFO*>(lParam); POINT size = {400, 400}; @@ -403,33 +432,31 @@ LRESULT WebInspectorClient::onGetMinMaxInfo(WPARAM, LPARAM lParam) return 0; } -LRESULT WebInspectorClient::onSize(WPARAM, LPARAM) +LRESULT WebInspectorFrontendClient::onSize(WPARAM, LPARAM) { RECT rect; - ::GetClientRect(m_hwnd, &rect); + ::GetClientRect(m_frontendHwnd, &rect); - ::SetWindowPos(m_webViewHwnd, 0, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER); + ::SetWindowPos(m_frontendWebViewHwnd, 0, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER); return 0; } -LRESULT WebInspectorClient::onClose(WPARAM, LPARAM) +LRESULT WebInspectorFrontendClient::onClose(WPARAM, LPARAM) { - ::ShowWindow(m_hwnd, SW_HIDE); - m_inspectedWebView->page()->inspectorController()->setWindowVisible(false, m_shouldAttachWhenShown); - - hideHighlight(); + ::ShowWindow(m_frontendHwnd, SW_HIDE); + m_inspectedWebView->page()->inspectorController()->close(); return 0; } -LRESULT WebInspectorClient::onSetFocus() +LRESULT WebInspectorFrontendClient::onSetFocus() { - SetFocus(m_webViewHwnd); + SetFocus(m_frontendWebViewHwnd); return 0; } -void WebInspectorClient::onWebViewWindowPosChanging(WPARAM, LPARAM lParam) +void WebInspectorFrontendClient::onWebViewWindowPosChanging(WPARAM, LPARAM lParam) { ASSERT(m_attached); @@ -440,17 +467,17 @@ void WebInspectorClient::onWebViewWindowPosChanging(WPARAM, LPARAM lParam) return; RECT inspectorRect; - GetClientRect(m_webViewHwnd, &inspectorRect); + GetClientRect(m_frontendWebViewHwnd, &inspectorRect); unsigned inspectorHeight = inspectorRect.bottom - inspectorRect.top; windowPos->cy -= inspectorHeight; - SetWindowPos(m_webViewHwnd, 0, windowPos->x, windowPos->y + windowPos->cy, windowPos->cx, inspectorHeight, SWP_NOZORDER); + SetWindowPos(m_frontendWebViewHwnd, 0, windowPos->x, windowPos->y + windowPos->cy, windowPos->cx, inspectorHeight, SWP_NOZORDER); } static LRESULT CALLBACK WebInspectorWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { - WebInspectorClient* client = reinterpret_cast<WebInspectorClient*>(::GetProp(hwnd, kWebInspectorPointerProp)); + WebInspectorFrontendClient* client = reinterpret_cast<WebInspectorFrontendClient*>(::GetProp(hwnd, kWebInspectorPointerProp)); if (!client) return ::DefWindowProc(hwnd, msg, wParam, lParam); @@ -470,7 +497,7 @@ static LRESULT CALLBACK WebInspectorWndProc(HWND hwnd, UINT msg, WPARAM wParam, return ::DefWindowProc(hwnd, msg, wParam, lParam); } -void WebInspectorClient::windowReceivedMessage(HWND, UINT msg, WPARAM wParam, LPARAM lParam) +void WebInspectorFrontendClient::windowReceivedMessage(HWND, UINT msg, WPARAM wParam, LPARAM lParam) { switch (msg) { case WM_WINDOWPOSCHANGING: diff --git a/WebKit/win/WebCoreSupport/WebInspectorClient.h b/WebKit/win/WebCoreSupport/WebInspectorClient.h index 3f65b0a..0c38247 100644 --- a/WebKit/win/WebCoreSupport/WebInspectorClient.h +++ b/WebKit/win/WebCoreSupport/WebInspectorClient.h @@ -31,52 +31,84 @@ #include <WebCore/COMPtr.h> #include <WebCore/InspectorClient.h> +#include <WebCore/InspectorFrontendClientLocal.h> #include <WebCore/PlatformString.h> #include <WebCore/WindowMessageListener.h> #include <wtf/OwnPtr.h> #include <windows.h> +namespace WebCore { + +class Page; + +} + class WebNodeHighlight; class WebView; -class WebInspectorClient : public WebCore::InspectorClient, WebCore::WindowMessageListener { +class WebInspectorClient : public WebCore::InspectorClient { public: WebInspectorClient(WebView*); // InspectorClient virtual void inspectorDestroyed(); - virtual WebCore::Page* createPage(); - - virtual WebCore::String localizedStringsURL(); + virtual void openInspectorFrontend(WebCore::InspectorController*); - virtual WebCore::String hiddenPanels(); + virtual void highlight(WebCore::Node*); + virtual void hideHighlight(); - virtual void showWindow(); - virtual void closeWindow(); - virtual bool windowVisible(); + virtual void populateSetting(const WTF::String& key, WTF::String* value); + virtual void storeSetting(const WTF::String& key, const WTF::String& value); - virtual void attachWindow(); - virtual void detachWindow(); + virtual bool sendMessageToFrontend(const WTF::String&); - virtual void setAttachedWindowHeight(unsigned height); + void updateHighlight(); + void frontendClosing() + { + m_frontendHwnd = 0; + releaseFrontendPage(); + } - virtual void highlight(WebCore::Node*); - virtual void hideHighlight(); + void releaseFrontendPage(); +private: + ~WebInspectorClient(); - virtual void inspectedURLChanged(const WebCore::String& newURL); + WebView* m_inspectedWebView; + WebCore::Page* m_frontendPage; + HWND m_inspectedWebViewHwnd; + HWND m_frontendHwnd; - virtual void populateSetting(const WebCore::String& key, WebCore::String* value); - virtual void storeSetting(const WebCore::String& key, const WebCore::String& value); + OwnPtr<WebNodeHighlight> m_highlight; +}; - virtual void inspectorWindowObjectCleared(); +class WebInspectorFrontendClient : public WebCore::InspectorFrontendClientLocal, WebCore::WindowMessageListener { +public: + WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frotnendWebView, HWND frontendWebViewHwnd, WebInspectorClient* inspectorClient); + + virtual void frontendLoaded(); + + virtual WTF::String localizedStringsURL(); + virtual WTF::String hiddenPanels(); + + virtual void bringToFront(); + virtual void closeWindow(); + virtual void disconnectFromBackend(); + + virtual void attachWindow(); + virtual void detachWindow(); + + virtual void setAttachedWindowHeight(unsigned height); + virtual void inspectedURLChanged(const WTF::String& newURL); private: - ~WebInspectorClient(); + ~WebInspectorFrontendClient(); void closeWindowWithoutNotifications(); void showWindowWithoutNotifications(); + void destroyInspectorView(bool notifyInspectorController); + void updateWindowTitle(); LRESULT onGetMinMaxInfo(WPARAM, LPARAM); @@ -90,16 +122,15 @@ private: WebView* m_inspectedWebView; HWND m_inspectedWebViewHwnd; - HWND m_hwnd; - COMPtr<WebView> m_webView; - HWND m_webViewHwnd; + HWND m_frontendHwnd; + WebInspectorClient* m_inspectorClient; + COMPtr<WebView> m_frontendWebView; + HWND m_frontendWebViewHwnd; - bool m_shouldAttachWhenShown; bool m_attached; - OwnPtr<WebNodeHighlight> m_highlight; - - WebCore::String m_inspectedURL; + WTF::String m_inspectedURL; + bool m_destroyingInspectorView; static friend LRESULT CALLBACK WebInspectorWndProc(HWND, UINT, WPARAM, LPARAM); }; diff --git a/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp b/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp new file mode 100644 index 0000000..fe35877 --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp @@ -0,0 +1,661 @@ +/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "config.h" +#include "WebPlatformStrategies.h" + +#include "WebLocalizableStrings.h" +#include <WebCore/IntSize.h> +#include <WebCore/Page.h> +#include <WebCore/PageGroup.h> +#include <WebCore/PluginDatabase.h> +#include <wtf/MathExtras.h> +#include <wtf/RetainPtr.h> + +using namespace WebCore; + +void WebPlatformStrategies::initialize() +{ + DEFINE_STATIC_LOCAL(WebPlatformStrategies, platformStrategies, ()); +} + +WebPlatformStrategies::WebPlatformStrategies() +{ + setPlatformStrategies(this); +} + +// PluginStrategy + +PluginStrategy* WebPlatformStrategies::createPluginStrategy() +{ + return this; +} + +LocalizationStrategy* WebPlatformStrategies::createLocalizationStrategy() +{ + return this; +} + +VisitedLinkStrategy* WebPlatformStrategies::createVisitedLinkStrategy() +{ + return this; +} + +void WebPlatformStrategies::refreshPlugins() +{ + PluginDatabase::installedPlugins()->refresh(); +} + +void WebPlatformStrategies::getPluginInfo(const WebCore::Page*, Vector<WebCore::PluginInfo>& outPlugins) +{ + const Vector<PluginPackage*>& plugins = PluginDatabase::installedPlugins()->plugins(); + + outPlugins.resize(plugins.size()); + + for (size_t i = 0; i < plugins.size(); ++i) { + PluginPackage* package = plugins[i]; + + PluginInfo info; + info.name = package->name(); + info.file = package->fileName(); + info.desc = package->description(); + + const MIMEToDescriptionsMap& mimeToDescriptions = package->mimeToDescriptions(); + + info.mimes.reserveCapacity(mimeToDescriptions.size()); + + MIMEToDescriptionsMap::const_iterator end = mimeToDescriptions.end(); + for (MIMEToDescriptionsMap::const_iterator it = mimeToDescriptions.begin(); it != end; ++it) { + MimeClassInfo mime; + + mime.type = it->first; + mime.desc = it->second; + mime.extensions = package->mimeToExtensions().get(mime.type); + + info.mimes.append(mime); + } + + outPlugins[i] = info; + } +} + +// LocalizationStrategy + +String WebPlatformStrategies::searchableIndexIntroduction() +{ + return UI_STRING("This is a searchable index. Enter search keywords: ", "text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'"); +} + +String WebPlatformStrategies::submitButtonDefaultLabel() +{ + return UI_STRING("Submit", "default label for Submit buttons in forms on web pages"); +} + +String WebPlatformStrategies::inputElementAltText() +{ + return UI_STRING_KEY("Submit", "Submit (input element)", "alt text for <input> elements with no alt, title, or value"); +} + +String WebPlatformStrategies::resetButtonDefaultLabel() +{ + return UI_STRING("Reset", "default label for Reset buttons in forms on web pages"); +} + +String WebPlatformStrategies::fileButtonChooseFileLabel() +{ + return UI_STRING("Choose File", "title for file button used in HTML forms"); +} + +String WebPlatformStrategies::fileButtonNoFileSelectedLabel() +{ + return UI_STRING("no file selected", "text to display in file button used in HTML forms when no file is selected"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenLinkInNewWindow() +{ + return UI_STRING("Open Link in New Window", "Open in New Window context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagDownloadLinkToDisk() +{ + return UI_STRING("Download Linked File", "Download Linked File context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCopyLinkToClipboard() +{ + return UI_STRING("Copy Link", "Copy Link context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenImageInNewWindow() +{ + return UI_STRING("Open Image in New Window", "Open Image in New Window context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagDownloadImageToDisk() +{ + return UI_STRING("Download Image", "Download Image context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCopyImageToClipboard() +{ + return UI_STRING("Copy Image", "Copy Image context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow() +{ + return UI_STRING("Open Video in New Window", "Open Video in New Window context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow() +{ + return UI_STRING("Open Audio in New Window", "Open Audio in New Window context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard() +{ + return UI_STRING("Copy Video Address", "Copy Video Address Location context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard() +{ + return UI_STRING("Copy Audio Address", "Copy Audio Address Location context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagToggleMediaControls() +{ + return UI_STRING("Controls", "Media Controls context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagToggleMediaLoop() +{ + return UI_STRING("Loop", "Media Loop context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen() +{ + return UI_STRING("Enter Fullscreen", "Video Enter Fullscreen context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagMediaPlay() +{ + return UI_STRING("Play", "Media Play context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagMediaPause() +{ + return UI_STRING("Pause", "Media Pause context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagMediaMute() +{ + return UI_STRING("Mute", "Media Mute context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenFrameInNewWindow() +{ + return UI_STRING("Open Frame in New Window", "Open Frame in New Window context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCopy() +{ + return UI_STRING("Copy", "Copy context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagGoBack() +{ + return UI_STRING("Back", "Back context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagGoForward() +{ + return UI_STRING("Forward", "Forward context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagStop() +{ + return UI_STRING("Stop", "Stop context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagReload() +{ + return UI_STRING("Reload", "Reload context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCut() +{ + return UI_STRING("Cut", "Cut context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagPaste() +{ + return UI_STRING("Paste", "Paste context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagNoGuessesFound() +{ + return UI_STRING("No Guesses Found", "No Guesses Found context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagIgnoreSpelling() +{ + return UI_STRING("Ignore Spelling", "Ignore Spelling context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagLearnSpelling() +{ + return UI_STRING("Learn Spelling", "Learn Spelling context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagSearchWeb() +{ + return UI_STRING("Search with Google", "Search in Google context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagLookUpInDictionary() +{ + return UI_STRING("Look Up in Dictionary", "Look Up in Dictionary context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOpenLink() +{ + return UI_STRING("Open Link", "Open Link context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagIgnoreGrammar() +{ + return UI_STRING("Ignore Grammar", "Ignore Grammar context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagSpellingMenu() +{ + return UI_STRING("Spelling and Grammar", "Spelling and Grammar context sub-menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCheckSpelling() +{ + return UI_STRING("Check Document Now", "Check spelling context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCheckSpellingWhileTyping() +{ + return UI_STRING("Check Spelling While Typing", "Check spelling while typing context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagCheckGrammarWithSpelling() +{ + return UI_STRING("Check Grammar With Spelling", "Check grammar with spelling context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagFontMenu() +{ + return UI_STRING("Font", "Font context sub-menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagBold() +{ + return UI_STRING("Bold", "Bold context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagItalic() +{ + return UI_STRING("Italic", "Italic context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagUnderline() +{ + return UI_STRING("Underline", "Underline context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagOutline() +{ + return UI_STRING("Outline", "Outline context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagWritingDirectionMenu() +{ + return UI_STRING("Paragraph Direction", "Paragraph direction context sub-menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagTextDirectionMenu() +{ + return UI_STRING("Selection Direction", "Selection direction context sub-menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagDefaultDirection() +{ + return UI_STRING("Default", "Default writing direction context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagLeftToRight() +{ + return UI_STRING("Left to Right", "Left to Right context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagRightToLeft() +{ + return UI_STRING("Right to Left", "Right to Left context menu item"); +} + +String WebPlatformStrategies::contextMenuItemTagShowSpellingPanel(bool show) +{ + if (show) + return UI_STRING("Show Spelling and Grammar", "menu item title"); + return UI_STRING("Hide Spelling and Grammar", "menu item title"); +} + +String WebPlatformStrategies::contextMenuItemTagInspectElement() +{ + return UI_STRING("Inspect Element", "Inspect Element context menu item"); +} + +String WebPlatformStrategies::searchMenuNoRecentSearchesText() +{ + return UI_STRING("No recent searches", "Label for only item in menu that appears when clicking on the search field image, when no searches have been performed"); +} + +String WebPlatformStrategies::searchMenuRecentSearchesText() +{ + return UI_STRING("Recent Searches", "label for first item in the menu that appears when clicking on the search field image, used as embedded menu title"); +} + +String WebPlatformStrategies::searchMenuClearRecentSearchesText() +{ + return UI_STRING("Clear Recent Searches", "menu item in Recent Searches menu that empties menu's contents"); +} + +String WebPlatformStrategies::AXWebAreaText() +{ + return UI_STRING("web area", "accessibility role description for web area"); +} + +String WebPlatformStrategies::AXLinkText() +{ + return UI_STRING("link", "accessibility role description for link"); +} + +String WebPlatformStrategies::AXListMarkerText() +{ + return UI_STRING("list marker", "accessibility role description for list marker"); +} + +String WebPlatformStrategies::AXImageMapText() +{ + return UI_STRING("image map", "accessibility role description for image map"); +} + +String WebPlatformStrategies::AXHeadingText() +{ + return UI_STRING("heading", "accessibility role description for headings"); +} + +String WebPlatformStrategies::AXDefinitionListTermText() +{ + return UI_STRING("term", "term word of a definition"); +} + +String WebPlatformStrategies::AXDefinitionListDefinitionText() +{ + return UI_STRING("definition", "definition phrase"); +} + +String WebPlatformStrategies::AXButtonActionVerb() +{ + return UI_STRING("press", "Verb stating the action that will occur when a button is pressed, as used by accessibility"); +} + +String WebPlatformStrategies::AXRadioButtonActionVerb() +{ + return UI_STRING("select", "Verb stating the action that will occur when a radio button is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::AXTextFieldActionVerb() +{ + return UI_STRING("activate", "Verb stating the action that will occur when a text field is selected, as used by accessibility"); +} + +String WebPlatformStrategies::AXCheckedCheckBoxActionVerb() +{ + return UI_STRING("uncheck", "Verb stating the action that will occur when a checked checkbox is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::AXUncheckedCheckBoxActionVerb() +{ + return UI_STRING("check", "Verb stating the action that will occur when an unchecked checkbox is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::AXLinkActionVerb() +{ + return UI_STRING("jump", "Verb stating the action that will occur when a link is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::AXMenuListActionVerb() +{ + return UI_STRING("open", "Verb stating the action that will occur when a select element is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::AXMenuListPopupActionVerb() +{ + return UI_STRING_KEY("press", "press (select element)", "Verb stating the action that will occur when a select element's popup list is clicked, as used by accessibility"); +} + +String WebPlatformStrategies::unknownFileSizeText() +{ + return UI_STRING("Unknown", "Unknown filesize FTP directory listing item"); +} + +String WebPlatformStrategies::uploadFileText() +{ + return UI_STRING("Upload file", "(Windows) Form submit file upload dialog title"); +} + +String WebPlatformStrategies::allFilesText() +{ + return UI_STRING("All Files", "(Windows) Form submit file upload all files pop-up"); +} + +String WebPlatformStrategies::missingPluginText() +{ + return UI_STRING("Missing Plug-in", "Label text to be used when a plugin is missing"); +} + +String WebPlatformStrategies::crashedPluginText() +{ + return UI_STRING("Plug-in Failure", "Label text to be used if plugin host process has crashed"); +} + +String WebPlatformStrategies::imageTitle(const String& filename, const IntSize& size) +{ + RetainPtr<CFStringRef> filenameCF(AdoptCF, filename.createCFString()); + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%@ %d\xC3\x97%d pixels", "window title for a standalone image (uses multiplication symbol, not x)"), filenameCF.get(), size.width(), size.height())).get(); +} + +String WebPlatformStrategies::multipleFileUploadText(unsigned numberOfFiles) +{ + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%d files", "Label to describe the number of files selected in a file upload control that allows multiple files"), numberOfFiles)).get(); +} + +String WebPlatformStrategies::mediaElementLoadingStateText() +{ + return UI_STRING("Loading...", "Media controller status message when the media is loading"); +} + +String WebPlatformStrategies::mediaElementLiveBroadcastStateText() +{ + return UI_STRING("Live Broadcast", "Media controller status message when watching a live broadcast"); +} + +String WebPlatformStrategies::localizedMediaControlElementString(const String& name) +{ + if (name == "AudioElement") + return UI_STRING("audio element controller", "accessibility role description for audio element controller"); + if (name == "VideoElement") + return UI_STRING("video element controller", "accessibility role description for video element controller"); + if (name == "MuteButton") + return UI_STRING("mute", "accessibility role description for mute button"); + if (name == "UnMuteButton") + return UI_STRING("unmute", "accessibility role description for turn mute off button"); + if (name == "PlayButton") + return UI_STRING("play", "accessibility role description for play button"); + if (name == "PauseButton") + return UI_STRING("pause", "accessibility role description for pause button"); + if (name == "Slider") + return UI_STRING("movie time", "accessibility role description for timeline slider"); + if (name == "SliderThumb") + return UI_STRING("timeline slider thumb", "accessibility role description for timeline thumb"); + if (name == "RewindButton") + return UI_STRING("back 30 seconds", "accessibility role description for seek back 30 seconds button"); + if (name == "ReturnToRealtimeButton") + return UI_STRING("return to realtime", "accessibility role description for return to real time button"); + if (name == "CurrentTimeDisplay") + return UI_STRING("elapsed time", "accessibility role description for elapsed time display"); + if (name == "TimeRemainingDisplay") + return UI_STRING("remaining time", "accessibility role description for time remaining display"); + if (name == "StatusDisplay") + return UI_STRING("status", "accessibility role description for movie status"); + if (name == "FullscreenButton") + return UI_STRING("fullscreen", "accessibility role description for enter fullscreen button"); + if (name == "SeekForwardButton") + return UI_STRING("fast forward", "accessibility role description for fast forward button"); + if (name == "SeekBackButton") + return UI_STRING("fast reverse", "accessibility role description for fast reverse button"); + if (name == "ShowClosedCaptionsButton") + return UI_STRING("show closed captions", "accessibility role description for show closed captions button"); + if (name == "HideClosedCaptionsButton") + return UI_STRING("hide closed captions", "accessibility role description for hide closed captions button"); + + ASSERT_NOT_REACHED(); + return String(); +} + +String WebPlatformStrategies::localizedMediaControlElementHelpText(const String& name) +{ + if (name == "AudioElement") + return UI_STRING("audio element playback controls and status display", "accessibility role description for audio element controller"); + if (name == "VideoElement") + return UI_STRING("video element playback controls and status display", "accessibility role description for video element controller"); + if (name == "MuteButton") + return UI_STRING("mute audio tracks", "accessibility help text for mute button"); + if (name == "UnMuteButton") + return UI_STRING("unmute audio tracks", "accessibility help text for un mute button"); + if (name == "PlayButton") + return UI_STRING("begin playback", "accessibility help text for play button"); + if (name == "PauseButton") + return UI_STRING("pause playback", "accessibility help text for pause button"); + if (name == "Slider") + return UI_STRING("movie time scrubber", "accessibility help text for timeline slider"); + if (name == "SliderThumb") + return UI_STRING("movie time scrubber thumb", "accessibility help text for timeline slider thumb"); + if (name == "RewindButton") + return UI_STRING("seek movie back 30 seconds", "accessibility help text for jump back 30 seconds button"); + if (name == "ReturnToRealtimeButton") + return UI_STRING("return streaming movie to real time", "accessibility help text for return streaming movie to real time button"); + if (name == "CurrentTimeDisplay") + return UI_STRING("current movie time in seconds", "accessibility help text for elapsed time display"); + if (name == "TimeRemainingDisplay") + return UI_STRING("number of seconds of movie remaining", "accessibility help text for remaining time display"); + if (name == "StatusDisplay") + return UI_STRING("current movie status", "accessibility help text for movie status display"); + if (name == "SeekBackButton") + return UI_STRING("seek quickly back", "accessibility help text for fast rewind button"); + if (name == "SeekForwardButton") + return UI_STRING("seek quickly forward", "accessibility help text for fast forward button"); + if (name == "FullscreenButton") + return UI_STRING("Play movie in fullscreen mode", "accessibility help text for enter fullscreen button"); + if (name == "ShowClosedCaptionsButton") + return UI_STRING("start displaying closed captions", "accessibility help text for show closed captions button"); + if (name == "HideClosedCaptionsButton") + return UI_STRING("stop displaying closed captions", "accessibility help text for hide closed captions button"); + + ASSERT_NOT_REACHED(); + return String(); +} + +String WebPlatformStrategies::localizedMediaTimeDescription(float time) +{ + if (!isfinite(time)) + return UI_STRING("indefinite time", "accessibility help text for an indefinite media controller time value"); + + int seconds = (int)fabsf(time); + int days = seconds / (60 * 60 * 24); + int hours = seconds / (60 * 60); + int minutes = (seconds / 60) % 60; + seconds %= 60; + + if (days) + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%1$d days %2$d hours %3$d minutes %4$d seconds", "accessibility help text for media controller time value >= 1 day"), days, hours, minutes, seconds)).get(); + + if (hours) + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%1$d hours %2$d minutes %3$d seconds", "accessibility help text for media controller time value >= 60 minutes"), hours, minutes, seconds)).get(); + + if (minutes) + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%1$d minutes %2$d seconds", "accessibility help text for media controller time value >= 60 seconds"), minutes, seconds)).get(); + + return RetainPtr<CFStringRef>(AdoptCF, CFStringCreateWithFormat(0, 0, UI_STRING("%1$d seconds", "accessibility help text for media controller time value < 60 seconds"), seconds)).get(); +} + +String WebPlatformStrategies::validationMessageValueMissingText() +{ + return UI_STRING("value missing", "Validation message for required form control elements that have no value"); +} + +String WebPlatformStrategies::validationMessageTypeMismatchText() +{ + return UI_STRING("type mismatch", "Validation message for input form controls with a value not matching type"); +} + +String WebPlatformStrategies::validationMessagePatternMismatchText() +{ + return UI_STRING("pattern mismatch", "Validation message for input form controls requiring a constrained value according to pattern"); +} + +String WebPlatformStrategies::validationMessageTooLongText() +{ + return UI_STRING("too long", "Validation message for form control elements with a value longer than maximum allowed length"); +} + +String WebPlatformStrategies::validationMessageRangeUnderflowText() +{ + return UI_STRING("range underflow", "Validation message for input form controls with value lower than allowed minimum"); +} + +String WebPlatformStrategies::validationMessageRangeOverflowText() +{ + return UI_STRING("range overflow", "Validation message for input form controls with value higher than allowed maximum"); +} + +String WebPlatformStrategies::validationMessageStepMismatchText() +{ + return UI_STRING("step mismatch", "Validation message for input form controls with value not respecting the step attribute"); +} + +bool WebPlatformStrategies::isLinkVisited(Page* page, LinkHash hash) +{ + return page->group().isLinkVisited(hash); +} + +void WebPlatformStrategies::addVisitedLink(Page* page, LinkHash hash) +{ + page->group().addVisitedLinkHash(hash); +} diff --git a/WebKit/win/WebCoreSupport/WebPlatformStrategies.h b/WebKit/win/WebCoreSupport/WebPlatformStrategies.h new file mode 100644 index 0000000..48c2b46 --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebPlatformStrategies.h @@ -0,0 +1,149 @@ +/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef WebPlatformStrategies_h +#define WebPlatformStrategies_h + +#include <WebCore/LocalizationStrategy.h> +#include <WebCore/PlatformStrategies.h> +#include <WebCore/PluginStrategy.h> +#include <WebCore/VisitedLinkStrategy.h> + +class WebPlatformStrategies : public WebCore::PlatformStrategies, private WebCore::PluginStrategy, private WebCore::LocalizationStrategy, private WebCore::VisitedLinkStrategy { +public: + static void initialize(); + +private: + WebPlatformStrategies(); + + // WebCore::PlatformStrategies + virtual WebCore::PluginStrategy* createPluginStrategy(); + virtual WebCore::LocalizationStrategy* createLocalizationStrategy(); + virtual WebCore::VisitedLinkStrategy* createVisitedLinkStrategy(); + + // WebCore::PluginStrategy + virtual void refreshPlugins(); + virtual void getPluginInfo(const WebCore::Page*, Vector<WebCore::PluginInfo>&); + + // WebCore::LocalizationStrategy + virtual WTF::String inputElementAltText(); + virtual WTF::String resetButtonDefaultLabel(); + virtual WTF::String searchableIndexIntroduction(); + virtual WTF::String submitButtonDefaultLabel(); + virtual WTF::String fileButtonChooseFileLabel(); + virtual WTF::String fileButtonNoFileSelectedLabel(); +#if ENABLE(CONTEXT_MENUS) + virtual WTF::String contextMenuItemTagOpenLinkInNewWindow(); + virtual WTF::String contextMenuItemTagDownloadLinkToDisk(); + virtual WTF::String contextMenuItemTagCopyLinkToClipboard(); + virtual WTF::String contextMenuItemTagOpenImageInNewWindow(); + virtual WTF::String contextMenuItemTagDownloadImageToDisk(); + virtual WTF::String contextMenuItemTagCopyImageToClipboard(); + virtual WTF::String contextMenuItemTagOpenFrameInNewWindow(); + virtual WTF::String contextMenuItemTagCopy(); + virtual WTF::String contextMenuItemTagGoBack(); + virtual WTF::String contextMenuItemTagGoForward(); + virtual WTF::String contextMenuItemTagStop(); + virtual WTF::String contextMenuItemTagReload(); + virtual WTF::String contextMenuItemTagCut(); + virtual WTF::String contextMenuItemTagPaste(); + virtual WTF::String contextMenuItemTagNoGuessesFound(); + virtual WTF::String contextMenuItemTagIgnoreSpelling(); + virtual WTF::String contextMenuItemTagLearnSpelling(); + virtual WTF::String contextMenuItemTagSearchWeb(); + virtual WTF::String contextMenuItemTagLookUpInDictionary(); + virtual WTF::String contextMenuItemTagOpenLink(); + virtual WTF::String contextMenuItemTagIgnoreGrammar(); + virtual WTF::String contextMenuItemTagSpellingMenu(); + virtual WTF::String contextMenuItemTagShowSpellingPanel(bool show); + virtual WTF::String contextMenuItemTagCheckSpelling(); + virtual WTF::String contextMenuItemTagCheckSpellingWhileTyping(); + virtual WTF::String contextMenuItemTagCheckGrammarWithSpelling(); + virtual WTF::String contextMenuItemTagFontMenu(); + virtual WTF::String contextMenuItemTagBold(); + virtual WTF::String contextMenuItemTagItalic(); + virtual WTF::String contextMenuItemTagUnderline(); + virtual WTF::String contextMenuItemTagOutline(); + virtual WTF::String contextMenuItemTagWritingDirectionMenu(); + virtual WTF::String contextMenuItemTagTextDirectionMenu(); + virtual WTF::String contextMenuItemTagDefaultDirection(); + virtual WTF::String contextMenuItemTagLeftToRight(); + virtual WTF::String contextMenuItemTagRightToLeft(); + virtual WTF::String contextMenuItemTagInspectElement(); + virtual WTF::String contextMenuItemTagOpenVideoInNewWindow(); + virtual WTF::String contextMenuItemTagOpenAudioInNewWindow(); + virtual WTF::String contextMenuItemTagCopyVideoLinkToClipboard(); + virtual WTF::String contextMenuItemTagCopyAudioLinkToClipboard(); + virtual WTF::String contextMenuItemTagToggleMediaControls(); + virtual WTF::String contextMenuItemTagToggleMediaLoop(); + virtual WTF::String contextMenuItemTagEnterVideoFullscreen(); + virtual WTF::String contextMenuItemTagMediaPlay(); + virtual WTF::String contextMenuItemTagMediaPause(); + virtual WTF::String contextMenuItemTagMediaMute(); +#endif // ENABLE(CONTEXT_MENUS) + virtual WTF::String searchMenuNoRecentSearchesText(); + virtual WTF::String searchMenuRecentSearchesText(); + virtual WTF::String searchMenuClearRecentSearchesText(); + virtual WTF::String AXWebAreaText(); + virtual WTF::String AXLinkText(); + virtual WTF::String AXListMarkerText(); + virtual WTF::String AXImageMapText(); + virtual WTF::String AXHeadingText(); + virtual WTF::String AXDefinitionListTermText(); + virtual WTF::String AXDefinitionListDefinitionText(); + virtual WTF::String AXButtonActionVerb(); + virtual WTF::String AXRadioButtonActionVerb(); + virtual WTF::String AXTextFieldActionVerb(); + virtual WTF::String AXCheckedCheckBoxActionVerb(); + virtual WTF::String AXUncheckedCheckBoxActionVerb(); + virtual WTF::String AXMenuListActionVerb(); + virtual WTF::String AXMenuListPopupActionVerb(); + virtual WTF::String AXLinkActionVerb(); + virtual WTF::String missingPluginText(); + virtual WTF::String crashedPluginText(); + virtual WTF::String multipleFileUploadText(unsigned numberOfFiles); + virtual WTF::String unknownFileSizeText(); + virtual WTF::String uploadFileText(); + virtual WTF::String allFilesText(); + virtual WTF::String imageTitle(const WTF::String& filename, const WebCore::IntSize&); + virtual WTF::String mediaElementLoadingStateText(); + virtual WTF::String mediaElementLiveBroadcastStateText(); + virtual WTF::String localizedMediaControlElementString(const WTF::String&); + virtual WTF::String localizedMediaControlElementHelpText(const WTF::String&); + virtual WTF::String localizedMediaTimeDescription(float); + virtual WTF::String validationMessageValueMissingText(); + virtual WTF::String validationMessageTypeMismatchText(); + virtual WTF::String validationMessagePatternMismatchText(); + virtual WTF::String validationMessageTooLongText(); + virtual WTF::String validationMessageRangeUnderflowText(); + virtual WTF::String validationMessageRangeOverflowText(); + virtual WTF::String validationMessageStepMismatchText(); + + // WebCore::VisitedLinkStrategy + virtual bool isLinkVisited(WebCore::Page*, WebCore::LinkHash); + virtual void addVisitedLink(WebCore::Page*, WebCore::LinkHash); +}; + +#endif // WebPlatformStrategies_h diff --git a/WebKit/win/WebCoreSupport/WebPluginHalterClient.h b/WebKit/win/WebCoreSupport/WebPluginHalterClient.h index da3d28a..9a4ca01 100644 --- a/WebKit/win/WebCoreSupport/WebPluginHalterClient.h +++ b/WebKit/win/WebCoreSupport/WebPluginHalterClient.h @@ -27,10 +27,10 @@ #define WebPluginHalterClient_h #include <WebCore/PluginHalterClient.h> +#include <wtf/Forward.h> namespace WebCore { class Node; - class String; } class WebView; @@ -39,7 +39,7 @@ class WebPluginHalterClient : public WebCore::PluginHalterClient { public: WebPluginHalterClient(WebView* webView); - virtual bool shouldHaltPlugin(WebCore::Node* n, bool isWindowed, const WebCore::String& pluginName) const; + virtual bool shouldHaltPlugin(WebCore::Node* n, bool isWindowed, const WTF::String& pluginName) const; virtual bool enabled() const; private: diff --git a/WebKit/win/WebDataSource.cpp b/WebKit/win/WebDataSource.cpp index 4ec1fd3..0350373 100644 --- a/WebKit/win/WebDataSource.cpp +++ b/WebKit/win/WebDataSource.cpp @@ -39,7 +39,7 @@ #include "WebResource.h" #include "WebURLResponse.h" #include <WebCore/BString.h> -#include <WebCore/DocLoader.h> +#include <WebCore/CachedResourceLoader.h> #include <WebCore/Document.h> #include <WebCore/Frame.h> #include <WebCore/FrameLoader.h> @@ -119,6 +119,16 @@ HRESULT STDMETHODCALLTYPE WebDataSource::mainDocumentError( return S_OK; } +HRESULT STDMETHODCALLTYPE WebDataSource::setDeferMainResourceDataLoad( + /* [in] */ BOOL flag) +{ + if (!m_loader) + return E_FAIL; + + m_loader->setDeferMainResourceDataLoad(flag); + return S_OK; +} + // IUnknown ------------------------------------------------------------------- HRESULT STDMETHODCALLTYPE WebDataSource::QueryInterface(REFIID riid, void** ppvObject) @@ -287,7 +297,7 @@ HRESULT STDMETHODCALLTYPE WebDataSource::subresourceForURL( if (!doc) return E_FAIL; - CachedResource *cachedResource = doc->docLoader()->cachedResource(String(url)); + CachedResource *cachedResource = doc->cachedResourceLoader()->cachedResource(String(url)); if (!cachedResource) return E_FAIL; diff --git a/WebKit/win/WebDataSource.h b/WebKit/win/WebDataSource.h index 70998ae..3baa024 100644 --- a/WebKit/win/WebDataSource.h +++ b/WebKit/win/WebDataSource.h @@ -110,6 +110,9 @@ public: virtual HRESULT STDMETHODCALLTYPE mainDocumentError( /* [retval][out] */ IWebError** error); + virtual HRESULT STDMETHODCALLTYPE setDeferMainResourceDataLoad( + /* [in] */ BOOL flag); + // WebDataSource WebDocumentLoader* documentLoader() const; protected: diff --git a/WebKit/win/WebDatabaseManager.cpp b/WebKit/win/WebDatabaseManager.cpp index 989f33c..bdcb549 100644 --- a/WebKit/win/WebDatabaseManager.cpp +++ b/WebKit/win/WebDatabaseManager.cpp @@ -38,6 +38,7 @@ #include "WebNotificationCenter.h" #include "WebSecurityOrigin.h" +#include <JavaScriptCore/MainThread.h> #include <WebCore/BString.h> #include <WebCore/COMPtr.h> #include <WebCore/DatabaseTracker.h> @@ -327,8 +328,40 @@ HRESULT STDMETHODCALLTYPE WebDatabaseManager::deleteDatabase( return S_OK; } +class DidModifyOriginData : public Noncopyable { +public: + static void dispatchToMainThread(WebDatabaseManager* databaseManager, SecurityOrigin* origin) + { + DidModifyOriginData* context = new DidModifyOriginData(databaseManager, origin->threadsafeCopy()); + callOnMainThread(&DidModifyOriginData::dispatchDidModifyOriginOnMainThread, context); + } + +private: + DidModifyOriginData(WebDatabaseManager* databaseManager, PassRefPtr<SecurityOrigin> origin) + : databaseManager(databaseManager) + , origin(origin) + { + } + + static void dispatchDidModifyOriginOnMainThread(void* context) + { + ASSERT(isMainThread()); + DidModifyOriginData* info = static_cast<DidModifyOriginData*>(context); + info->databaseManager->dispatchDidModifyOrigin(info->origin.get()); + delete info; + } + + WebDatabaseManager* databaseManager; + RefPtr<SecurityOrigin> origin; +}; + void WebDatabaseManager::dispatchDidModifyOrigin(SecurityOrigin* origin) { + if (!isMainThread()) { + DidModifyOriginData::dispatchToMainThread(this, origin); + return; + } + static BSTR databaseDidModifyOriginName = SysAllocString(WebDatabaseDidModifyOriginNotification); IWebNotificationCenter* notifyCenter = WebNotificationCenter::defaultCenterInternal(); @@ -353,6 +386,11 @@ HRESULT STDMETHODCALLTYPE WebDatabaseManager::setQuota( void WebDatabaseManager::dispatchDidModifyDatabase(SecurityOrigin* origin, const String& databaseName) { + if (!isMainThread()) { + DidModifyOriginData::dispatchToMainThread(this, origin); + return; + } + static BSTR databaseDidModifyOriginName = SysAllocString(WebDatabaseDidModifyDatabaseNotification); IWebNotificationCenter* notifyCenter = WebNotificationCenter::defaultCenterInternal(); @@ -370,16 +408,16 @@ void WebDatabaseManager::dispatchDidModifyDatabase(SecurityOrigin* origin, const notifyCenter->postNotificationName(databaseDidModifyOriginName, securityOrigin.get(), userInfoBag.get()); } -void WebKitSetWebDatabasesPathIfNecessary() +void WebKitInitializeWebDatabasesIfNecessary() { - static bool pathSet = false; - if (pathSet) + static bool initialized = false; + if (initialized) return; - WebCore::String databasesDirectory = WebCore::pathByAppendingComponent(WebCore::localUserSpecificStorageDirectory(), "Databases"); - WebCore::DatabaseTracker::tracker().setDatabaseDirectoryPath(databasesDirectory); + WTF::String databasesDirectory = WebCore::pathByAppendingComponent(WebCore::localUserSpecificStorageDirectory(), "Databases"); + WebCore::DatabaseTracker::initializeTracker(databasesDirectory); - pathSet = true; + initialized = true; } #endif diff --git a/WebKit/win/WebDatabaseManager.h b/WebKit/win/WebDatabaseManager.h index c932986..a8ca523 100644 --- a/WebKit/win/WebDatabaseManager.h +++ b/WebKit/win/WebDatabaseManager.h @@ -79,7 +79,7 @@ public: // DatabaseTrackerClient virtual void dispatchDidModifyOrigin(WebCore::SecurityOrigin*); - virtual void dispatchDidModifyDatabase(WebCore::SecurityOrigin*, const WebCore::String& databaseName); + virtual void dispatchDidModifyDatabase(WebCore::SecurityOrigin*, const WTF::String& databaseName); private: WebDatabaseManager(); @@ -88,7 +88,7 @@ private: ULONG m_refCount; }; -void WebKitSetWebDatabasesPathIfNecessary(); +void WebKitInitializeWebDatabasesIfNecessary(); #endif diff --git a/WebKit/win/WebDownload.cpp b/WebKit/win/WebDownload.cpp index 0893a73..fc72232 100644 --- a/WebKit/win/WebDownload.cpp +++ b/WebKit/win/WebDownload.cpp @@ -27,7 +27,6 @@ #include "WebKitDLL.h" #include "WebDownload.h" -#include "CString.h" #include "DefaultDownloadDelegate.h" #include "MarshallingHelpers.h" #include "WebError.h" @@ -37,6 +36,7 @@ #include "WebURLAuthenticationChallenge.h" #include "WebURLCredential.h" #include "WebURLResponse.h" +#include <wtf/text/CString.h> #include <io.h> #include <sys/stat.h> diff --git a/WebKit/win/WebDownload.h b/WebKit/win/WebDownload.h index 71aebfe..bbb645e 100644 --- a/WebKit/win/WebDownload.h +++ b/WebKit/win/WebDownload.h @@ -122,15 +122,15 @@ public: #endif protected: - static CFDataRef extractResumeDataFromBundle(const WebCore::String&); - static HRESULT appendResumeDataToBundle(CFDataRef, const WebCore::String&); - static const WebCore::String& bundleExtension(); + static CFDataRef extractResumeDataFromBundle(const WTF::String&); + static HRESULT appendResumeDataToBundle(CFDataRef, const WTF::String&); + static const WTF::String& bundleExtension(); static UInt32 bundleMagicNumber(); ULONG m_refCount; - WebCore::String m_destination; - WebCore::String m_bundlePath; + WTF::String m_destination; + WTF::String m_bundlePath; #if USE(CFNETWORK) RetainPtr<CFURLDownloadRef> m_download; #endif diff --git a/WebKit/win/WebDownloadCFNet.cpp b/WebKit/win/WebDownloadCFNet.cpp index d1ff23d..a199315 100644 --- a/WebKit/win/WebDownloadCFNet.cpp +++ b/WebKit/win/WebDownloadCFNet.cpp @@ -27,7 +27,6 @@ #include "WebKitDLL.h" #include "WebDownload.h" -#include "CString.h" #include "DefaultDownloadDelegate.h" #include "MarshallingHelpers.h" #include "WebError.h" @@ -39,6 +38,7 @@ #include "WebURLResponse.h" #include <wtf/platform.h> +#include <wtf/text/CString.h> #include <io.h> #include <sys/stat.h> diff --git a/WebKit/win/WebDownloadCurl.cpp b/WebKit/win/WebDownloadCurl.cpp index 608830b..2025922 100644 --- a/WebKit/win/WebDownloadCurl.cpp +++ b/WebKit/win/WebDownloadCurl.cpp @@ -27,7 +27,6 @@ #include "WebKitDLL.h" #include "WebDownload.h" -#include "CString.h" #include "DefaultDownloadDelegate.h" #include "MarshallingHelpers.h" #include "WebError.h" @@ -39,6 +38,7 @@ #include "WebURLResponse.h" #include <wtf/platform.h> +#include <wtf/text/CString.h> #include <io.h> #include <sys/stat.h> diff --git a/WebKit/win/WebElementPropertyBag.cpp b/WebKit/win/WebElementPropertyBag.cpp index e68b92e..e68360c 100644 --- a/WebKit/win/WebElementPropertyBag.cpp +++ b/WebKit/win/WebElementPropertyBag.cpp @@ -159,7 +159,10 @@ HRESULT STDMETHODCALLTYPE WebElementPropertyBag::Read(LPCOLESTR pszPropName, VAR else V_BOOL(pVar) = VARIANT_FALSE; return S_OK; - } else if (isEqual(WebElementSpellingToolTipKey, key)) { + } + if (isEqual(WebElementMediaURLKey, key)) + return convertStringToVariant(pVar, m_result->absoluteMediaURL().string()); + if (isEqual(WebElementSpellingToolTipKey, key)) { TextDirection dir; return convertStringToVariant(pVar, m_result->spellingToolTip(dir)); } else if (isEqual(WebElementTitleKey, key)) { diff --git a/WebKit/win/WebFrame.cpp b/WebKit/win/WebFrame.cpp index b7ad014..60be4d5 100644 --- a/WebKit/win/WebFrame.cpp +++ b/WebKit/win/WebFrame.cpp @@ -42,10 +42,10 @@ #include "WebDownload.h" #include "WebEditorClient.h" #include "WebError.h" +#include "WebFrameNetworkingContext.h" #include "WebFramePolicyListener.h" #include "WebHistory.h" #include "WebHistoryItem.h" -#include "WebIconFetcher.h" #include "WebKit.h" #include "WebKitStatisticsPrivate.h" #include "WebMutableURLRequest.h" @@ -55,7 +55,7 @@ #include "WebView.h" #pragma warning( push, 0 ) #include <WebCore/BString.h> -#include <WebCore/Cache.h> +#include <WebCore/MemoryCache.h> #include <WebCore/Document.h> #include <WebCore/DocumentLoader.h> #include <WebCore/DOMImplementation.h> @@ -83,11 +83,11 @@ #include <WebCore/NotImplemented.h> #include <WebCore/Page.h> #include <WebCore/PlatformKeyboardEvent.h> -#include <WebCore/PluginInfoStore.h> +#include <WebCore/PluginData.h> #include <WebCore/PluginDatabase.h> #include <WebCore/PluginView.h> +#include <WebCore/PrintContext.h> #include <WebCore/ResourceHandle.h> -#include <WebCore/ResourceHandleWin.h> #include <WebCore/ResourceRequest.h> #include <WebCore/RenderView.h> #include <WebCore/RenderTreeAsText.h> @@ -339,9 +339,9 @@ HRESULT STDMETHODCALLTYPE WebFrame::paintDocumentRectToContext( return E_FAIL; // We can't paint with a layout still pending. - view->layoutIfNeededRecursive(); + view->updateLayoutAndStyleIfNeededRecursive(); - HDC dc = (HDC)(ULONG64)deviceContext; + HDC dc = reinterpret_cast<HDC>(static_cast<ULONG64>(deviceContext)); GraphicsContext gc(dc); gc.setShouldIncludeChildWindows(true); gc.save(); @@ -358,6 +358,34 @@ HRESULT STDMETHODCALLTYPE WebFrame::paintDocumentRectToContext( return S_OK; } +HRESULT STDMETHODCALLTYPE WebFrame::paintScrollViewRectToContextAtPoint( + /* [in] */ RECT rect, + /* [in] */ POINT pt, + /* [in] */ OLE_HANDLE deviceContext) +{ + Frame* coreFrame = core(this); + if (!coreFrame) + return E_FAIL; + + FrameView* view = coreFrame->view(); + if (!view) + return E_FAIL; + + // We can't paint with a layout still pending. + view->updateLayoutAndStyleIfNeededRecursive(); + + HDC dc = reinterpret_cast<HDC>(static_cast<ULONG64>(deviceContext)); + GraphicsContext gc(dc); + gc.setShouldIncludeChildWindows(true); + gc.save(); + IntRect dirtyRect(rect); + dirtyRect.move(-pt.x, -pt.y); + view->paint(&gc, dirtyRect); + gc.restore(); + + return S_OK; +} + // IUnknown ------------------------------------------------------------------- HRESULT STDMETHODCALLTYPE WebFrame::QueryInterface(REFIID riid, void** ppvObject) @@ -410,7 +438,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::name( if (!coreFrame) return E_FAIL; - *frameName = BString(coreFrame->tree()->name()).release(); + *frameName = BString(coreFrame->tree()->uniqueName()).release(); return S_OK; } @@ -477,9 +505,10 @@ HRESULT STDMETHODCALLTYPE WebFrame::currentForm( *currentForm = 0; - if (Frame* coreFrame = core(this)) - if (HTMLFormElement* formElement = coreFrame->currentForm()) + if (Frame* coreFrame = core(this)) { + if (HTMLFormElement* formElement = coreFrame->selection()->currentForm()) *currentForm = DOMElement::createInstance(formElement); + } return *currentForm ? S_OK : E_FAIL; } @@ -571,6 +600,17 @@ HRESULT STDMETHODCALLTYPE WebFrame::loadData( return S_OK; } +HRESULT WebFrame::loadPlainTextString( + /* [in] */ BSTR string, + /* [in] */ BSTR url) +{ + RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(reinterpret_cast<char*>(string), sizeof(UChar) * SysStringLen(string)); + BString plainTextMimeType(TEXT("text/plain"), 10); + BString utf16Encoding(TEXT("utf-16"), 6); + loadData(sharedBuffer.release(), plainTextMimeType, utf16Encoding, url, 0); + return S_OK; +} + void WebFrame::loadHTMLString(BSTR string, BSTR baseURL, BSTR unreachableURL) { RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(reinterpret_cast<char*>(string), sizeof(UChar) * SysStringLen(string)); @@ -816,8 +856,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::childFrames( // IWebFramePrivate ------------------------------------------------------ -HRESULT STDMETHODCALLTYPE WebFrame::renderTreeAsExternalRepresentation( - /* [retval][out] */ BSTR *result) +HRESULT WebFrame::renderTreeAsExternalRepresentation(BOOL forPrinting, BSTR *result) { if (!result) return E_POINTER; @@ -826,7 +865,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::renderTreeAsExternalRepresentation( if (!coreFrame) return E_FAIL; - *result = BString(externalRepresentation(coreFrame)).release(); + *result = BString(externalRepresentation(coreFrame, forPrinting ? RenderAsTextPrintingMode : RenderAsTextBehaviorNormal)).release(); return S_OK; } @@ -849,6 +888,44 @@ HRESULT STDMETHODCALLTYPE WebFrame::counterValueForElementById( return S_OK; } +HRESULT STDMETHODCALLTYPE WebFrame::pageNumberForElementById( + /* [in] */ BSTR id, + /* [in] */ float pageWidthInPixels, + /* [in] */ float pageHeightInPixels, + /* [retval][out] */ int* result) +{ + if (!result) + return E_POINTER; + + Frame* coreFrame = core(this); + if (!coreFrame) + return E_FAIL; + + String coreId = String(id, SysStringLen(id)); + + Element* element = coreFrame->document()->getElementById(coreId); + if (!element) + return E_FAIL; + *result = PrintContext::pageNumberForElement(element, FloatSize(pageWidthInPixels, pageHeightInPixels)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebFrame::numberOfPages( + /* [in] */ float pageWidthInPixels, + /* [in] */ float pageHeightInPixels, + /* [retval][out] */ int* result) +{ + if (!result) + return E_POINTER; + + Frame* coreFrame = core(this); + if (!coreFrame) + return E_FAIL; + + *result = PrintContext::numberOfPages(coreFrame, FloatSize(pageWidthInPixels, pageHeightInPixels)); + return S_OK; +} + HRESULT STDMETHODCALLTYPE WebFrame::scrollOffset( /* [retval][out] */ SIZE* offset) { @@ -897,7 +974,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::firstLayoutDone( if (!coreFrame) return E_FAIL; - *result = coreFrame->loader()->firstLayoutDone(); + *result = coreFrame->loader()->stateMachine()->firstLayoutDone(); return S_OK; } @@ -937,26 +1014,20 @@ HRESULT STDMETHODCALLTYPE WebFrame::pendingFrameUnloadEventCount( return S_OK; } -HRESULT STDMETHODCALLTYPE WebFrame::fetchApplicationIcon( - /* [in] */ IWebIconFetcherDelegate *delegate, - /* [retval][out] */ IWebIconFetcher **result) +HRESULT STDMETHODCALLTYPE WebFrame::unused2() { - if (!result) - return E_POINTER; - - *result = 0; - - if (!delegate) - return E_FAIL; + return E_NOTIMPL; +} +HRESULT STDMETHODCALLTYPE WebFrame::hasSpellingMarker( + /* [in] */ UINT from, + /* [in] */ UINT length, + /* [retval][out] */ BOOL* result) +{ Frame* coreFrame = core(this); if (!coreFrame) return E_FAIL; - - *result = WebIconFetcher::fetchApplicationIcon(coreFrame, delegate); - if (!*result) - return E_FAIL; - + *result = coreFrame->editor()->selectionStartHasSpellingMarkerFor(from, length); return S_OK; } @@ -978,7 +1049,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::selectedString( if (!coreFrame) return E_FAIL; - String text = coreFrame->displayStringModifiedByEncoding(coreFrame->selectedText()); + String text = coreFrame->displayStringModifiedByEncoding(coreFrame->editor()->selectedText()); *result = BString(text).release(); return S_OK; @@ -1031,13 +1102,6 @@ void WebFrame::invalidate() document->recalcStyle(Node::Force); } -void WebFrame::setTextSizeMultiplier(float multiplier) -{ - Frame* coreFrame = core(this); - ASSERT(coreFrame); - coreFrame->setZoomFactor(multiplier, true); -} - HRESULT WebFrame::inViewSourceMode(BOOL* flag) { if (!flag) { @@ -1072,7 +1136,7 @@ HRESULT WebFrame::elementWithName(BSTR name, IDOMElement* form, IDOMElement** el HTMLFormElement *formElement = formElementFromDOMElement(form); if (formElement) { - Vector<HTMLFormControlElement*>& elements = formElement->formElements; + const Vector<HTMLFormControlElement*>& elements = formElement->associatedElements(); AtomicString targetName((UChar*)name, SysStringLen(name)); for (unsigned int i = 0; i < elements.size(); i++) { HTMLFormControlElement *elt = elements[i]; @@ -1113,7 +1177,7 @@ HRESULT WebFrame::elementDoesAutoComplete(IDOMElement *element, BOOL *result) if (!inputElement) *result = false; else - *result = (inputElement->inputType() == HTMLInputElement::TEXT && inputElement->autoComplete()); + *result = inputElement->isTextField() && !inputElement->isPasswordField() && inputElement->autoComplete(); return S_OK; } @@ -1192,6 +1256,24 @@ HRESULT WebFrame::pauseSVGAnimation(BSTR elementId, IDOMNode* node, double secon return S_OK; } +HRESULT WebFrame::visibleContentRect(RECT* rect) +{ + if (!rect) + return E_POINTER; + SetRectEmpty(rect); + + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + FrameView* view = frame->view(); + if (!view) + return E_FAIL; + + *rect = view->visibleContentRect(false); + return S_OK; +} + HRESULT WebFrame::numberOfActiveAnimations(UINT* number) { if (!number) @@ -1211,6 +1293,26 @@ HRESULT WebFrame::numberOfActiveAnimations(UINT* number) return S_OK; } +HRESULT WebFrame::suspendAnimations() +{ + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + frame->animation()->suspendAnimations(); + return S_OK; +} + +HRESULT WebFrame::resumeAnimations() +{ + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + frame->animation()->resumeAnimations(); + return S_OK; +} + HRESULT WebFrame::isDisplayingStandaloneImage(BOOL* result) { if (!result) @@ -1238,7 +1340,7 @@ HRESULT WebFrame::allowsFollowingLink(BSTR url, BOOL* result) if (!frame) return E_FAIL; - *result = SecurityOrigin::canLoad(MarshallingHelpers::BSTRToKURL(url), String(), frame->document()); + *result = frame->document()->securityOrigin()->canDisplay(MarshallingHelpers::BSTRToKURL(url)); return S_OK; } @@ -1252,7 +1354,7 @@ HRESULT WebFrame::controlsInForm(IDOMElement* form, IDOMElement** controls, int* return E_FAIL; int inCount = *cControls; - int count = (int) formElement->formElements.size(); + int count = (int) formElement->associatedElements().size(); *cControls = count; if (!controls) return S_OK; @@ -1260,7 +1362,7 @@ HRESULT WebFrame::controlsInForm(IDOMElement* form, IDOMElement** controls, int* return E_FAIL; *cControls = 0; - Vector<HTMLFormControlElement*>& elements = formElement->formElements; + const Vector<HTMLFormControlElement*>& elements = formElement->associatedElements(); for (int i = 0; i < count; i++) { if (elements.at(i)->isEnumeratable()) { // Skip option elements, other duds controls[*cControls] = DOMElement::createInstance(elements.at(i)); @@ -1272,9 +1374,8 @@ HRESULT WebFrame::controlsInForm(IDOMElement* form, IDOMElement** controls, int* HRESULT WebFrame::elementIsPassword(IDOMElement *element, bool *result) { - HTMLInputElement *inputElement = inputElementFromDOMElement(element); - *result = inputElement != 0 - && inputElement->inputType() == HTMLInputElement::PASSWORD; + HTMLInputElement* inputElement = inputElementFromDOMElement(element); + *result = inputElement && inputElement->isPasswordField(); return S_OK; } @@ -1378,6 +1479,21 @@ HRESULT WebFrame::canProvideDocumentSource(bool* result) return hr; } +HRESULT STDMETHODCALLTYPE WebFrame::layerTreeAsText(BSTR* result) +{ + if (!result) + return E_POINTER; + *result = 0; + + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + String text = frame->layerTreeAsText(); + *result = BString(text).release(); + return S_OK; +} + void WebFrame::frameLoaderDestroyed() { // The FrameLoader going away is equivalent to the Frame going away, @@ -1472,11 +1588,22 @@ void WebFrame::didChangeTitle(DocumentLoader*) notImplemented(); } +void WebFrame::didChangeIcons(DocumentLoader*) +{ + notImplemented(); +} + bool WebFrame::canHandleRequest(const ResourceRequest& request) const { return WebView::canHandleRequest(request); } +bool WebFrame::canShowMIMETypeAsHTML(const String& /*MIMEType*/) const +{ + notImplemented(); + return true; +} + bool WebFrame::canShowMIMEType(const String& /*MIMEType*/) const { notImplemented(); @@ -1583,7 +1710,13 @@ ResourceError WebFrame::pluginWillHandleLoadError(const ResourceResponse& respon bool WebFrame::shouldFallBack(const ResourceError& error) { - return error.errorCode() != WebURLErrorCancelled; + if (error.errorCode() == WebURLErrorCancelled && error.domain() == String(WebURLErrorDomain)) + return false; + + if (error.errorCode() == WebKitErrorPlugInWillHandleLoad && error.domain() == String(WebKitErrorDomain)) + return false; + + return true; } COMPtr<WebFramePolicyListener> WebFrame::setUpPolicyListener(WebCore::FramePolicyFunction function) @@ -1833,7 +1966,7 @@ void WebFrame::setPrinting(bool printing, float minPageWidth, float maxPageWidth { Frame* coreFrame = core(this); ASSERT(coreFrame); - coreFrame->setPrinting(printing, minPageWidth, maxPageWidth, adjustViewSize); + coreFrame->setPrinting(printing, FloatSize(minPageWidth, 0), maxPageWidth / minPageWidth, adjustViewSize ? Frame::AdjustViewSize : Frame::DoNotAdjustViewSize); } HRESULT STDMETHODCALLTYPE WebFrame::setInPrintingMode( @@ -2044,12 +2177,10 @@ static HDC hdcFromContext(PlatformGraphicsContext* pctx) void WebFrame::drawHeader(PlatformGraphicsContext* pctx, IWebUIDelegate* ui, const IntRect& pageRect, float headerHeight) { HDC hdc = hdcFromContext(pctx); - const IntRect& marginRect = printerMarginRect(hdc); - const float scale = scaleFactor(hdc, marginRect, pageRect); - int x = static_cast<int>(scale * pageRect.x()); + int x = pageRect.x(); int y = 0; - RECT headerRect = {x, y, x + static_cast<int>(scale * pageRect.width()), y + static_cast<int>(scale * headerHeight)}; + RECT headerRect = {x, y, x + pageRect.width(), y + static_cast<int>(headerHeight)}; ui->drawHeaderInRect(d->webView, &headerRect, static_cast<OLE_HANDLE>(reinterpret_cast<LONG64>(hdc))); } @@ -2057,16 +2188,29 @@ void WebFrame::drawHeader(PlatformGraphicsContext* pctx, IWebUIDelegate* ui, con void WebFrame::drawFooter(PlatformGraphicsContext* pctx, IWebUIDelegate* ui, const IntRect& pageRect, UINT page, UINT pageCount, float headerHeight, float footerHeight) { HDC hdc = hdcFromContext(pctx); - const IntRect& marginRect = printerMarginRect(hdc); - - const float scale = scaleFactor(hdc, marginRect, pageRect); - int x = static_cast<int>(scale * pageRect.x()); - int y = static_cast<int>(scale * max(static_cast<int>(headerHeight) + pageRect.height(), m_pageHeight-static_cast<int>(footerHeight))); - RECT footerRect = {x, y, x + static_cast<int>(scale * pageRect.width()), y + static_cast<int>(scale * footerHeight)}; + + int x = pageRect.x(); + int y = max(static_cast<int>(headerHeight) + pageRect.height(), m_pageHeight -static_cast<int>(footerHeight)); + RECT footerRect = {x, y, x + pageRect.width(), y + static_cast<int>(footerHeight)}; ui->drawFooterInRect(d->webView, &footerRect, static_cast<OLE_HANDLE>(reinterpret_cast<LONG64>(hdc)), page+1, pageCount); } +static XFORM buildXFORMFromCairo(HDC targetDC, cairo_t* previewContext) +{ + XFORM scaled; + GetWorldTransform(targetDC, &scaled); + + cairo_matrix_t ctm; + cairo_get_matrix(previewContext, &ctm); + + // Scale to the preview screen bounds + scaled.eM11 = ctm.xx; + scaled.eM22 = ctm.yy; + + return scaled; +} + void WebFrame::spoolPage(PlatformGraphicsContext* pctx, GraphicsContext* spoolCtx, HDC printDC, IWebUIDelegate* ui, float headerHeight, float footerHeight, UINT page, UINT pageCount) { Frame* coreFrame = core(this); @@ -2074,48 +2218,83 @@ void WebFrame::spoolPage(PlatformGraphicsContext* pctx, GraphicsContext* spoolCt const IntRect& pageRect = m_pageRects[page]; const IntRect& marginRect = printerMarginRect(printDC); - cairo_save(pctx); + // In preview, the printDC is a placeholder, so just always use the HDC backing the graphics context. + HDC hdc = hdcFromContext(pctx); + spoolCtx->save(); - float scale = scaleFactor(printDC, marginRect, pageRect); - cairo_scale(pctx, scale, scale); + + XFORM original, scaled; + GetWorldTransform(hdc, &original); + + bool preview = (hdc != printDC); + if (preview) { + // If this is a preview, the Windows HDC was set to a non-scaled state so that Cairo will + // draw correctly. We need to retain the correct preview scale here for use when the Cairo + // drawing completes so that we can scale our GDI-based header/footer calls. This is a + // workaround for a bug in Cairo (see https://bugs.freedesktop.org/show_bug.cgi?id=28161) + scaled = buildXFORMFromCairo(hdc, pctx); + } - IntRect cairoMarginRect (marginRect); - cairoMarginRect.scale (1 / scale); + float scale = scaleFactor(printDC, marginRect, pageRect); + + IntRect cairoMarginRect(marginRect); + cairoMarginRect.scale(1 / scale); - // Modify Cairo and GDI World Transform to account for margin in the - // subsequent WebKit-controlled 'paintContents' drawing operations: - spoolCtx->translate(cairoMarginRect.x(), cairoMarginRect.y() + headerHeight); + // We cannot scale the display HDC because the print surface also scales fonts, + // resulting in invalid printing (and print preview) + cairo_scale(pctx, scale, scale); + cairo_translate(pctx, cairoMarginRect.x(), cairoMarginRect.y() + headerHeight); // Modify Cairo (only) to account for page position. cairo_translate(pctx, -pageRect.x(), -pageRect.y()); coreFrame->view()->paintContents(spoolCtx, pageRect); - cairo_translate(pctx, pageRect.x(), pageRect.y()); - - XFORM originalWorld; - ::GetWorldTransform(printDC, &originalWorld); - - // Position GDI world transform to account for margin in GDI-only - // header/footer calls - XFORM newWorld = originalWorld; - newWorld.eDx = marginRect.x(); - newWorld.eDy = marginRect.y(); - - ::SetWorldTransform(printDC, &newWorld); - + + if (preview) { + // If this is a preview, the Windows HDC was set to a non-scaled state so that Cairo would + // draw correctly. We need to rescale the HDC to the correct preview scale so our GDI-based + // header/footer calls will draw properly. This is a workaround for a bug in Cairo. + // (see https://bugs.freedesktop.org/show_bug.cgi?id=28161) + SetWorldTransform(hdc, &scaled); + } + + XFORM xform = TransformationMatrix().translate(marginRect.x(), marginRect.y()).scale(scale); + ModifyWorldTransform(hdc, &xform, MWT_LEFTMULTIPLY); + if (headerHeight) drawHeader(pctx, ui, pageRect, headerHeight); if (footerHeight) drawFooter(pctx, ui, pageRect, page, pageCount, headerHeight, footerHeight); - ::SetWorldTransform(printDC, &originalWorld); + SetWorldTransform(hdc, &original); cairo_show_page(pctx); ASSERT(!cairo_status(pctx)); spoolCtx->restore(); - cairo_restore(pctx); } + +static void setCairoTransformToPreviewHDC(cairo_t* previewCtx, HDC previewDC) +{ + XFORM passedCTM; + GetWorldTransform(previewDC, &passedCTM); + + // Reset HDC WorldTransform to unscaled state. Scaling must be + // done in Cairo to avoid drawing errors. + XFORM unscaledCTM = passedCTM; + unscaledCTM.eM11 = 1.0; + unscaledCTM.eM22 = 1.0; + + SetWorldTransform(previewDC, &unscaledCTM); + + // Make the Cairo transform match the information passed to WebKit + // in the HDC's WorldTransform. + cairo_matrix_t ctm = { passedCTM.eM11, passedCTM.eM12, passedCTM.eM21, + passedCTM.eM22, passedCTM.eDx, passedCTM.eDy }; + + cairo_set_matrix(previewCtx, &ctm); +} + #endif HRESULT STDMETHODCALLTYPE WebFrame::spoolPages( @@ -2134,13 +2313,28 @@ HRESULT STDMETHODCALLTYPE WebFrame::spoolPages( ASSERT_NOT_REACHED(); return E_POINTER; } + + HDC targetDC = (ctx) ? (HDC)ctx : printDC; - cairo_surface_t* printSurface = cairo_win32_printing_surface_create(printDC); - ctx = cairo_create(printSurface); - if (!ctx) { + cairo_surface_t* printSurface = 0; + if (ctx) + printSurface = cairo_win32_surface_create(targetDC); // in-memory + else + printSurface = cairo_win32_printing_surface_create(targetDC); // metafile + + PlatformGraphicsContext* pctx = (PlatformGraphicsContext*)cairo_create(printSurface); + if (!pctx) { cairo_surface_destroy(printSurface); return E_FAIL; } + + if (ctx) { + // If this is a preview, the Windows HDC was sent with scaling information. + // Retrieve it and reset it so that it draws properly. This is a workaround + // for a bug in Cairo (see https://bugs.freedesktop.org/show_bug.cgi?id=28161) + setCairoTransformToPreviewHDC(pctx, targetDC); + } + cairo_surface_set_fallback_resolution(printSurface, 72.0, 72.0); #endif @@ -2154,7 +2348,9 @@ HRESULT STDMETHODCALLTYPE WebFrame::spoolPages( return E_FAIL; UINT pageCount = (UINT) m_pageRects.size(); +#if PLATFORM(CG) PlatformGraphicsContext* pctx = (PlatformGraphicsContext*)ctx; +#endif if (!pageCount || startPage > pageCount) { ASSERT_NOT_REACHED(); @@ -2353,7 +2549,7 @@ HRESULT WebFrame::stringByEvaluatingJavaScriptInScriptWorld(IWebScriptWorld* iWo return S_OK; JSLock lock(SilenceAssertionsOnly); - String resultString = String(result.toString(anyWorldGlobalObject->globalExec())); + String resultString = ustringToString(result.toString(anyWorldGlobalObject->globalExec())); *evaluationResult = BString(resultString).release(); return S_OK; @@ -2367,7 +2563,7 @@ void WebFrame::unmarkAllMisspellings() if (!doc) return; - doc->removeMarkers(DocumentMarker::Spelling); + doc->markers()->removeMarkers(DocumentMarker::Spelling); } } @@ -2379,7 +2575,7 @@ void WebFrame::unmarkAllBadGrammar() if (!doc) return; - doc->removeMarkers(DocumentMarker::Grammar); + doc->markers()->removeMarkers(DocumentMarker::Grammar); } } @@ -2388,6 +2584,11 @@ WebView* WebFrame::webView() const return d->webView; } +void WebFrame::setWebView(WebView* webView) +{ + d->webView = webView; +} + COMPtr<IAccessible> WebFrame::accessible() const { Frame* coreFrame = core(this); @@ -2416,3 +2617,8 @@ void WebFrame::updateBackground() coreFrame->view()->updateBackgroundRecursively(backgroundColor, webView()->transparent()); } + +PassRefPtr<FrameNetworkingContext> WebFrame::createNetworkingContext() +{ + return WebFrameNetworkingContext::create(core(this), userAgent(url())); +} diff --git a/WebKit/win/WebFrame.h b/WebKit/win/WebFrame.h index 1a92751..bdc28ab 100644 --- a/WebKit/win/WebFrame.h +++ b/WebKit/win/WebFrame.h @@ -155,13 +155,24 @@ public: virtual /* [local] */ JSGlobalContextRef STDMETHODCALLTYPE globalContext(); // IWebFramePrivate - virtual HRESULT STDMETHODCALLTYPE renderTreeAsExternalRepresentation( - /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE unused1(BSTR*) { return E_NOTIMPL; } + virtual HRESULT STDMETHODCALLTYPE renderTreeAsExternalRepresentation(BOOL forPrinting, BSTR *result); virtual HRESULT STDMETHODCALLTYPE counterValueForElementById( /* [in] */ BSTR id, /* [retval][out] */ BSTR *result); + virtual HRESULT STDMETHODCALLTYPE pageNumberForElementById( + /* [in] */ BSTR id, + /* [in] */ float pageWidthInPixels, + /* [in] */ float pageHeightInPixels, + /* [retval][out] */ int* result); + + virtual HRESULT STDMETHODCALLTYPE numberOfPages( + /* [in] */ float pageWidthInPixels, + /* [in] */ float pageHeightInPixels, + /* [retval][out] */ int* result); + virtual HRESULT STDMETHODCALLTYPE scrollOffset( /* [retval][out] */ SIZE* offset); @@ -176,9 +187,7 @@ public: virtual HRESULT STDMETHODCALLTYPE pendingFrameUnloadEventCount( /* [retval][out] */ UINT* result); - virtual HRESULT STDMETHODCALLTYPE fetchApplicationIcon( - /* [in] */ IWebIconFetcherDelegate *delegate, - /* [retval][out] */ IWebIconFetcher **result); + virtual HRESULT STDMETHODCALLTYPE unused2(); virtual HRESULT STDMETHODCALLTYPE setInPrintingMode( /* [in] */ BOOL value, @@ -234,6 +243,11 @@ public: /* [in] */ RECT rect, /* [in] */ OLE_HANDLE deviceContext); + virtual HRESULT STDMETHODCALLTYPE paintScrollViewRectToContextAtPoint( + /* [in] */ RECT rect, + /* [in] */ POINT pt, + /* [in] */ OLE_HANDLE deviceContext); + virtual HRESULT STDMETHODCALLTYPE elementDoesAutoComplete( /* [in] */ IDOMElement* element, /* [retval][out] */ BOOL* result); @@ -242,6 +256,9 @@ public: virtual HRESULT STDMETHODCALLTYPE pauseTransition(BSTR propertyName, IDOMNode*, double secondsFromNow, BOOL* transitionWasRunning); virtual HRESULT STDMETHODCALLTYPE pauseSVGAnimation(BSTR elementId, IDOMNode*, double secondsFromNow, BOOL* animationWasRunning); virtual HRESULT STDMETHODCALLTYPE numberOfActiveAnimations(UINT*); + virtual HRESULT STDMETHODCALLTYPE suspendAnimations(); + virtual HRESULT STDMETHODCALLTYPE resumeAnimations(); + virtual HRESULT STDMETHODCALLTYPE loadPlainTextString(BSTR string, BSTR url); virtual HRESULT STDMETHODCALLTYPE isDisplayingStandaloneImage(BOOL*); @@ -252,6 +269,15 @@ public: virtual HRESULT STDMETHODCALLTYPE stringByEvaluatingJavaScriptInScriptWorld(IWebScriptWorld*, JSObjectRef globalObjectRef, BSTR script, BSTR* evaluationResult); virtual JSGlobalContextRef STDMETHODCALLTYPE globalContextForScriptWorld(IWebScriptWorld*); + virtual HRESULT STDMETHODCALLTYPE visibleContentRect(RECT*); + + virtual HRESULT STDMETHODCALLTYPE layerTreeAsText(BSTR*); + + virtual HRESULT STDMETHODCALLTYPE hasSpellingMarker( + /* [in] */ UINT from, + /* [in] */ UINT length, + /* [retval][out] */ BOOL *result); + // IWebDocumentText virtual HRESULT STDMETHODCALLTYPE supportsTextEncoding( /* [retval][out] */ BOOL* result); @@ -271,15 +297,18 @@ public: virtual void detachedFromParent2(); virtual void detachedFromParent3(); virtual void cancelPolicyCheck(); + virtual void dispatchWillSendSubmitEvent(WebCore::HTMLFormElement*) { } virtual void dispatchWillSubmitForm(WebCore::FramePolicyFunction, PassRefPtr<WebCore::FormState>); virtual void revertToProvisionalState(WebCore::DocumentLoader*); virtual void setMainFrameDocumentReady(bool); virtual void willChangeTitle(WebCore::DocumentLoader*); virtual void didChangeTitle(WebCore::DocumentLoader*); + virtual void didChangeIcons(WebCore::DocumentLoader*); virtual bool canHandleRequest(const WebCore::ResourceRequest&) const; - virtual bool canShowMIMEType(const WebCore::String& MIMEType) const; - virtual bool representationExistsForURLScheme(const WebCore::String& URLScheme) const; - virtual WebCore::String generatedMIMETypeForURLScheme(const WebCore::String& URLScheme) const; + virtual bool canShowMIMEType(const WTF::String& MIMEType) const; + virtual bool canShowMIMETypeAsHTML(const WTF::String& MIMEType) const; + virtual bool representationExistsForURLScheme(const WTF::String& URLScheme) const; + virtual WTF::String generatedMIMETypeForURLScheme(const WTF::String& URLScheme) const; virtual void frameLoadCompleted(); virtual void restoreViewState(); virtual void provisionalLoadStarted(); @@ -287,7 +316,7 @@ public: virtual void addHistoryItemForFragmentScroll(); virtual void didFinishLoad(); virtual void prepareForDataSourceReplacement(); - virtual WebCore::String userAgent(const WebCore::KURL&); + virtual WTF::String userAgent(const WebCore::KURL&); virtual void saveViewStateToItem(WebCore::HistoryItem *); virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&); virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&); @@ -297,8 +326,8 @@ public: virtual WebCore::ResourceError fileDoesNotExistError(const WebCore::ResourceResponse&); virtual WebCore::ResourceError pluginWillHandleLoadError(const WebCore::ResourceResponse&); virtual bool shouldFallBack(const WebCore::ResourceError&); - virtual void dispatchDecidePolicyForMIMEType(WebCore::FramePolicyFunction, const WebCore::String& MIMEType, const WebCore::ResourceRequest&); - virtual void dispatchDecidePolicyForNewWindowAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, PassRefPtr<WebCore::FormState>, const WebCore::String& frameName); + virtual void dispatchDecidePolicyForMIMEType(WebCore::FramePolicyFunction, const WTF::String& MIMEType, const WebCore::ResourceRequest&); + virtual void dispatchDecidePolicyForNewWindowAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, PassRefPtr<WebCore::FormState>, const WTF::String& frameName); virtual void dispatchDecidePolicyForNavigationAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, PassRefPtr<WebCore::FormState>); virtual void dispatchUnableToImplementPolicy(const WebCore::ResourceError&); virtual void download(WebCore::ResourceHandle*, const WebCore::ResourceRequest&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&); @@ -308,10 +337,10 @@ public: virtual void dispatchDidFailLoad(const WebCore::ResourceError&); virtual void startDownload(const WebCore::ResourceRequest&); - virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const Vector<WebCore::String>& paramNames, const Vector<WebCore::String>& paramValues); + virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const Vector<WTF::String>& paramNames, const Vector<WTF::String>& paramValues); - virtual WebCore::ObjectContentType objectContentType(const WebCore::KURL& url, const WebCore::String& mimeType); - virtual WebCore::String overrideMediaType() const; + virtual WebCore::ObjectContentType objectContentType(const WebCore::KURL& url, const WTF::String& mimeType); + virtual WTF::String overrideMediaType() const; virtual void dispatchDidClearWindowObjectInWorld(WebCore::DOMWrapperWorld*); virtual void documentElementAvailable(); @@ -319,6 +348,8 @@ public: virtual void registerForIconNotification(bool listen); + virtual PassRefPtr<WebCore::FrameNetworkingContext> createNetworkingContext(); + // WebFrame PassRefPtr<WebCore::Frame> init(IWebView*, WebCore::Page*, WebCore::HTMLFrameOwnerElement*); WebCore::Frame* impl(); @@ -329,7 +360,6 @@ public: void updateBackground(); // WebFrame (matching WebCoreFrameBridge) - void setTextSizeMultiplier(float multiplier); HRESULT inViewSourceMode(BOOL *flag); HRESULT setInViewSourceMode(BOOL flag); HRESULT elementWithName(BSTR name, IDOMElement* form, IDOMElement** element); @@ -346,6 +376,7 @@ public: WebCore::KURL url() const; WebView* webView() const; + void setWebView(WebView*); COMPtr<IAccessible> accessible() const; diff --git a/WebKit/win/WebHistory.h b/WebKit/win/WebHistory.h index 9d8acb3..17cd3a7 100644 --- a/WebKit/win/WebHistory.h +++ b/WebKit/win/WebHistory.h @@ -30,13 +30,13 @@ #include "COMPtr.h" #include <CoreFoundation/CoreFoundation.h> +#include <wtf/Forward.h> #include <wtf/OwnArrayPtr.h> #include <wtf/RetainPtr.h> namespace WebCore { class KURL; class PageGroup; - class String; } //----------------------------------------------------------------------------- @@ -121,10 +121,10 @@ public: // WebHistory static WebHistory* sharedHistory(); - void visitedURL(const WebCore::KURL&, const WebCore::String& title, const WebCore::String& httpMethod, bool wasFailure, bool increaseVisitCount); + void visitedURL(const WebCore::KURL&, const WTF::String& title, const WTF::String& httpMethod, bool wasFailure, bool increaseVisitCount); void addVisitedLinksToPageGroup(WebCore::PageGroup&); - COMPtr<IWebHistoryItem> itemForURLString(const WebCore::String&) const; + COMPtr<IWebHistoryItem> itemForURLString(const WTF::String&) const; typedef int64_t DateKey; typedef HashMap<DateKey, RetainPtr<CFMutableArrayRef> > DateToEntriesMap; diff --git a/WebKit/win/WebHistoryItem.cpp b/WebKit/win/WebHistoryItem.cpp index aa839d6..098eb86 100644 --- a/WebKit/win/WebHistoryItem.cpp +++ b/WebKit/win/WebHistoryItem.cpp @@ -34,13 +34,13 @@ #pragma warning(push, 0) #include <WebCore/BString.h> -#include <WebCore/CString.h> #include <WebCore/HistoryItem.h> #include <WebCore/KURL.h> #pragma warning(pop) #include <wtf/PassOwnPtr.h> #include <wtf/RetainPtr.h> +#include <wtf/text/CString.h> using namespace WebCore; diff --git a/WebKit/win/WebHistoryItem.h b/WebKit/win/WebHistoryItem.h index 40ec16d..7e42039 100644 --- a/WebKit/win/WebHistoryItem.h +++ b/WebKit/win/WebHistoryItem.h @@ -113,7 +113,7 @@ protected: ULONG m_refCount; RefPtr<WebCore::HistoryItem> m_historyItem; - WebCore::String m_alternateTitle; + WTF::String m_alternateTitle; }; #endif diff --git a/WebKit/win/WebIconDatabase.h b/WebKit/win/WebIconDatabase.h index ac42d4a..c6351a7 100644 --- a/WebKit/win/WebIconDatabase.h +++ b/WebKit/win/WebIconDatabase.h @@ -104,7 +104,7 @@ public: // IconDatabaseClient virtual void dispatchDidRemoveAllIcons(); - virtual void dispatchDidAddIconForPageURL(const WebCore::String&); + virtual void dispatchDidAddIconForPageURL(const WTF::String&); static BSTR iconDatabaseDidAddIconNotification(); static BSTR iconDatabaseDidRemoveAllIconsNotification(); diff --git a/WebKit/win/WebIconFetcher.cpp b/WebKit/win/WebIconFetcher.cpp deleted file mode 100644 index fbc46af..0000000 --- a/WebKit/win/WebIconFetcher.cpp +++ /dev/null @@ -1,129 +0,0 @@ -/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "WebKitDLL.h"
-#include "WebIconFetcher.h"
-
-#include "MemoryStream.h"
-#include <WebCore/COMPtr.h>
-#include <WebCore/SharedBuffer.h>
-#include <wtf/PassRefPtr.h>
-
-using namespace WebCore;
-
-class WebIconFetcherClient : public IconFetcherClient {
-public:
- WebIconFetcherClient(IWebIconFetcherDelegate* delegate)
- : m_fetcher(0)
- , m_delegate(delegate)
- {
- }
-
- virtual void finishedFetchingIcon(PassRefPtr<SharedBuffer> iconData)
- {
- COMPtr<MemoryStream> memoryStream;
- if (iconData)
- memoryStream = MemoryStream::createInstance(iconData);
-
- m_delegate->finishedLoadingIcon(m_fetcher, memoryStream.get());
-
- delete this;
- }
-
- void setFetcher(WebIconFetcher *fetcher) { m_fetcher = fetcher; }
-
-private:
- WebIconFetcher* m_fetcher;
- COMPtr<IWebIconFetcherDelegate> m_delegate;
-};
-
-// WebIconFetcher -------------------------------------------------------------------
-
-WebIconFetcher* WebIconFetcher::fetchApplicationIcon(Frame* frame, IWebIconFetcherDelegate* delegate)
-{
- WebIconFetcherClient* client = new WebIconFetcherClient(delegate);
-
- RefPtr<IconFetcher> fetcher = IconFetcher::create(frame, client);
-
- if (!fetcher)
- return 0;
-
- COMPtr<WebIconFetcher> iconFetcher = new WebIconFetcher(fetcher.release());
- client->setFetcher(iconFetcher.get());
-
- return iconFetcher.releaseRef();
-}
-
-WebIconFetcher::WebIconFetcher(PassRefPtr<IconFetcher> iconFetcher)
- : m_refCount(0)
- , m_iconFetcher(iconFetcher)
-{
- gClassCount++;
-}
-
-WebIconFetcher::~WebIconFetcher()
-{
- gClassCount--;
-}
-
-// IUnknown -------------------------------------------------------------------
-
-HRESULT STDMETHODCALLTYPE WebIconFetcher::QueryInterface(REFIID riid, void** ppvObject)
-{
- *ppvObject = 0;
- if (IsEqualGUID(riid, IID_IUnknown))
- *ppvObject = static_cast<IUnknown*>(this);
- else if (IsEqualGUID(riid, IID_IWebIconFetcher))
- *ppvObject = static_cast<IWebIconFetcher*>(this);
- else
- return E_NOINTERFACE;
-
- AddRef();
- return S_OK;
-}
-
-ULONG STDMETHODCALLTYPE WebIconFetcher::AddRef()
-{
- return ++m_refCount;
-}
-
-ULONG STDMETHODCALLTYPE WebIconFetcher::Release()
-{
- ULONG newRef = --m_refCount;
- if (!newRef)
- delete this;
-
- return newRef;
-}
-
-// IUnknown -------------------------------------------------------------------
-
-HRESULT STDMETHODCALLTYPE WebIconFetcher::cancel()
-{
- m_iconFetcher->cancel();
-
- return S_OK;
-}
diff --git a/WebKit/win/WebInspector.cpp b/WebKit/win/WebInspector.cpp index e4ac32b..0337711 100644 --- a/WebKit/win/WebInspector.cpp +++ b/WebKit/win/WebInspector.cpp @@ -131,19 +131,11 @@ HRESULT STDMETHODCALLTYPE WebInspector::close() HRESULT STDMETHODCALLTYPE WebInspector::attach() { - if (m_webView) - if (Page* page = m_webView->page()) - page->inspectorController()->attachWindow(); - return S_OK; } HRESULT STDMETHODCALLTYPE WebInspector::detach() { - if (m_webView) - if (Page* page = m_webView->page()) - page->inspectorController()->detachWindow(); - return S_OK; } diff --git a/WebKit/win/WebKit.vcproj/Interfaces.vcproj b/WebKit/win/WebKit.vcproj/Interfaces.vcproj index c6a0add..00a7250 100644 --- a/WebKit/win/WebKit.vcproj/Interfaces.vcproj +++ b/WebKit/win/WebKit.vcproj/Interfaces.vcproj @@ -17,14 +17,12 @@ <Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="$(WebKitOutputDir)\include\WebKit"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\InterfacesCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

mkdir 2>NUL "$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -37,21 +35,9 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\obj\WebKit\DerivedSources";..\Interfaces;"$(IntDir)\include""
- TypeLibraryName="$(WebKitOutputDir)\lib\WebKit.tlb"
- OutputDirectory="$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
/>
<Tool
Name="VCCLCompilerTool"
- Optimization="0"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -79,20 +65,174 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c

perl FixMIDLHeaders.pl "$(WebkitOutputDir)/include/webkit/"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
Name="Release|Win32"
- OutputDirectory="$(WebKitOutputDir)\include\WebKit"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\release.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\InterfacesCommon.vsprops"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release_LTCG|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\InterfacesCommon.vsprops"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug_All|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\InterfacesCommon.vsprops"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release_Cairo_CFLite|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\WinCairo.vsprops;.\InterfacesCommon.vsprops"
CharacterSet="1"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

mkdir 2>NUL "$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -105,18 +245,9 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\obj\WebKit\DerivedSources";..\Interfaces;"$(IntDir)\include""
- TypeLibraryName="$(WebKitOutputDir)\lib\WebKit.tlb"
- OutputDirectory="$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
/>
<Tool
Name="VCCLCompilerTool"
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
- RuntimeLibrary="2"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -144,7 +275,58 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c

perl FixMIDLHeaders.pl "$(WebkitOutputDir)/include/webkit/"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug_Cairo_CFLite|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_wincairo.vsprops;.\InterfacesCommon.vsprops"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
@@ -170,6 +352,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMCore.idl"
@@ -190,6 +404,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMCSS.idl"
@@ -210,6 +456,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMEvents.idl"
@@ -230,6 +508,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMExtensions.idl"
@@ -250,6 +560,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMHTML.idl"
@@ -270,6 +612,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMPrivate.idl"
@@ -290,6 +664,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMRange.idl"
@@ -310,6 +716,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\DOMWindow.idl"
@@ -330,6 +768,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IGEN_DOMObject.idl"
@@ -350,6 +820,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebArchive.idl"
@@ -370,6 +872,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebBackForwardList.idl"
@@ -390,6 +924,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebBackForwardListPrivate.idl"
@@ -410,6 +976,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebCache.idl"
@@ -430,6 +1028,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebCookieManager.idl"
@@ -450,6 +1080,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebCoreStatistics.idl"
@@ -470,6 +1132,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebDatabaseManager.idl"
@@ -490,6 +1184,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebDataSource.idl"
@@ -510,6 +1236,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebDesktopNotificationsDelegate.idl"
@@ -522,6 +1280,22 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebDocument.idl"
@@ -542,6 +1316,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebDownload.idl"
@@ -562,6 +1368,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebEditingDelegate.idl"
@@ -582,6 +1420,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebEmbeddedView.idl"
@@ -602,6 +1472,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebError.idl"
@@ -622,6 +1524,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebErrorPrivate.idl"
@@ -642,6 +1576,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFormDelegate.idl"
@@ -662,6 +1628,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFrame.idl"
@@ -682,6 +1680,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFrameLoadDelegate.idl"
@@ -702,6 +1732,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFrameLoadDelegatePrivate.idl"
@@ -722,6 +1784,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFrameLoadDelegatePrivate2.idl"
@@ -742,6 +1836,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFramePrivate.idl"
@@ -762,6 +1888,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebFrameView.idl"
@@ -782,6 +1940,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebGeolocationPolicyListener.idl"
@@ -802,6 +1992,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebGeolocationPosition.idl"
@@ -822,6 +2044,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebGeolocationProvider.idl"
@@ -842,6 +2096,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHistory.idl"
@@ -862,6 +2148,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHistoryDelegate.idl"
@@ -882,6 +2200,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHistoryItem.idl"
@@ -902,6 +2252,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHistoryItemPrivate.idl"
@@ -922,6 +2304,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHistoryPrivate.idl"
@@ -942,6 +2356,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHTMLRepresentation.idl"
@@ -962,6 +2408,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebHTTPURLResponse.idl"
@@ -982,6 +2460,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebIconDatabase.idl"
@@ -1002,12 +2512,8 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
- </File>
- <File
- RelativePath="..\Interfaces\IWebIconFetcher.idl"
- >
<FileConfiguration
- Name="Debug|Win32"
+ Name="Release_LTCG|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1015,7 +2521,23 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release|Win32"
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1042,6 +2564,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebInspectorPrivate.idl"
@@ -1062,6 +2616,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebJavaScriptCollector.idl"
@@ -1082,6 +2668,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebKitStatistics.idl"
@@ -1102,6 +2720,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebMutableURLRequest.idl"
@@ -1122,6 +2772,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebMutableURLRequestPrivate.idl"
@@ -1142,6 +2824,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebNavigationData.idl"
@@ -1162,6 +2876,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebNotification.idl"
@@ -1182,6 +2928,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebNotificationCenter.idl"
@@ -1202,6 +2980,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebNotificationObserver.idl"
@@ -1222,6 +3032,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebPluginHalterDelegate.idl"
@@ -1242,6 +3084,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebPolicyDelegate.idl"
@@ -1262,6 +3136,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebPolicyDelegatePrivate.idl"
@@ -1282,6 +3188,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebPreferences.idl"
@@ -1302,6 +3240,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebPreferencesPrivate.idl"
@@ -1322,6 +3292,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebResource.idl"
@@ -1342,6 +3344,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebResourceLoadDelegate.idl"
@@ -1362,6 +3396,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebResourceLoadDelegatePrivate.idl"
@@ -1382,6 +3448,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebScriptObject.idl"
@@ -1402,6 +3500,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebScriptWorld.idl"
@@ -1422,6 +3552,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebScrollBarDelegatePrivate.idl"
@@ -1442,6 +3604,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebScrollBarPrivate.idl"
@@ -1462,6 +3656,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebSecurityOrigin.idl"
@@ -1482,6 +3708,142 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\Interfaces\IWebSerializedJSValue.idl"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\Interfaces\IWebSerializedJSValuePrivate.idl"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebTextRenderer.idl"
@@ -1502,6 +3864,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebUIDelegate.idl"
@@ -1522,6 +3916,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebUIDelegatePrivate.idl"
@@ -1542,6 +3968,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebUndoManager.idl"
@@ -1562,6 +4020,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebUndoTarget.idl"
@@ -1582,6 +4072,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebURLAuthenticationChallenge.idl"
@@ -1602,6 +4124,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebURLRequest.idl"
@@ -1622,6 +4176,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebURLResponse.idl"
@@ -1642,6 +4228,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebURLResponsePrivate.idl"
@@ -1662,6 +4280,90 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\Interfaces\IWebUserContentURLPattern.idl"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebView.idl"
@@ -1682,6 +4384,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebViewPrivate.idl"
@@ -1702,6 +4436,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\IWebWorkersPrivate.idl"
@@ -1722,6 +4488,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\JavaScriptCoreAPITypes.idl"
@@ -1742,6 +4540,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\WebKit.idl"
@@ -1762,6 +4592,38 @@ GenerateTypeLibrary="true"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ GenerateTypeLibrary="true"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ GenerateTypeLibrary="true"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ GenerateTypeLibrary="true"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ GenerateTypeLibrary="true"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\Interfaces\WebScrollbarTypes.idl"
@@ -1782,6 +4644,38 @@ Name="VCMIDLTool"
/>
</FileConfiguration>
+ <FileConfiguration
+ Name="Release_LTCG|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ />
+ </FileConfiguration>
</File>
</Files>
<Globals>
diff --git a/WebKit/win/WebKit.vcproj/InterfacesCommon.vsprops b/WebKit/win/WebKit.vcproj/InterfacesCommon.vsprops new file mode 100644 index 0000000..3fccc84 --- /dev/null +++ b/WebKit/win/WebKit.vcproj/InterfacesCommon.vsprops @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="InterfacesCommon"
+ OutputDirectory="$(WebKitOutputDir)\include\WebKit"
+ >
+ <Tool
+ Name="VCMIDLTool"
+ AdditionalIncludeDirectories=""$(WebKitOutputDir)\obj\WebKit\DerivedSources";..\Interfaces;"$(IntDir)\include""
+ TypeLibraryName="$(WebKitOutputDir)\lib\WebKit.tlb"
+ OutputDirectory="$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c

perl FixMIDLHeaders.pl "$(WebkitOutputDir)/include/webkit/"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
+ />
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

mkdir 2>NUL "$(WebKitOutputDir)\obj\WebKit\$(ProjectName)"
bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
+ />
+</VisualStudioPropertySheet>
diff --git a/WebKit/win/WebKit.vcproj/WebKit.def b/WebKit/win/WebKit.vcproj/WebKit.def deleted file mode 100644 index 8d091ec..0000000 --- a/WebKit/win/WebKit.vcproj/WebKit.def +++ /dev/null @@ -1,136 +0,0 @@ -LIBRARY "WebKit" - -EXPORTS - DllGetClassObject PRIVATE - DllCanUnloadNow PRIVATE - DllRegisterServer PRIVATE - DllUnregisterServer PRIVATE - RunAsLocalServer PRIVATE - LocalServerDidDie PRIVATE - setUseOpenSourceWebKit - shutDownWebKit - progIDForClass - WebLocalizedStringUTF8 - WebLocalizedLPCTSTRUTF8 - WebDrawText - FontMetrics - TextFloatWidth - CenterTruncateStringToWidth - RightTruncateStringToWidth - WebKitSetShouldUseFontSmoothing - WebKitShouldUseFontSmoothing - WebKitCreateInstance - - ; These functions are deprecated - WebLocalizedString - WebLocalizedLPCTSTR - SetWebLocalizedStringMainBundle - - ; Deprecated re-exports from JavaScriptCore - JSCheckScriptSyntax - JSClassCreate - JSClassRelease - JSClassRetain - JSContextGetGlobalObject - JSContextGetGroup - JSContextGroupCreate - JSContextGroupRelease - JSContextGroupRetain - JSEvaluateScript - JSGarbageCollect - JSGlobalContextCreate - JSGlobalContextCreateInGroup - JSGlobalContextRelease - JSGlobalContextRetain - JSObjectCallAsConstructor - JSObjectCallAsFunction - JSObjectCopyPropertyNames - JSObjectDeleteProperty - JSObjectGetPrivate - JSObjectGetProperty - JSObjectGetPropertyAtIndex - JSObjectGetPrototype - JSObjectHasProperty - JSObjectIsConstructor - JSObjectIsFunction - JSObjectMake - JSObjectMakeArray - JSObjectMakeConstructor - JSObjectMakeDate - JSObjectMakeError - JSObjectMakeFunction - JSObjectMakeFunctionWithCallback - JSObjectMakeRegExp - JSObjectSetPrivate - JSObjectSetProperty - JSObjectSetPropertyAtIndex - JSObjectSetPrototype - JSPropertyNameAccumulatorAddName - JSPropertyNameArrayGetCount - JSPropertyNameArrayGetNameAtIndex - JSPropertyNameArrayRelease - JSPropertyNameArrayRetain - JSStringCopyBSTR - JSStringCopyCFString - JSStringCreateWithBSTR - JSStringCreateWithCFString - JSStringCreateWithCharacters - JSStringCreateWithUTF8CString - JSStringGetCharactersPtr - JSStringGetLength - JSStringGetMaximumUTF8CStringSize - JSStringGetUTF8CString - JSStringIsEqual - JSStringIsEqualToUTF8CString - JSStringRelease - JSStringRetain - JSValueGetType - JSValueIsBoolean - JSValueIsEqual - JSValueIsInstanceOfConstructor - JSValueIsNull - JSValueIsNumber - JSValueIsObject - JSValueIsObjectOfClass - JSValueIsStrictEqual - JSValueIsString - JSValueIsUndefined - JSValueMakeBoolean - JSValueMakeNull - JSValueMakeNumber - JSValueMakeString - JSValueMakeUndefined - JSValueProtect - JSValueToBoolean - JSValueToNumber - JSValueToObject - JSValueToStringCopy - JSValueUnprotect - ?fastMalloc@WTF@@YAPAXI@Z - ?fastZeroedMalloc@WTF@@YAPAXI@Z - ?fastFree@WTF@@YAXPAX@Z - ?fastCalloc@WTF@@YAPAXII@Z - ??0Mutex@WTF@@QAE@XZ - ??0ThreadCondition@WTF@@QAE@XZ - ??1Mutex@WTF@@QAE@XZ - ??1ThreadCondition@WTF@@QAE@XZ - ?broadcast@ThreadCondition@WTF@@QAEXXZ - ?callOnMainThread@WTF@@YAXP6AXPAX@Z0@Z - ?createThread@WTF@@YAIP6APAXPAX@Z0PBD@Z - ?currentThread@WTF@@YAIXZ - ?detachThread@WTF@@YAXI@Z - ?initializeMainThread@WTF@@YAXXZ - ?initializeThreading@WTF@@YAXXZ - ?isMainThread@WTF@@YA_NXZ - ?lock@Mutex@WTF@@QAEXXZ - ?lockAtomicallyInitializedStaticMutex@WTF@@YAXXZ - ?signal@ThreadCondition@WTF@@QAEXXZ - ?timedWait@ThreadCondition@WTF@@QAE_NAAVMutex@2@N@Z - ?tlsKeyCount@WTF@@YAAAJXZ - ?tlsKeys@WTF@@YAPAKXZ - ?tryLock@Mutex@WTF@@QAE_NXZ - ?unlock@Mutex@WTF@@QAEXXZ - ?unlockAtomicallyInitializedStaticMutex@WTF@@YAXXZ - ?wait@ThreadCondition@WTF@@QAEXAAVMutex@2@@Z - ?waitForThreadCompletion@WTF@@YAHIPAPAX@Z - ?createThread@WTF@@YAIP6APAXPAX@Z0@Z diff --git a/WebKit/win/WebKit.vcproj/WebKit.make b/WebKit/win/WebKit.vcproj/WebKit.make index 6c2ce85..0d5fbc5 100755 --- a/WebKit/win/WebKit.vcproj/WebKit.make +++ b/WebKit/win/WebKit.vcproj/WebKit.make @@ -1,17 +1,18 @@ -!IF !defined(BUILDSTYLE) -BUILDSTYLE=Release -!ELSEIF "$(BUILDSTYLE)"=="DEBUG" +!IF "$(BUILDSTYLE)"=="DEBUG" BUILDSTYLE=Debug_All +!ELSE +BUILDSTYLE=Release_LTCG !ENDIF install: set WebKitLibrariesDir=$(SRCROOT)\AppleInternal set WebKitOutputDir=$(OBJROOT) + set WebKitVSPropsRedirectionDir=$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\ set PRODUCTION=1 devenv "WebKit.submit.sln" /rebuild $(BUILDSTYLE) -xcopy "$(OBJROOT)\bin\*.exe" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y xcopy "$(OBJROOT)\bin\*.pdb" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y - xcopy "$(OBJROOT)\bin\*.dll" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y + -xcopy "$(OBJROOT)\bin\*.dll" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y xcopy "$(OBJROOT)\include\*" "$(DSTROOT)\AppleInternal\include\" /e/v/i/h/y xcopy "$(OBJROOT)\lib\*" "$(DSTROOT)\AppleInternal\lib\" /e/v/i/h/y xcopy "$(OBJROOT)\bin\WebKit.resources\*" "$(DSTROOT)\AppleInternal\bin\WebKit.resources" /e/v/i/h/y diff --git a/WebKit/win/WebKit.vcproj/WebKit.sln b/WebKit/win/WebKit.vcproj/WebKit.sln index 3b641fd..f2f8f2f 100644 --- a/WebKit/win/WebKit.vcproj/WebKit.sln +++ b/WebKit/win/WebKit.vcproj/WebKit.sln @@ -1,54 +1,86 @@ 
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKit", "WebKit.vcproj", "{0662A8A9-82A3-4638-97D8-EC425D8D87C9}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JavaScriptCore", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\JavaScriptCore\JavaScriptCore.vcproj", "{011D10F1-B656-4A1B-A0C3-3842F02122C5}"
ProjectSection(ProjectDependencies) = postProject
- {B8437A41-67BC-4769-9452-45203827F821} = {B8437A41-67BC-4769-9452-45203827F821}
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6} = {AA8A5A85-592B-4357-BC60-E0E91E026AF6}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitGUID", "WebKitGUID.vcproj", "{B8437A41-67BC-4769-9452-45203827F821}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebCore", "..\..\..\WebCore\WebCore.vcproj\WebCore.vcproj", "{1C16337B-ACF3-4D03-AA90-851C5B5EADA6}"
ProjectSection(ProjectDependencies) = postProject
- {91762BE2-87EF-4F5A-A480-48B90EB3F406} = {91762BE2-87EF-4F5A-A480-48B90EB3F406}
+ {E498CA9D-3BD2-4D52-8E37-C8DC76526325} = {E498CA9D-3BD2-4D52-8E37-C8DC76526325}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Interfaces", "Interfaces.vcproj", "{91762BE2-87EF-4F5A-A480-48B90EB3F406}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WTF", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\WTF\WTF.vcproj", "{AA8A5A85-592B-4357-BC60-E0E91E026AF6}"
ProjectSection(ProjectDependencies) = postProject
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6} = {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A} = {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebCore", "..\..\..\WebCore\WebCore.vcproj\WebCore.vcproj", "{1C16337B-ACF3-4D03-AA90-851C5B5EADA6}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsc", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\jsc\jsc.vcproj", "{C59E5129-B453-49B7-A52B-1E104715F76E}"
ProjectSection(ProjectDependencies) = postProject
- {E498CA9D-3BD2-4D52-8E37-C8DC76526325} = {E498CA9D-3BD2-4D52-8E37-C8DC76526325}
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2} = {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DumpRenderTree", "..\..\..\WebKitTools\DumpRenderTree\win\DumpRenderTree.vcproj", "{6567DFD4-D6DE-4CD5-825D-17E353D160E1}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "JavaScriptCore Folder", "JavaScriptCore Folder", "{557FA164-0E39-4DEC-B66C-8795C8E52399}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JavaScriptCoreGenerated", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\JavaScriptCore\JavaScriptCoreGenerated.vcproj", "{4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebCore Folder", "WebCore Folder", "{63FB6F8A-C601-43E3-BD16-A00A465C2CB6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebCoreGenerated", "..\..\..\WebCore\WebCore.vcproj\WebCoreGenerated.vcproj", "{0A324352-B3B6-496C-9E5B-4C7E923E628B}"
ProjectSection(ProjectDependencies) = postProject
- {59CC0547-70AC-499C-9B19-EC01C6F61137} = {59CC0547-70AC-499C-9B19-EC01C6F61137}
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5} = {011D10F1-B656-4A1B-A0C3-3842F02122C5}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestNetscapePlugin", "..\..\..\WebKitTools\DumpRenderTree\win\TestNetscapePlugin\TestNetscapePlugin.vcproj", "{C0737398-3565-439E-A2B8-AB2BE4D5430C}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QTMovieWin", "..\..\..\WebCore\WebCore.vcproj\QTMovieWin.vcproj", "{E498CA9D-3BD2-4D52-8E37-C8DC76526325}"
ProjectSection(ProjectDependencies) = postProject
- {114FCA11-216B-4C8C-957E-30A75AE80443} = {114FCA11-216B-4C8C-957E-30A75AE80443}
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B} = {0A324352-B3B6-496C-9E5B-4C7E923E628B}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JavaScriptCore", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\JavaScriptCore\JavaScriptCore.vcproj", "{011D10F1-B656-4A1B-A0C3-3842F02122C5}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testapi", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\testapi\testapi.vcproj", "{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}"
ProjectSection(ProjectDependencies) = postProject
- {AA8A5A85-592B-4357-BC60-E0E91E026AF6} = {AA8A5A85-592B-4357-BC60-E0E91E026AF6}
+ {DA31DA52-6675-48D4-89E0-333A7144397C} = {DA31DA52-6675-48D4-89E0-333A7144397C}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsc", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\jsc\jsc.vcproj", "{C59E5129-B453-49B7-A52B-1E104715F76E}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKit", "..\..\..\WebKit2\win\WebKit2.vcproj", "{2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}"
ProjectSection(ProjectDependencies) = postProject
- {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2} = {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB} = {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WTF", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\WTF\WTF.vcproj", "{AA8A5A85-592B-4357-BC60-E0E91E026AF6}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebKit2 Folder", "WebKit2 Folder", "{9AB9C96C-9039-4FA9-8F83-BBFC8F8B2182}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKit2Generated", "..\..\..\WebKit2\win\WebKit2Generated.vcproj", "{2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}"
ProjectSection(ProjectDependencies) = postProject
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A} = {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9} = {0662A8A9-82A3-4638-97D8-EC425D8D87C9}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FindSafari", "..\..\..\WebKitTools\FindSafari\FindSafari.vcproj", "{DA31DA52-6675-48D4-89E0-333A7144397C}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKit2WebProcess", "..\..\..\WebKit2\win\WebKit2WebProcess.vcproj", "{AAE88FEF-509E-4D49-870B-7357922C276F}"
ProjectSection(ProjectDependencies) = postProject
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9} = {0662A8A9-82A3-4638-97D8-EC425D8D87C9}
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD} = {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebKitCOM Folder", "WebKitCOM Folder", "{1D359ACC-BE10-45D7-938B-BC7E4B7AA6CA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Interfaces", "Interfaces.vcproj", "{91762BE2-87EF-4F5A-A480-48B90EB3F406}"
+ ProjectSection(ProjectDependencies) = postProject
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6} = {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitLib", "WebKit.vcproj", "{0662A8A9-82A3-4638-97D8-EC425D8D87C9}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B8437A41-67BC-4769-9452-45203827F821} = {B8437A41-67BC-4769-9452-45203827F821}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitGUID", "WebKitGUID.vcproj", "{B8437A41-67BC-4769-9452-45203827F821}"
+ ProjectSection(ProjectDependencies) = postProject
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406} = {91762BE2-87EF-4F5A-A480-48B90EB3F406}
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebKitTools", "WebKitTools", "{62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DumpRenderTree", "..\..\..\WebKitTools\DumpRenderTree\win\DumpRenderTree.vcproj", "{6567DFD4-D6DE-4CD5-825D-17E353D160E1}"
+ ProjectSection(ProjectDependencies) = postProject
+ {59CC0547-70AC-499C-9B19-EC01C6F61137} = {59CC0547-70AC-499C-9B19-EC01C6F61137}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageDiff", "..\..\..\WebKitTools\DumpRenderTree\win\ImageDiff.vcproj", "{59CC0547-70AC-499C-9B19-EC01C6F61137}"
@@ -56,16 +88,29 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImageDiff", "..\..\..\WebKi {C0737398-3565-439E-A2B8-AB2BE4D5430C} = {C0737398-3565-439E-A2B8-AB2BE4D5430C}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JavaScriptCoreGenerated", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\JavaScriptCore\JavaScriptCoreGenerated.vcproj", "{4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FindSafari", "..\..\..\WebKitTools\FindSafari\FindSafari.vcproj", "{DA31DA52-6675-48D4-89E0-333A7144397C}"
+ ProjectSection(ProjectDependencies) = postProject
+ {AAE88FEF-509E-4D49-870B-7357922C276F} = {AAE88FEF-509E-4D49-870B-7357922C276F}
+ EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebCoreGenerated", "..\..\..\WebCore\WebCore.vcproj\WebCoreGenerated.vcproj", "{0A324352-B3B6-496C-9E5B-4C7E923E628B}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "record-memory-win", "..\..\..\WebKitTools\record-memory-win\record-memory-win.vcproj", "{44B9C152-1870-4035-B94D-7B3285AA0C12}"
ProjectSection(ProjectDependencies) = postProject
- {011D10F1-B656-4A1B-A0C3-3842F02122C5} = {011D10F1-B656-4A1B-A0C3-3842F02122C5}
+ {D09806DB-E58B-4646-8C9B-61101906C1E2} = {D09806DB-E58B-4646-8C9B-61101906C1E2}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QTMovieWin", "..\..\..\WebCore\WebCore.vcproj\QTMovieWin.vcproj", "{E498CA9D-3BD2-4D52-8E37-C8DC76526325}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestNetscapePlugin", "..\..\..\WebKitTools\DumpRenderTree\TestNetscapePlugIn\win\TestNetscapePlugin.vcproj", "{C0737398-3565-439E-A2B8-AB2BE4D5430C}"
ProjectSection(ProjectDependencies) = postProject
- {0A324352-B3B6-496C-9E5B-4C7E923E628B} = {0A324352-B3B6-496C-9E5B-4C7E923E628B}
+ {114FCA11-216B-4C8C-957E-30A75AE80443} = {114FCA11-216B-4C8C-957E-30A75AE80443}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitAPITest", "..\..\..\WebKitTools\WebKitAPITest\WebKitAPITest.vcproj", "{626089A3-25D3-4883-A96C-B8C66E036397}"
+ ProjectSection(ProjectDependencies) = postProject
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {6567DFD4-D6DE-4CD5-825D-17E353D160E1}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitLauncherWin", "..\..\..\WebKitTools\WebKitLauncherWin\WebKitLauncherWin.vcproj", "{D09806DB-E58B-4646-8C9B-61101906C1E2}"
+ ProjectSection(ProjectDependencies) = postProject
+ {626089A3-25D3-4883-A96C-B8C66E036397} = {626089A3-25D3-4883-A96C-B8C66E036397}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinLauncher", "..\..\..\WebKitTools\WinLauncher\WinLauncher.vcproj", "{114FCA11-216B-4C8C-957E-30A75AE80443}"
@@ -73,170 +118,298 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinLauncher", "..\..\..\Web {C59E5129-B453-49B7-A52B-1E104715F76E} = {C59E5129-B453-49B7-A52B-1E104715F76E}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testapi", "..\..\..\JavaScriptCore\JavaScriptCore.vcproj\testapi\testapi.vcproj", "{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InjectedBundle", "..\..\..\WebKitTools\WebKitTestRunner\win\InjectedBundle.vcproj", "{CBC3391C-F060-4BF5-A66E-81404168816B}"
ProjectSection(ProjectDependencies) = postProject
- {DA31DA52-6675-48D4-89E0-333A7144397C} = {DA31DA52-6675-48D4-89E0-333A7144397C}
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD} = {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}
EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "record-memory-win", "..\..\..\WebKitTools\record-memory-win\record-memory-win.vcproj", "{44B9C152-1870-4035-B94D-7B3285AA0C12}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InjectedBundleGenerated", "..\..\..\WebKitTools\WebKitTestRunner\win\InjectedBundleGenerated.vcproj", "{4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}"
+ ProjectSection(ProjectDependencies) = postProject
+ {44B9C152-1870-4035-B94D-7B3285AA0C12} = {44B9C152-1870-4035-B94D-7B3285AA0C12}
+ EndProjectSection
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitAPITest", "..\..\..\WebKitTools\WebKitAPITest\WebKitAPITest.vcproj", "{626089A3-25D3-4883-A96C-B8C66E036397}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitTestRunner", "..\..\..\WebKitTools\WebKitTestRunner\win\WebKitTestRunner.vcproj", "{3B99669B-1817-443B-BCBE-835580146668}"
ProjectSection(ProjectDependencies) = postProject
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {6567DFD4-D6DE-4CD5-825D-17E353D160E1}
+ {CBC3391C-F060-4BF5-A66E-81404168816B} = {CBC3391C-F060-4BF5-A66E-81404168816B}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MiniBrowser", "..\..\..\WebKitTools\MiniBrowser\MiniBrowser.vcproj", "{1480CF5F-4160-47B5-A0E6-96AEC8258FB5}"
+ ProjectSection(ProjectDependencies) = postProject
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28} = {3E48AB23-D249-488F-A1C4-43CDF52FBD28}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestWebKitAPI", "..\..\..\WebKitTools\TestWebKitAPI\win\TestWebKitAPI.vcproj", "{3E48AB23-D249-488F-A1C4-43CDF52FBD28}"
+ ProjectSection(ProjectDependencies) = postProject
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86} = {45C45411-7F0E-404D-919A-4EE9BB60BE86}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestWebKitAPIGenerated", "..\..\..\WebKitTools\TestWebKitAPI\win\TestWebKitAPIGenerated.vcproj", "{45C45411-7F0E-404D-919A-4EE9BB60BE86}"
+ ProjectSection(ProjectDependencies) = postProject
+ {3B99669B-1817-443B-BCBE-835580146668} = {3B99669B-1817-443B-BCBE-835580146668}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug_Cairo|Win32 = Debug_Cairo|Win32
+ Debug_Cairo_CFLite|Win32 = Debug_Cairo_CFLite|Win32
Debug|Win32 = Debug|Win32
- Release_Cairo|Win32 = Release_Cairo|Win32
+ Release_Cairo_CFLite|Win32 = Release_Cairo_CFLite|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Cairo|Win32.ActiveCfg = Debug_Cairo|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Cairo|Win32.Build.0 = Debug_Cairo|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.ActiveCfg = Debug|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.Build.0 = Debug|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_Cairo|Win32.ActiveCfg = Release_Cairo|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_Cairo|Win32.Build.0 = Release_Cairo|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.ActiveCfg = Release|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.Build.0 = Release|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug_Cairo|Win32.Build.0 = Debug|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.ActiveCfg = Debug|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.Build.0 = Debug|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Release_Cairo|Win32.Build.0 = Release|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.ActiveCfg = Release|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.Build.0 = Release|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Cairo|Win32.Build.0 = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.ActiveCfg = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.Build.0 = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_Cairo|Win32.Build.0 = Release|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.ActiveCfg = Release|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.Build.0 = Release|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug_Cairo|Win32.ActiveCfg = Debug_Cairo|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug_Cairo|Win32.Build.0 = Debug_Cairo|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug|Win32.ActiveCfg = Debug|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug|Win32.Build.0 = Debug|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release_Cairo|Win32.ActiveCfg = Release_Cairo|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release_Cairo|Win32.Build.0 = Release_Cairo|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release|Win32.ActiveCfg = Release|Win32
- {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release|Win32.Build.0 = Release|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug_Cairo|Win32.ActiveCfg = Debug_Cairo|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug_Cairo|Win32.Build.0 = Debug_Cairo|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug|Win32.ActiveCfg = Debug|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug|Win32.Build.0 = Debug|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release_Cairo|Win32.ActiveCfg = Release_Cairo|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release_Cairo|Win32.Build.0 = Release_Cairo|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release|Win32.ActiveCfg = Release|Win32
- {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release|Win32.Build.0 = Release|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug_Cairo|Win32.ActiveCfg = Debug_Cairo|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug_Cairo|Win32.Build.0 = Debug_Cairo|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug|Win32.ActiveCfg = Debug|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug|Win32.Build.0 = Debug|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release_Cairo|Win32.Build.0 = Release|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release|Win32.ActiveCfg = Release|Win32
- {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release|Win32.Build.0 = Release|Win32
- {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32
- {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
{011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug|Win32.ActiveCfg = Debug|Win32
{011D10F1-B656-4A1B-A0C3-3842F02122C5}.Debug|Win32.Build.0 = Debug|Win32
- {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release_Cairo|Win32.ActiveCfg = Release_CFLite|Win32
- {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release_Cairo|Win32.Build.0 = Release_CFLite|Win32
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
{011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release|Win32.ActiveCfg = Release|Win32
{011D10F1-B656-4A1B-A0C3-3842F02122C5}.Release|Win32.Build.0 = Release|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug|Win32.ActiveCfg = Debug|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug|Win32.Build.0 = Debug|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Release_Cairo|Win32.Build.0 = Release|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Release|Win32.ActiveCfg = Release|Win32
- {C59E5129-B453-49B7-A52B-1E104715F76E}.Release|Win32.Build.0 = Release|Win32
- {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32
- {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug_Cairo|Win32.Build.0 = Debug|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Debug|Win32.Build.0 = Debug|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release|Win32.ActiveCfg = Release|Win32
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6}.Release|Win32.Build.0 = Release|Win32
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
{AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug|Win32.ActiveCfg = Debug|Win32
{AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Debug|Win32.Build.0 = Debug|Win32
- {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release_Cairo|Win32.Build.0 = Release|Win32
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
{AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release|Win32.ActiveCfg = Release|Win32
{AA8A5A85-592B-4357-BC60-E0E91E026AF6}.Release|Win32.Build.0 = Release|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug_Cairo|Win32.ActiveCfg = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug_Cairo|Win32.Build.0 = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug|Win32.ActiveCfg = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug|Win32.Build.0 = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Release_Cairo|Win32.ActiveCfg = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Release_Cairo|Win32.Build.0 = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Release|Win32.ActiveCfg = all|Win32
- {DA31DA52-6675-48D4-89E0-333A7144397C}.Release|Win32.Build.0 = all|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug_Cairo|Win32.Build.0 = Debug|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug|Win32.ActiveCfg = Debug|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug|Win32.Build.0 = Debug|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release_Cairo|Win32.Build.0 = Release|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.ActiveCfg = Release|Win32
- {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.Build.0 = Release|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug_Cairo|Win32.ActiveCfg = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug_Cairo|Win32.Build.0 = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug|Win32.ActiveCfg = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug|Win32.Build.0 = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release_Cairo|Win32.ActiveCfg = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release_Cairo|Win32.Build.0 = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release|Win32.ActiveCfg = all|Win32
- {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release|Win32.Build.0 = all|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug_Cairo|Win32.ActiveCfg = cairo|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug_Cairo|Win32.Build.0 = cairo|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug|Win32.ActiveCfg = all|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug|Win32.Build.0 = all|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release_Cairo|Win32.ActiveCfg = cairo|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release_Cairo|Win32.Build.0 = cairo|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release|Win32.ActiveCfg = all|Win32
- {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release|Win32.Build.0 = all|Win32
- {E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Debug|Win32.Build.0 = Debug|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Release|Win32.ActiveCfg = Release|Win32
+ {C59E5129-B453-49B7-A52B-1E104715F76E}.Release|Win32.Build.0 = Release|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Debug|Win32.Build.0 = Debug|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release|Win32.ActiveCfg = Release|Win32
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A}.Release|Win32.Build.0 = Release|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Debug|Win32.Build.0 = Debug|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release|Win32.ActiveCfg = Release|Win32
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B}.Release|Win32.Build.0 = Release|Win32
+ {E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
{E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Debug|Win32.ActiveCfg = Debug|Win32
{E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Debug|Win32.Build.0 = Debug|Win32
- {E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Release_Cairo|Win32.ActiveCfg = Release|Win32
+ {E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
{E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Release|Win32.ActiveCfg = Release|Win32
{E498CA9D-3BD2-4D52-8E37-C8DC76526325}.Release|Win32.Build.0 = Release|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug_Cairo|Win32.ActiveCfg = Debug_Cairo|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug_Cairo|Win32.Build.0 = Debug_Cairo|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug|Win32.ActiveCfg = Debug|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug|Win32.Build.0 = Debug|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Release_Cairo|Win32.Build.0 = Release|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Release|Win32.ActiveCfg = Release|Win32
- {114FCA11-216B-4C8C-957E-30A75AE80443}.Release|Win32.Build.0 = Release|Win32
- {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32
- {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug|Win32.ActiveCfg = Debug|Win32
{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Debug|Win32.Build.0 = Debug|Win32
- {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release_Cairo|Win32.ActiveCfg = Release_CFLite|Win32
- {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release_Cairo|Win32.Build.0 = Release_CFLite|Win32
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release|Win32.ActiveCfg = Release|Win32
{1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2}.Release|Win32.Build.0 = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug_Cairo|Win32.ActiveCfg = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug_Cairo|Win32.Build.0 = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug|Win32.ActiveCfg = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug|Win32.Build.0 = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Release_Cairo|Win32.ActiveCfg = Release|Win32
- {44B9C152-1870-4035-B94D-7B3285AA0C12}.Release_Cairo|Win32.Build.0 = Release|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Debug|Win32.Build.0 = Debug|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Release|Win32.ActiveCfg = Release|Win32
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD}.Release|Win32.Build.0 = Release|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Debug|Win32.Build.0 = Debug|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Release|Win32.ActiveCfg = Release|Win32
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB}.Release|Win32.Build.0 = Release|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Debug|Win32.Build.0 = Debug|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Release|Win32.ActiveCfg = Release|Win32
+ {AAE88FEF-509E-4D49-870B-7357922C276F}.Release|Win32.Build.0 = Release|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.ActiveCfg = Debug|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.Build.0 = Debug|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.ActiveCfg = Release|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.Build.0 = Release|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.Build.0 = Debug|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.ActiveCfg = Release|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.Build.0 = Release|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.ActiveCfg = Debug|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.Build.0 = Debug|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.ActiveCfg = Release|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.Build.0 = Release|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug|Win32.ActiveCfg = Debug|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Debug|Win32.Build.0 = Debug|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release|Win32.ActiveCfg = Release|Win32
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1}.Release|Win32.Build.0 = Release|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug|Win32.ActiveCfg = Debug|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Debug|Win32.Build.0 = Debug|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.ActiveCfg = Release|Win32
+ {59CC0547-70AC-499C-9B19-EC01C6F61137}.Release|Win32.Build.0 = Release|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Debug|Win32.Build.0 = Debug|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Release|Win32.ActiveCfg = Release|Win32
+ {DA31DA52-6675-48D4-89E0-333A7144397C}.Release|Win32.Build.0 = Release|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug|Win32.ActiveCfg = Debug|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Debug|Win32.Build.0 = Debug|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {44B9C152-1870-4035-B94D-7B3285AA0C12}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
{44B9C152-1870-4035-B94D-7B3285AA0C12}.Release|Win32.ActiveCfg = Release|Win32
{44B9C152-1870-4035-B94D-7B3285AA0C12}.Release|Win32.Build.0 = Release|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Debug_Cairo|Win32.ActiveCfg = Debug_Internal|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Debug_Cairo|Win32.Build.0 = Debug_Internal|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Debug|Win32.Build.0 = Debug|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release|Win32.ActiveCfg = Release|Win32
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C}.Release|Win32.Build.0 = Release|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
{626089A3-25D3-4883-A96C-B8C66E036397}.Debug|Win32.ActiveCfg = Debug|Win32
{626089A3-25D3-4883-A96C-B8C66E036397}.Debug|Win32.Build.0 = Debug|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Release_Cairo|Win32.ActiveCfg = Debug|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Release_Cairo|Win32.Build.0 = Debug|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Release|Win32.ActiveCfg = Debug|Win32
- {626089A3-25D3-4883-A96C-B8C66E036397}.Release|Win32.Build.0 = Debug|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Release|Win32.ActiveCfg = Release|Win32
+ {626089A3-25D3-4883-A96C-B8C66E036397}.Release|Win32.Build.0 = Release|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Debug|Win32.Build.0 = Debug|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Release|Win32.ActiveCfg = Release|Win32
+ {D09806DB-E58B-4646-8C9B-61101906C1E2}.Release|Win32.Build.0 = Release|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug|Win32.ActiveCfg = Debug|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Debug|Win32.Build.0 = Debug|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Release|Win32.ActiveCfg = Release|Win32
+ {114FCA11-216B-4C8C-957E-30A75AE80443}.Release|Win32.Build.0 = Release|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug|Win32.Build.0 = Debug|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Release|Win32.ActiveCfg = Release|Win32
+ {CBC3391C-F060-4BF5-A66E-81404168816B}.Release|Win32.Build.0 = Release|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Debug|Win32.Build.0 = Debug|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Release|Win32.ActiveCfg = Release|Win32
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Release|Win32.Build.0 = Release|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Debug|Win32.Build.0 = Debug|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Release|Win32.ActiveCfg = Release|Win32
+ {3B99669B-1817-443B-BCBE-835580146668}.Release|Win32.Build.0 = Release|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug|Win32.Build.0 = Debug|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release|Win32.ActiveCfg = Release|Win32
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release|Win32.Build.0 = Release|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Debug|Win32.Build.0 = Debug|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Release|Win32.ActiveCfg = Release|Win32
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28}.Release|Win32.Build.0 = Release|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Debug_Cairo_CFLite|Win32.ActiveCfg = Debug_Cairo_CFLite|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Debug_Cairo_CFLite|Win32.Build.0 = Debug_Cairo_CFLite|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Debug|Win32.ActiveCfg = Debug|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Debug|Win32.Build.0 = Debug|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Release_Cairo_CFLite|Win32.ActiveCfg = Release_Cairo_CFLite|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Release_Cairo_CFLite|Win32.Build.0 = Release_Cairo_CFLite|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Release|Win32.ActiveCfg = Release|Win32
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {AA8A5A85-592B-4357-BC60-E0E91E026AF6} = {557FA164-0E39-4DEC-B66C-8795C8E52399}
+ {C59E5129-B453-49B7-A52B-1E104715F76E} = {557FA164-0E39-4DEC-B66C-8795C8E52399}
+ {011D10F1-B656-4A1B-A0C3-3842F02122C5} = {557FA164-0E39-4DEC-B66C-8795C8E52399}
+ {4FF5BA11-59EC-4C24-8F52-F235C2E7D43A} = {557FA164-0E39-4DEC-B66C-8795C8E52399}
+ {1AFD081F-1AC7-4A97-8EFA-6DF97761A3A2} = {557FA164-0E39-4DEC-B66C-8795C8E52399}
+ {1C16337B-ACF3-4D03-AA90-851C5B5EADA6} = {63FB6F8A-C601-43E3-BD16-A00A465C2CB6}
+ {0A324352-B3B6-496C-9E5B-4C7E923E628B} = {63FB6F8A-C601-43E3-BD16-A00A465C2CB6}
+ {E498CA9D-3BD2-4D52-8E37-C8DC76526325} = {63FB6F8A-C601-43E3-BD16-A00A465C2CB6}
+ {2E51ABE8-76CB-485B-A66C-46AEF4DF8ACD} = {9AB9C96C-9039-4FA9-8F83-BBFC8F8B2182}
+ {2EDAD637-CBA8-4E55-97ED-7D2BBC336FDB} = {9AB9C96C-9039-4FA9-8F83-BBFC8F8B2182}
+ {AAE88FEF-509E-4D49-870B-7357922C276F} = {9AB9C96C-9039-4FA9-8F83-BBFC8F8B2182}
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406} = {1D359ACC-BE10-45D7-938B-BC7E4B7AA6CA}
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9} = {1D359ACC-BE10-45D7-938B-BC7E4B7AA6CA}
+ {B8437A41-67BC-4769-9452-45203827F821} = {1D359ACC-BE10-45D7-938B-BC7E4B7AA6CA}
+ {6567DFD4-D6DE-4CD5-825D-17E353D160E1} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {59CC0547-70AC-499C-9B19-EC01C6F61137} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {DA31DA52-6675-48D4-89E0-333A7144397C} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {44B9C152-1870-4035-B94D-7B3285AA0C12} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {C0737398-3565-439E-A2B8-AB2BE4D5430C} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {626089A3-25D3-4883-A96C-B8C66E036397} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {D09806DB-E58B-4646-8C9B-61101906C1E2} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {114FCA11-216B-4C8C-957E-30A75AE80443} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {CBC3391C-F060-4BF5-A66E-81404168816B} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {3B99669B-1817-443B-BCBE-835580146668} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {1480CF5F-4160-47B5-A0E6-96AEC8258FB5} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {3E48AB23-D249-488F-A1C4-43CDF52FBD28} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ {45C45411-7F0E-404D-919A-4EE9BB60BE86} = {62DCDFE4-EAD2-48E1-A2BD-BD54AD3C7459}
+ EndGlobalSection
EndGlobal
diff --git a/WebKit/win/WebKit.vcproj/WebKit.submit.sln b/WebKit/win/WebKit.vcproj/WebKit.submit.sln index dbbc8e0..d4c1f4d 100644 --- a/WebKit/win/WebKit.vcproj/WebKit.submit.sln +++ b/WebKit/win/WebKit.vcproj/WebKit.submit.sln @@ -1,7 +1,7 @@ 
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKit", "WebKit.vcproj", "{0662A8A9-82A3-4638-97D8-EC425D8D87C9}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WebKitLib", "WebKit.vcproj", "{0662A8A9-82A3-4638-97D8-EC425D8D87C9}"
ProjectSection(ProjectDependencies) = postProject
{91762BE2-87EF-4F5A-A480-48B90EB3F406} = {91762BE2-87EF-4F5A-A480-48B90EB3F406}
{B8437A41-67BC-4769-9452-45203827F821} = {B8437A41-67BC-4769-9452-45203827F821}
@@ -17,33 +17,33 @@ EndProject Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug_All|Win32 = Debug_All|Win32
- Debug_Internal|Win32 = Debug_Internal|Win32
Debug|Win32 = Debug|Win32
+ Release_LTCG|Win32 = Release_LTCG|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_All|Win32.Build.0 = Debug_All|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Internal|Win32.ActiveCfg = Debug_Internal|Win32
- {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug_Internal|Win32.Build.0 = Debug_Internal|Win32
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.ActiveCfg = Debug|Win32
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Debug|Win32.Build.0 = Debug|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_LTCG|Win32.ActiveCfg = Release_LTCG|Win32
+ {0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release_LTCG|Win32.Build.0 = Release_LTCG|Win32
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.ActiveCfg = Release|Win32
{0662A8A9-82A3-4638-97D8-EC425D8D87C9}.Release|Win32.Build.0 = Release|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Debug_All|Win32.Build.0 = Debug_All|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug_Internal|Win32.ActiveCfg = Debug_Internal|Win32
- {B8437A41-67BC-4769-9452-45203827F821}.Debug_Internal|Win32.Build.0 = Debug_Internal|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.ActiveCfg = Debug|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Debug|Win32.Build.0 = Debug|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release_LTCG|Win32.ActiveCfg = Release_LTCG|Win32
+ {B8437A41-67BC-4769-9452-45203827F821}.Release_LTCG|Win32.Build.0 = Release_LTCG|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.ActiveCfg = Release|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.Build.0 = Release|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.ActiveCfg = Debug|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.Build.0 = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Internal|Win32.ActiveCfg = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_Internal|Win32.Build.0 = Debug|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.ActiveCfg = Debug|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.Build.0 = Debug|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_LTCG|Win32.ActiveCfg = Release_LTCG|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_LTCG|Win32.Build.0 = Release_LTCG|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.ActiveCfg = Release|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
diff --git a/WebKit/win/WebKit.vcproj/WebKit.vcproj b/WebKit/win/WebKit.vcproj/WebKit.vcproj index 57d1da2..4616c74 100644 --- a/WebKit/win/WebKit.vcproj/WebKit.vcproj +++ b/WebKit/win/WebKit.vcproj/WebKit.vcproj @@ -2,7 +2,7 @@ <VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
- Name="WebKit"
+ Name="WebKitLib"
ProjectGUID="{0662A8A9-82A3-4638-97D8-EC425D8D87C9}"
RootNamespace="WebKit"
Keyword="Win32Proj"
@@ -17,13 +17,12 @@ <Configurations>
<Configuration
Name="Debug|Win32"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -39,39 +38,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CoreFoundation$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib CFNetwork$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitSystemInterface$(WebKitConfigSuffix).lib msimg32.lib QTMovieWin$(WebKitConfigSuffix).lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories="$(DXSDK_DIR)\Lib\x86"
- ModuleDefinitionFile="WebKit$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;QTMovieWin$(WebKitConfigSuffix).dll;iphlpapi.dll;rpcrt4.dll;QuartzCore.dll;QuartzCoreInterface.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -81,26 +64,17 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
Name="Release|Win32"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\release.vsprops"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
- WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -116,39 +90,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CoreFoundation$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib CFNetwork$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitSystemInterface$(WebKitConfigSuffix).lib msimg32.lib QTMovieWin$(WebKitConfigSuffix).lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories="$(DXSDK_DIR)\Lib\x86"
- ModuleDefinitionFile="WebKit$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;QTMovieWin$(WebKitConfigSuffix).dll;iphlpapi.dll;rpcrt4.dll;QuartzCore.dll;QuartzCoreInterface.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -158,25 +116,17 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
- Name="Debug_Internal|Win32"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_internal.vsprops"
+ Name="Debug_Cairo_CFLite|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_wincairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\cURL.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -192,40 +142,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- Detect64BitPortabilityProblems="false"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CoreFoundation$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib CFNetwork$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitSystemInterface$(WebKitConfigSuffix).lib msimg32.lib QTMovieWin$(WebKitConfigSuffix).lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories="$(DXSDK_DIR)\Lib\x86"
- ModuleDefinitionFile="WebKit$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;QTMovieWin$(WebKitConfigSuffix).dll;iphlpapi.dll;rpcrt4.dll;QuartzCore.dll;QuartzCoreInterface.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -235,25 +168,18 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
- Name="Debug_Cairo|Win32"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_wincairo.vsprops;$(WebKitLibrariesDir)\tools\vsprops\WinCairo.vsprops;$(WebKitLibrariesDir)\tools\vsprops\cURL.vsprops"
+ Name="Release_Cairo_CFLite|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\WinCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\cURL.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
+ WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -269,40 +195,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CFLite_Debug.lib JavaScriptCore$(WebKitConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib msimg32.lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories=""
- ModuleDefinitionFile="WebKit_Cairo$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;iphlpapi.dll;rpcrt4.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- VerboseOutput="false"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -312,28 +221,17 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
- Name="Release_Cairo|Win32"
- OutputDirectory="$(WebKitOutputDir)\bin"
- IntermediateDirectory="$(WebKitOutputDir)\obj\$(ProjectName)\$(ConfigurationName)"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\release.vsprops;$(WebKitLibrariesDir)\tools\vsprops\WinCairo.vsprops;$(WebKitLibrariesDir)\tools\vsprops\cURL.vsprops"
+ Name="Debug_All|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_all.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
- WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -349,39 +247,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CFLite.lib JavaScriptCore$(WebKitDLLConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib msimg32.lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories=""
- ModuleDefinitionFile="WebKit_Cairo$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;iphlpapi.dll;rpcrt4.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -391,25 +273,18 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
<Configuration
- Name="Debug_All|Win32"
- ConfigurationType="2"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_internal.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_all.vsprops"
+ Name="Release_LTCG|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\WebKitLibCommon.vsprops"
CharacterSet="1"
+ WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -425,40 +300,23 @@ />
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
- PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
- UsePrecompiledHeader="2"
- PrecompiledHeaderThrough="WebKitPrefix.h"
- Detect64BitPortabilityProblems="false"
- DisableSpecificWarnings="4819"
- ForcedIncludeFiles="WebKitPrefix.h"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
/>
<Tool
Name="VCPreLinkEventTool"
- CommandLine=""
/>
<Tool
- Name="VCLinkerTool"
- AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib CoreFoundation$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib CFNetwork$(LibraryConfigSuffix).lib CoreGraphics$(LibraryConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitSystemInterface$(WebKitConfigSuffix).lib msimg32.lib QTMovieWin$(WebKitConfigSuffix).lib crypt32.lib iphlpapi.lib winmm.lib rpcrt4.lib comsuppw.lib"
- OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
- AdditionalLibraryDirectories="$(DXSDK_DIR)\Lib\x86"
- ModuleDefinitionFile="WebKit$(WebKitDLLConfigSuffix).def"
- DelayLoadDLLs="comdlg32.dll;usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;QTMovieWin$(WebKitConfigSuffix).dll;iphlpapi.dll;rpcrt4.dll"
+ Name="VCLibrarianTool"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
- Name="VCManifestTool"
- />
- <Tool
Name="VCXDCMakeTool"
/>
<Tool
@@ -468,14 +326,7 @@ Name="VCFxCopTool"
/>
<Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\$(ProjectName).resources\*" "$(OutDir)\$(ProjectName).resources"
mkdir 2>NUL "$(OutDir)\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
/>
</Configuration>
</Configurations>
@@ -492,10 +343,6 @@ >
</File>
<File
- RelativePath="..\WebCoreLocalizedStrings.cpp"
- >
- </File>
- <File
RelativePath="..\WebKitClassFactory.cpp"
>
</File>
@@ -690,10 +537,6 @@ >
</File>
<File
- RelativePath="..\WebIconFetcher.h"
- >
- </File>
- <File
RelativePath="..\WebInspector.h"
>
</File>
@@ -713,7 +556,7 @@ RelativePath="..\WebKitGraphics.h"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -721,7 +564,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -749,7 +592,7 @@ RelativePath="..\WebLocalizableStrings.h"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -757,7 +600,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -846,6 +689,10 @@ >
</File>
<File
+ RelativePath="..\WebUserContentURLPattern.h"
+ >
+ </File>
+ <File
RelativePath="..\WebView.h"
>
</File>
@@ -937,7 +784,7 @@ RelativePath="..\WebCookieManagerCFNet.cpp"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -945,7 +792,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -973,7 +820,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_Internal|Win32"
+ Name="Debug_All|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -981,7 +828,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_All|Win32"
+ Name="Release_LTCG|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1013,7 +860,7 @@ RelativePath="..\WebDownloadCFNet.cpp"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1021,7 +868,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1049,7 +896,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_Internal|Win32"
+ Name="Debug_All|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1057,7 +904,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_All|Win32"
+ Name="Release_LTCG|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1110,10 +957,6 @@ >
</File>
<File
- RelativePath="..\WebIconFetcher.cpp"
- >
- </File>
- <File
RelativePath="..\WebInspector.cpp"
>
</File>
@@ -1193,7 +1036,7 @@ RelativePath="..\WebURLAuthenticationChallengeSenderCFNet.cpp"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1201,7 +1044,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1229,7 +1072,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_Internal|Win32"
+ Name="Debug_All|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1237,7 +1080,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_All|Win32"
+ Name="Release_LTCG|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1258,127 +1101,15 @@ >
</File>
<File
- RelativePath="..\WebView.cpp"
- >
- </File>
- <File
- RelativePath="..\WebWorkersPrivate.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Resources"
- >
- <File
- RelativePath=".\fsVideoAudioVolumeHigh.png"
- >
- </File>
- <File
- RelativePath=".\fsVideoAudioVolumeLow.png"
- >
- </File>
- <File
- RelativePath=".\fsVideoExitFullscreen.png"
- >
- </File>
- <File
- RelativePath=".\fsVideoPause.png"
- >
- </File>
- <File
- RelativePath=".\fsVideoPlay.png"
- >
- </File>
- <File
- RelativePath=".\missingImage.png"
- >
- </File>
- <File
- RelativePath=".\nullplugin.png"
- >
- </File>
- <File
- RelativePath=".\searchCancel.png"
- >
- </File>
- <File
- RelativePath=".\searchCancelPressed.png"
- >
- </File>
- <File
- RelativePath=".\searchMagnifier.png"
- >
- </File>
- <File
- RelativePath=".\searchMagnifierResults.png"
- >
- </File>
- <File
- RelativePath=".\textAreaResizeCorner.png"
- >
- </File>
- <File
- RelativePath=".\verticalTextCursor.png"
- >
- </File>
- <File
- RelativePath=".\WebKit.rc"
+ RelativePath="..\WebUserContentURLPattern.cpp"
>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug_Internal|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug_Cairo|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release_Cairo|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug_All|Win32"
- >
- <Tool
- Name="VCResourceCompilerTool"
- AdditionalIncludeDirectories=""$(WebKitOutputDir)\lib";"$(WebKitOutputDir)\obj\$(ProjectName)\Interfaces""
- />
- </FileConfiguration>
</File>
<File
- RelativePath=".\zoomInCursor.png"
+ RelativePath="..\WebView.cpp"
>
</File>
<File
- RelativePath=".\zoomOutCursor.png"
+ RelativePath="..\WebWorkersPrivate.cpp"
>
</File>
</Filter>
@@ -1386,14 +1117,6 @@ Name="API"
>
<File
- RelativePath=".\WebKit.def"
- >
- </File>
- <File
- RelativePath=".\WebKit_debug.def"
- >
- </File>
- <File
RelativePath="..\WebKitCOMAPI.cpp"
>
</File>
@@ -1401,7 +1124,7 @@ RelativePath="..\WebKitGraphics.cpp"
>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1409,7 +1132,7 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
ExcludedFromBuild="true"
>
<Tool
@@ -1482,11 +1205,19 @@ >
</File>
<File
- RelativePath="..\WebCoreSupport\WebGeolocationControllerClient.cpp"
+ RelativePath="..\WebCoreSupport\WebFrameNetworkingContext.cpp"
>
</File>
<File
- RelativePath="..\WebCoreSupport\WebGeolocationControllerClient.h"
+ RelativePath="..\WebCoreSupport\WebFrameNetworkingContext.h"
+ >
+ </File>
+ <File
+ RelativePath="..\WebCoreSupport\WebGeolocationClient.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\WebCoreSupport\WebGeolocationClient.h"
>
</File>
<File
@@ -1510,6 +1241,14 @@ >
</File>
<File
+ RelativePath="..\WebCoreSupport\WebPlatformStrategies.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\WebCoreSupport\WebPlatformStrategies.h"
+ >
+ </File>
+ <File
RelativePath="..\WebCoreSupport\WebPluginHalterClient.cpp"
>
</File>
@@ -1538,16 +1277,15 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Debug_Internal|Win32"
+ Name="Debug_Cairo_CFLite|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
- PrecompiledHeaderThrough="WebKitPrefix.h"
/>
</FileConfiguration>
<FileConfiguration
- Name="Debug_Cairo|Win32"
+ Name="Release_Cairo_CFLite|Win32"
>
<Tool
Name="VCCLCompilerTool"
@@ -1555,20 +1293,20 @@ />
</FileConfiguration>
<FileConfiguration
- Name="Release_Cairo|Win32"
+ Name="Debug_All|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
+ PrecompiledHeaderThrough="WebKitPrefix.h"
/>
</FileConfiguration>
<FileConfiguration
- Name="Debug_All|Win32"
+ Name="Release_LTCG|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
- PrecompiledHeaderThrough="WebKitPrefix.h"
/>
</FileConfiguration>
</File>
diff --git a/WebKit/win/WebKit.vcproj/WebKitGUID.vcproj b/WebKit/win/WebKit.vcproj/WebKitGUID.vcproj index b2b708e..cb6de36 100644 --- a/WebKit/win/WebKit.vcproj/WebKitGUID.vcproj +++ b/WebKit/win/WebKit.vcproj/WebKitGUID.vcproj @@ -17,14 +17,12 @@ <Configurations>
<Configuration
Name="Debug|Win32"
- OutputDirectory="$(WebKitOutputDir)\lib"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;.\WebKitGUIDCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -37,14 +35,10 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories="Interfaces"
OutputDirectory="Debug"
- HeaderFileName="$(InputName).h"
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\$(ConfigurationName)\WebKit"
- PreprocessorDefinitions="_USRDLL;WEBKITGUID_EXPORTS"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -72,20 +66,16 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed""
/>
</Configuration>
<Configuration
Name="Release|Win32"
- OutputDirectory="$(WebKitOutputDir)\lib"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\release.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\WebKitGUIDCommon.vsprops"
CharacterSet="1"
- WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -98,14 +88,10 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories="Interfaces"
OutputDirectory="Release"
- HeaderFileName="$(InputName).h"
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\$(ConfigurationName)\WebKit"
- PreprocessorDefinitions="_USRDLL;WEBKITGUID_EXPORTS"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -133,19 +119,16 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed""
/>
</Configuration>
<Configuration
- Name="Debug_Internal|Win32"
- OutputDirectory="$(WebKitOutputDir)\lib"
+ Name="Debug_All|Win32"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_internal.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_all.vsprops;.\WebKitGUIDCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -158,14 +141,10 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories="Interfaces"
OutputDirectory="Debug"
- HeaderFileName="$(InputName).h"
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\$(ConfigurationName)\WebKit"
- PreprocessorDefinitions="_USRDLL;WEBKITGUID_EXPORTS"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -193,19 +172,124 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed""
/>
</Configuration>
<Configuration
- Name="Debug_All|Win32"
- OutputDirectory="$(WebKitOutputDir)\lib"
+ Name="Release_LTCG|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;.\WebKitGUIDCommon.vsprops"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ OutputDirectory="Release"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release_Cairo_CFLite|Win32"
+ ConfigurationType="4"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\release.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\WinCairo.vsprops;.\WebKitGUIDCommon.vsprops"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ OutputDirectory="Release"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLibrarianTool"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug_Cairo_CFLite|Win32"
ConfigurationType="4"
- InheritedPropertySheets="$(WebKitLibrariesDir)\tools\vsprops\FeatureDefines.vsprops;$(WebKitLibrariesDir)\tools\vsprops\common.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_internal.vsprops;$(WebKitLibrariesDir)\tools\vsprops\debug_all.vsprops"
+ InheritedPropertySheets="$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefinesCairo.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\common.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug.vsprops;$(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\debug_wincairo.vsprops;.\WebKitGUIDCommon.vsprops"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"
"
/>
<Tool
Name="VCCustomBuildTool"
@@ -218,14 +302,10 @@ />
<Tool
Name="VCMIDLTool"
- AdditionalIncludeDirectories="Interfaces"
OutputDirectory="Debug"
- HeaderFileName="$(InputName).h"
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="$(WebKitOutputDir)\$(ConfigurationName)\WebKit"
- PreprocessorDefinitions="_USRDLL;WEBKITGUID_EXPORTS"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -253,7 +333,6 @@ />
<Tool
Name="VCPostBuildEventTool"
- CommandLine="if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed""
/>
</Configuration>
</Configurations>
diff --git a/WebKit/win/WebKit.vcproj/WebKitGUIDCommon.vsprops b/WebKit/win/WebKit.vcproj/WebKitGUIDCommon.vsprops new file mode 100644 index 0000000..422c8bd --- /dev/null +++ b/WebKit/win/WebKit.vcproj/WebKitGUIDCommon.vsprops @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="WebKitGUIDCommon"
+ OutputDirectory="$(WebKitOutputDir)\lib"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="$(WebKitOutputDir)\$(ConfigurationName)\WebKit"
+ PreprocessorDefinitions="_USRDLL;WEBKITGUID_EXPORTS"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed""
+ />
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"
"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ AdditionalIncludeDirectories="Interfaces"
+ HeaderFileName="$(InputName).h"
+ />
+
+</VisualStudioPropertySheet>
diff --git a/WebKit/win/WebKit.vcproj/WebKitLibCommon.vsprops b/WebKit/win/WebKit.vcproj/WebKitLibCommon.vsprops new file mode 100644 index 0000000..f2fb761 --- /dev/null +++ b/WebKit/win/WebKit.vcproj/WebKitLibCommon.vsprops @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="WebKitLibCommon"
+ OutputDirectory="$(WebKitOutputDir)\lib"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories=""$(WebKitOutputDir)\include\WebKit";"$(WebKitOutputDir)\Include";"$(WebKitOutputDir)\Include\private";"$(WebKitLibrariesDir)\Include";"$(WebKitLibrariesDir)\Include\private";"$(WebKitOutputDir)\Include\WebCore";"$(WebKitLibrariesDir)\Include\WebCore";"$(WebKitOutputDir)\Include\WebCore\ForwardingHeaders";"$(WebKitLibrariesDir)\Include\WebCore\ForwardingHeaders";"$(WebKitOutputDir)\Include\JavaScriptCore";"$(WebKitOutputDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\Include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\private\JavaScriptCore";"$(WebKitLibrariesDir)\include\pthreads";"$(ProjectDir)\..";"$(ProjectDir)";"$(ProjectDir)\..\WebCoreSupport";"$(IntDir)\include";"$(WebKitOutputDir)\obj\WebKit\DerivedSources""
+ PreprocessorDefinitions="_USRDLL;WEBKIT_EXPORTS;FRAMEWORK_NAME=WebKit"
+ UsePrecompiledHeader="2"
+ PrecompiledHeaderThrough="WebKitPrefix.h"
+ ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
+ DisableSpecificWarnings="4819"
+ ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(ProjectDir)\..\WebLocalizableStrings.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitGraphics.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebKitCOMAPI.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(ProjectDir)\..\WebPreferenceKeysPrivate.h" "$(WebKitOutputDir)\include\WebKit"

xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npapi.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npfunctions.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\npruntime_internal.h" "$(WebKitOutputDir)\include\WebKit"
xcopy /y /d "$(WebKitOutputDir)\include\WebCore\nptypes.h" "$(WebKitOutputDir)\include\WebKit"

mkdir 2>NUL "$(OutDir)\..\bin\WebKit.resources"
xcopy /y /d "$(ProjectDir)..\WebKit.resources\*" "$(OutDir)\..\bin\WebKit.resources"
mkdir 2>NUL "$(OutDir)\..\bin\WebKit.resources\en.lproj"
xcopy /y /d "$(ProjectDir)..\..\English.lproj\Localizable.strings" "$(OutDir)\..\bin\WebKit.resources\en.lproj\"

if exist "$(WebKitOutputDir)\buildfailed" del "$(WebKitOutputDir)\buildfailed"
"
+ />
+ <Tool
+ Name="VCPreBuildEventTool"
+ CommandLine="%SystemDrive%\cygwin\bin\which.exe bash
if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%
cmd /c
if exist "$(WebKitOutputDir)\buildfailed" grep XX$(ProjectName)XX "$(WebKitOutputDir)\buildfailed"
if errorlevel 1 exit 1
echo XX$(ProjectName)XX > "$(WebKitOutputDir)\buildfailed"

touch "$(WebKitOutputDir)\tmp.cpp"
cl /analyze /nologo /c "$(WebKitOutputDir)\tmp.cpp" /Fo"$(IntDir)\tmp.obj" 2>&1 | findstr D9040
if ERRORLEVEL 1 (set EnablePREfast="true") else (set EnablePREfast="false")
if ERRORLEVEL 1 (set AnalyzeWithLargeStack="/analyze:65536") else (set AnalyzeWithLargeStack="")

mkdir 2>NUL "$(WebKitOutputDir)\include\JavaScriptCore"
xcopy /y /d "$(WebKitLibrariesDir)\include\JavaScriptCore\*" "$(WebKitOutputDir)\include\JavaScriptCore"

bash "$(WebKitLibrariesDir)\tools\scripts\auto-version.sh" "$(IntDir)"
"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit\"
+ />
+</VisualStudioPropertySheet>
diff --git a/WebKit/win/WebKit.vcproj/WebKit_debug.def b/WebKit/win/WebKit.vcproj/WebKit_debug.def deleted file mode 100644 index c15957a..0000000 --- a/WebKit/win/WebKit.vcproj/WebKit_debug.def +++ /dev/null @@ -1,136 +0,0 @@ -LIBRARY "WebKit_debug" - -EXPORTS - DllGetClassObject PRIVATE - DllCanUnloadNow PRIVATE - DllRegisterServer PRIVATE - DllUnregisterServer PRIVATE - RunAsLocalServer PRIVATE - LocalServerDidDie PRIVATE - setUseOpenSourceWebKit - shutDownWebKit - progIDForClass - WebLocalizedStringUTF8 - WebLocalizedLPCTSTRUTF8 - WebDrawText - FontMetrics - TextFloatWidth - CenterTruncateStringToWidth - RightTruncateStringToWidth - WebKitSetShouldUseFontSmoothing - WebKitShouldUseFontSmoothing - WebKitCreateInstance - - ; These functions are deprecated - WebLocalizedString - WebLocalizedLPCTSTR - SetWebLocalizedStringMainBundle - - ; Deprecated re-exports from JavaScriptCore - JSCheckScriptSyntax - JSClassCreate - JSClassRelease - JSClassRetain - JSContextGetGlobalObject - JSContextGetGroup - JSContextGroupCreate - JSContextGroupRelease - JSContextGroupRetain - JSEvaluateScript - JSGarbageCollect - JSGlobalContextCreate - JSGlobalContextCreateInGroup - JSGlobalContextRelease - JSGlobalContextRetain - JSObjectCallAsConstructor - JSObjectCallAsFunction - JSObjectCopyPropertyNames - JSObjectDeleteProperty - JSObjectGetPrivate - JSObjectGetProperty - JSObjectGetPropertyAtIndex - JSObjectGetPrototype - JSObjectHasProperty - JSObjectIsConstructor - JSObjectIsFunction - JSObjectMake - JSObjectMakeArray - JSObjectMakeConstructor - JSObjectMakeDate - JSObjectMakeError - JSObjectMakeFunction - JSObjectMakeFunctionWithCallback - JSObjectMakeRegExp - JSObjectSetPrivate - JSObjectSetProperty - JSObjectSetPropertyAtIndex - JSObjectSetPrototype - JSPropertyNameAccumulatorAddName - JSPropertyNameArrayGetCount - JSPropertyNameArrayGetNameAtIndex - JSPropertyNameArrayRelease - JSPropertyNameArrayRetain - JSStringCopyBSTR - JSStringCopyCFString - JSStringCreateWithBSTR - JSStringCreateWithCFString - JSStringCreateWithCharacters - JSStringCreateWithUTF8CString - JSStringGetCharactersPtr - JSStringGetLength - JSStringGetMaximumUTF8CStringSize - JSStringGetUTF8CString - JSStringIsEqual - JSStringIsEqualToUTF8CString - JSStringRelease - JSStringRetain - JSValueGetType - JSValueIsBoolean - JSValueIsEqual - JSValueIsInstanceOfConstructor - JSValueIsNull - JSValueIsNumber - JSValueIsObject - JSValueIsObjectOfClass - JSValueIsStrictEqual - JSValueIsString - JSValueIsUndefined - JSValueMakeBoolean - JSValueMakeNull - JSValueMakeNumber - JSValueMakeString - JSValueMakeUndefined - JSValueProtect - JSValueToBoolean - JSValueToNumber - JSValueToObject - JSValueToStringCopy - JSValueUnprotect - ?fastMalloc@WTF@@YAPAXI@Z - ?fastZeroedMalloc@WTF@@YAPAXI@Z - ?fastFree@WTF@@YAXPAX@Z - ?fastCalloc@WTF@@YAPAXII@Z - ??0Mutex@WTF@@QAE@XZ - ??0ThreadCondition@WTF@@QAE@XZ - ??1Mutex@WTF@@QAE@XZ - ??1ThreadCondition@WTF@@QAE@XZ - ?broadcast@ThreadCondition@WTF@@QAEXXZ - ?callOnMainThread@WTF@@YAXP6AXPAX@Z0@Z - ?createThread@WTF@@YAIP6APAXPAX@Z0PBD@Z - ?currentThread@WTF@@YAIXZ - ?detachThread@WTF@@YAXI@Z - ?initializeMainThread@WTF@@YAXXZ - ?initializeThreading@WTF@@YAXXZ - ?isMainThread@WTF@@YA_NXZ - ?lock@Mutex@WTF@@QAEXXZ - ?lockAtomicallyInitializedStaticMutex@WTF@@YAXXZ - ?signal@ThreadCondition@WTF@@QAEXXZ - ?timedWait@ThreadCondition@WTF@@QAE_NAAVMutex@2@N@Z - ?tlsKeyCount@WTF@@YAAAJXZ - ?tlsKeys@WTF@@YAPAKXZ - ?tryLock@Mutex@WTF@@QAE_NXZ - ?unlock@Mutex@WTF@@QAEXXZ - ?unlockAtomicallyInitializedStaticMutex@WTF@@YAXXZ - ?wait@ThreadCondition@WTF@@QAEXAAVMutex@2@@Z - ?waitForThreadCompletion@WTF@@YAHIPAPAX@Z - ?createThread@WTF@@YAIP6APAXPAX@Z0@Z diff --git a/WebKit/win/WebKit.vcproj/deleteButton.png b/WebKit/win/WebKit.vcproj/deleteButton.png Binary files differdeleted file mode 100644 index 8f1b881..0000000 --- a/WebKit/win/WebKit.vcproj/deleteButton.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/deleteButtonPressed.png b/WebKit/win/WebKit.vcproj/deleteButtonPressed.png Binary files differdeleted file mode 100644 index 77d31ca..0000000 --- a/WebKit/win/WebKit.vcproj/deleteButtonPressed.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeHigh.png b/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeHigh.png Binary files differdeleted file mode 100755 index d04df37..0000000 --- a/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeHigh.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeLow.png b/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeLow.png Binary files differdeleted file mode 100755 index e824a21..0000000 --- a/WebKit/win/WebKit.vcproj/fsVideoAudioVolumeLow.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/fsVideoExitFullscreen.png b/WebKit/win/WebKit.vcproj/fsVideoExitFullscreen.png Binary files differdeleted file mode 100755 index 01ce692..0000000 --- a/WebKit/win/WebKit.vcproj/fsVideoExitFullscreen.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/fsVideoPause.png b/WebKit/win/WebKit.vcproj/fsVideoPause.png Binary files differdeleted file mode 100755 index b98fb36..0000000 --- a/WebKit/win/WebKit.vcproj/fsVideoPause.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/fsVideoPlay.png b/WebKit/win/WebKit.vcproj/fsVideoPlay.png Binary files differdeleted file mode 100755 index 035aeb2..0000000 --- a/WebKit/win/WebKit.vcproj/fsVideoPlay.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/missingImage.png b/WebKit/win/WebKit.vcproj/missingImage.png Binary files differdeleted file mode 100644 index f49a98d..0000000 --- a/WebKit/win/WebKit.vcproj/missingImage.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/nullplugin.png b/WebKit/win/WebKit.vcproj/nullplugin.png Binary files differdeleted file mode 100644 index a4195f6..0000000 --- a/WebKit/win/WebKit.vcproj/nullplugin.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panEastCursor.png b/WebKit/win/WebKit.vcproj/panEastCursor.png Binary files differdeleted file mode 100755 index 9c1592e..0000000 --- a/WebKit/win/WebKit.vcproj/panEastCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panIcon.png b/WebKit/win/WebKit.vcproj/panIcon.png Binary files differdeleted file mode 100644 index 4ca8d70..0000000 --- a/WebKit/win/WebKit.vcproj/panIcon.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panNorthCursor.png b/WebKit/win/WebKit.vcproj/panNorthCursor.png Binary files differdeleted file mode 100755 index 0d020db..0000000 --- a/WebKit/win/WebKit.vcproj/panNorthCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panNorthEastCursor.png b/WebKit/win/WebKit.vcproj/panNorthEastCursor.png Binary files differdeleted file mode 100755 index 0e89639..0000000 --- a/WebKit/win/WebKit.vcproj/panNorthEastCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panNorthWestCursor.png b/WebKit/win/WebKit.vcproj/panNorthWestCursor.png Binary files differdeleted file mode 100755 index 6723f61..0000000 --- a/WebKit/win/WebKit.vcproj/panNorthWestCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panSouthCursor.png b/WebKit/win/WebKit.vcproj/panSouthCursor.png Binary files differdeleted file mode 100755 index 60cf722..0000000 --- a/WebKit/win/WebKit.vcproj/panSouthCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panSouthEastCursor.png b/WebKit/win/WebKit.vcproj/panSouthEastCursor.png Binary files differdeleted file mode 100755 index 415aa63..0000000 --- a/WebKit/win/WebKit.vcproj/panSouthEastCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panSouthWestCursor.png b/WebKit/win/WebKit.vcproj/panSouthWestCursor.png Binary files differdeleted file mode 100755 index 8dc5cdc..0000000 --- a/WebKit/win/WebKit.vcproj/panSouthWestCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/panWestCursor.png b/WebKit/win/WebKit.vcproj/panWestCursor.png Binary files differdeleted file mode 100755 index 544439a..0000000 --- a/WebKit/win/WebKit.vcproj/panWestCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/searchCancel.png b/WebKit/win/WebKit.vcproj/searchCancel.png Binary files differdeleted file mode 100644 index 49f3f47..0000000 --- a/WebKit/win/WebKit.vcproj/searchCancel.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/searchCancelPressed.png b/WebKit/win/WebKit.vcproj/searchCancelPressed.png Binary files differdeleted file mode 100644 index b699d81..0000000 --- a/WebKit/win/WebKit.vcproj/searchCancelPressed.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/searchMagnifier.png b/WebKit/win/WebKit.vcproj/searchMagnifier.png Binary files differdeleted file mode 100644 index f9b8cae..0000000 --- a/WebKit/win/WebKit.vcproj/searchMagnifier.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/searchMagnifierResults.png b/WebKit/win/WebKit.vcproj/searchMagnifierResults.png Binary files differdeleted file mode 100644 index 9aa1b36..0000000 --- a/WebKit/win/WebKit.vcproj/searchMagnifierResults.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/textAreaResizeCorner.png b/WebKit/win/WebKit.vcproj/textAreaResizeCorner.png Binary files differdeleted file mode 100644 index 023615e..0000000 --- a/WebKit/win/WebKit.vcproj/textAreaResizeCorner.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/verticalTextCursor.png b/WebKit/win/WebKit.vcproj/verticalTextCursor.png Binary files differdeleted file mode 100644 index 0f2877c..0000000 --- a/WebKit/win/WebKit.vcproj/verticalTextCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/zoomInCursor.png b/WebKit/win/WebKit.vcproj/zoomInCursor.png Binary files differdeleted file mode 100644 index feec9bc..0000000 --- a/WebKit/win/WebKit.vcproj/zoomInCursor.png +++ /dev/null diff --git a/WebKit/win/WebKit.vcproj/zoomOutCursor.png b/WebKit/win/WebKit.vcproj/zoomOutCursor.png Binary files differdeleted file mode 100644 index f4a954e..0000000 --- a/WebKit/win/WebKit.vcproj/zoomOutCursor.png +++ /dev/null diff --git a/WebKit/win/WebKitClassFactory.cpp b/WebKit/win/WebKitClassFactory.cpp index d243588..0e6a689 100644 --- a/WebKit/win/WebKitClassFactory.cpp +++ b/WebKit/win/WebKitClassFactory.cpp @@ -54,13 +54,12 @@ #include "WebURLCredential.h" #include "WebURLProtectionSpace.h" #include "WebURLResponse.h" +#include "WebUserContentURLPattern.h" #include "WebView.h" #include "WebWorkersPrivate.h" -#pragma warning(push, 0) #include <JavaScriptCore/InitializeThreading.h> -#include <WebCore/FontDatabase.h> #include <WebCore/SoftLinking.h> -#pragma warning(pop) +#include <wtf/Threading.h> // WebKitClassFactory --------------------------------------------------------- #if USE(SAFARI_THEME) @@ -87,7 +86,7 @@ WebKitClassFactory::WebKitClassFactory(CLSID targetClass) #endif JSC::initializeThreading(); - WebCore::populateFontDatabase(); + WTF::initializeMainThread(); gClassCount++; gClassNameCount.add("WebKitClassFactory"); diff --git a/WebKit/win/WebKitDLL.cpp b/WebKit/win/WebKitDLL.cpp index 9f4eaeb..bc7aa60 100644 --- a/WebKit/win/WebKitDLL.cpp +++ b/WebKit/win/WebKitDLL.cpp @@ -36,6 +36,7 @@ #include <WebCore/PageGroup.h> #include <WebCore/RenderThemeWin.h> #include <WebCore/SharedBuffer.h> +#include <WebCore/WebCoreInstanceHandle.h> #include <WebCore/Widget.h> #include <wtf/Vector.h> #include <tchar.h> @@ -60,7 +61,7 @@ STDAPI_(BOOL) DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID /*lpRe case DLL_PROCESS_ATTACH: gLockCount = gClassCount = 0; gInstance = hModule; - WebCore::Page::setInstanceHandle(hModule); + WebCore::setInstanceHandle(hModule); return TRUE; case DLL_PROCESS_DETACH: @@ -77,7 +78,7 @@ STDAPI_(BOOL) DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID /*lpRe STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv) { bool found = false; - for (int i = 0; i < ARRAYSIZE(gRegCLSIDs); i++) { + for (size_t i = 0; i < WTF_ARRAY_LENGTH(gRegCLSIDs); ++i) { if (IsEqualGUID(rclsid, gRegCLSIDs[i])) { found = true; break; diff --git a/WebKit/win/WebKitDLL.h b/WebKit/win/WebKitDLL.h index d944b07..8ba5b8e 100644 --- a/WebKit/win/WebKitDLL.h +++ b/WebKit/win/WebKitDLL.h @@ -33,8 +33,8 @@ #include <winsock2.h> #include <windows.h> #include <wtf/HashCountedSet.h> +#include <wtf/text/StringHash.h> #include <WebCore/PlatformString.h> -#include <WebCore/StringHash.h> #ifdef WEBKIT_EXPORTS #define WEBKIT_API __declspec(dllexport) @@ -48,7 +48,7 @@ extern "C" { extern ULONG gLockCount; extern ULONG gClassCount; -extern HashCountedSet<WebCore::String> gClassNameCount; +extern HashCountedSet<WTF::String> gClassNameCount; extern HINSTANCE gInstance; extern CLSID gRegCLSIDs[]; diff --git a/WebKit/win/WebKitGraphics.cpp b/WebKit/win/WebKitGraphics.cpp index 03fe903..5343608 100644 --- a/WebKit/win/WebKitGraphics.cpp +++ b/WebKit/win/WebKitGraphics.cpp @@ -34,7 +34,6 @@ #pragma warning(push, 0) #include <WebCore/CharacterNames.h> #include <WebCore/Font.h> -#include <WebCore/FontDatabase.h> #include <WebCore/FontDescription.h> #include <WebCore/FontSelector.h> #include <WebCore/GraphicsContext.h> @@ -52,7 +51,6 @@ using namespace WebCore; static Font makeFont(const WebFontDescription& description) { AtomicString::init(); - populateFontDatabase(); String fontFamilyString(description.family, description.familyLength); @@ -114,7 +112,7 @@ void WebDrawText(WebTextRenderInfo* info) // Set shadow setting if (info->structSize == sizeof(WebTextRenderInfo) && (info->shadowOffset.cx || info->shadowOffset.cy || info->shadowBlur || info->shadowColor)) - context.setShadow(info->shadowOffset, info->shadowBlur, info->shadowColor, DeviceColorSpace); + context.setShadow(FloatSize(info->shadowOffset.cx, info->shadowOffset.cy), info->shadowBlur, info->shadowColor, ColorSpaceDeviceRGB); WebCoreDrawTextAtPoint(context, drawString, info->pt, makeFont(*(info->description)), info->color, info->underlinedIndex); context.restore(); diff --git a/WebKit/win/WebKitPrefix.h b/WebKit/win/WebKitPrefix.h index 13cf8e0..2ff6baf 100644 --- a/WebKit/win/WebKitPrefix.h +++ b/WebKit/win/WebKitPrefix.h @@ -24,7 +24,7 @@ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ + */ #ifndef _WIN32_WINNT #define _WIN32_WINNT 0x0500 @@ -34,7 +34,7 @@ #define WINVER 0x0500 #endif -// If we don't define these, they get defined in windef.h. +// If we don't define these, they get defined in windef.h. // We want to use std::min and std::max. #ifndef max #define max max @@ -47,4 +47,5 @@ #define _WINSOCKAPI_ // Prevent inclusion of winsock.h in windows.h #endif +#include <CoreFoundation/CoreFoundation.h> #include <WebKit/WebKit.h> diff --git a/WebKit/win/WebKitSystemBits.cpp b/WebKit/win/WebKitSystemBits.cpp index e8ee0e9..eec6361 100644 --- a/WebKit/win/WebKitSystemBits.cpp +++ b/WebKit/win/WebKitSystemBits.cpp @@ -46,7 +46,7 @@ unsigned long long WebMemorySize() unsigned long long WebVolumeFreeSize(CFStringRef cfstringPath) { - WebCore::String path(cfstringPath); + WTF::String path(cfstringPath); ULARGE_INTEGER freeBytesToCaller; BOOL result = GetDiskFreeSpaceExW((LPCWSTR)path.charactersWithNullTermination(), &freeBytesToCaller, 0, 0); if (!result) diff --git a/WebKit/win/WebLocalizableStrings.cpp b/WebKit/win/WebLocalizableStrings.cpp index 69675e2..da6b221 100644 --- a/WebKit/win/WebLocalizableStrings.cpp +++ b/WebKit/win/WebLocalizableStrings.cpp @@ -29,9 +29,9 @@ #include "WebLocalizableStrings.h" #pragma warning(push, 0) -#include <WebCore/CString.h> #include <WebCore/PlatformString.h> -#include <WebCore/StringHash.h> +#include <wtf/text/CString.h> +#include <wtf/text/StringHash.h> #pragma warning(pop) #include <wtf/Assertions.h> diff --git a/WebKit/win/WebMutableURLRequest.cpp b/WebKit/win/WebMutableURLRequest.cpp index 69555c8..02829d7 100644 --- a/WebKit/win/WebMutableURLRequest.cpp +++ b/WebKit/win/WebMutableURLRequest.cpp @@ -33,10 +33,10 @@ #pragma warning(push, 0) #include <WebCore/BString.h> #include <WebCore/COMPtr.h> -#include <WebCore/CString.h> #include <WebCore/FormData.h> #include <WebCore/NotImplemented.h> #include <WebCore/ResourceHandle.h> +#include <wtf/text/CString.h> #pragma warning(pop) #include <wtf/RetainPtr.h> @@ -320,10 +320,10 @@ HRESULT STDMETHODCALLTYPE WebMutableURLRequest::setMainDocumentURL( } HRESULT STDMETHODCALLTYPE WebMutableURLRequest::setTimeoutInterval( - /* [in] */ double /*timeoutInterval*/) + /* [in] */ double timeoutInterval) { - ASSERT_NOT_REACHED(); - return E_NOTIMPL; + m_request.setTimeoutInterval(timeoutInterval); + return S_OK; } HRESULT STDMETHODCALLTYPE WebMutableURLRequest::setURL( diff --git a/WebKit/win/WebNavigationData.h b/WebKit/win/WebNavigationData.h index d00912c..f4793dc 100644 --- a/WebKit/win/WebNavigationData.h +++ b/WebKit/win/WebNavigationData.h @@ -33,9 +33,9 @@ class WebNavigationData : public IWebNavigationData { public: - static WebNavigationData* createInstance(const WebCore::String& url, const WebCore::String& title, IWebURLRequest*, IWebURLResponse*, bool hasSubstituteData, const WebCore::String& clientRedirectSource); + static WebNavigationData* createInstance(const WTF::String& url, const WTF::String& title, IWebURLRequest*, IWebURLResponse*, bool hasSubstituteData, const WTF::String& clientRedirectSource); private: - WebNavigationData(const WebCore::String& url, const WebCore::String& title, IWebURLRequest*, IWebURLResponse*, bool hasSubstituteData, const WebCore::String& clientRedirectSource); + WebNavigationData(const WTF::String& url, const WTF::String& title, IWebURLRequest*, IWebURLResponse*, bool hasSubstituteData, const WTF::String& clientRedirectSource); ~WebNavigationData(); public: diff --git a/WebKit/win/WebNotificationCenter.cpp b/WebKit/win/WebNotificationCenter.cpp index 919f499..6c22224 100644 --- a/WebKit/win/WebNotificationCenter.cpp +++ b/WebKit/win/WebNotificationCenter.cpp @@ -31,10 +31,10 @@ #pragma warning(push, 0) #include <WebCore/COMPtr.h> #include <WebCore/PlatformString.h> -#include <WebCore/StringHash.h> #include <wtf/HashMap.h> #include <wtf/HashTraits.h> #include <wtf/Vector.h> +#include <wtf/text/StringHash.h> #pragma warning(pop) #include <tchar.h> #include <utility> diff --git a/WebKit/win/WebPreferenceKeysPrivate.h b/WebKit/win/WebPreferenceKeysPrivate.h index 9f768f2..0b781d8 100644 --- a/WebKit/win/WebPreferenceKeysPrivate.h +++ b/WebKit/win/WebPreferenceKeysPrivate.h @@ -49,6 +49,7 @@ #define WebKitJavaScriptEnabledPreferenceKey "WebKitJavaScriptEnabled" #define WebKitWebSecurityEnabledPreferenceKey "WebKitWebSecurityEnabled" #define WebKitAllowUniversalAccessFromFileURLsPreferenceKey "WebKitAllowUniversalAccessFromFileURLs" +#define WebKitAllowFileAccessFromFileURLsPreferenceKey "WebKitAllowFileAccessFromFileURLs" #define WebKitJavaScriptCanOpenWindowsAutomaticallyPreferenceKey "WebKitJavaScriptCanOpenWindowsAutomatically" #define WebKitPluginsEnabledPreferenceKey "WebKitPluginsEnabled" #define WebKitDatabasesEnabledPreferenceKey "WebKitDatabasesEnabled" @@ -65,6 +66,7 @@ #define WebKitUsesPageCachePreferenceKey "WebKitUsesPageCachePreferenceKey" #define WebKitCacheModelPreferenceKey "WebKitCacheModelPreferenceKey" #define WebKitLocalStorageDatabasePathPreferenceKey "WebKitLocalStorageDatabasePath" +#define WebKitHyperlinkAuditingEnabledPreferenceKey "WebKitHyperlinkAuditingEnabled" // These are private both because callers should be using the cover methods and because the // cover methods themselves are private. @@ -73,6 +75,7 @@ #define WebKitPDFDisplayModePreferenceKey "WebKitPDFDisplayMode" #define WebKitPDFScaleFactorPreferenceKey "WebKitPDFScaleFactor" #define WebKitEditableLinkBehaviorPreferenceKey "WebKitEditableLinkBehavior" +#define WebKitEditingBehaviorPreferenceKey "WebKitEditingBehavior" // Window display is throttled to 60 frames per second if WebKitThrottleWindowDisplayPreferenceKey // is set to YES. The window display throttle is OFF by default for compatibility with Mac OS X @@ -124,14 +127,24 @@ #define WebKitZoomsTextOnlyPreferenceKey "WebKitZoomsTextOnly" +#define WebKitJavaScriptCanAccessClipboardPreferenceKey "WebKitJavaScriptCanAccessClipboard" + #define WebKitXSSAuditorEnabledPreferenceKey "WebKitXSSAuditorEnabled" #define WebKitUseHighResolutionTimersPreferenceKey "WebKitUseHighResolutionTimers" #define WebKitPluginAllowedRunTimePreferenceKey "WebKitPluginAllowedRunTime" -#define WebKitFrameSetFlatteningEnabledPreferenceKey "WebKitFrameSetFlatteningEnabled" +#define WebKitFrameFlatteningEnabledPreferenceKey "WebKitFrameFlatteningEnabled" #define WebKitAcceleratedCompositingEnabledPreferenceKey "WebKitAcceleratedCompositingEnabled" +#define WebKitShowDebugBordersPreferenceKey "WebKitShowDebugBorders" + +#define WebKitShowRepaintCounterPreferenceKey "WebKitShowRepaintCounter" + #define WebKitCustomDragCursorsEnabledPreferenceKey "WebKitCustomDragCursorsEnabled" + +#define WebKitDNSPrefetchingEnabledPreferenceKey "WebKitDNSPrefetchingEnabled" + +#define WebKitMemoryInfoEnabledPreferenceKey "WebKitMemoryInfoEnabled" diff --git a/WebKit/win/WebPreferences.cpp b/WebKit/win/WebPreferences.cpp index 13c2ac4..0854ac8 100644 --- a/WebKit/win/WebPreferences.cpp +++ b/WebKit/win/WebPreferences.cpp @@ -32,11 +32,10 @@ #include "WebNotificationCenter.h" #include "WebPreferenceKeysPrivate.h" -#include <WebCore/CString.h> +#include <wtf/text/StringHash.h> #include <WebCore/FileSystem.h> #include <WebCore/Font.h> #include <WebCore/PlatformString.h> -#include <WebCore/StringHash.h> #include <WebCore/WKCACFLayerRenderer.h> #include "WebLocalizableStrings.h" @@ -46,6 +45,7 @@ #include <tchar.h> #include <wtf/HashMap.h> #include <wtf/OwnArrayPtr.h> +#include <wtf/text/CString.h> #if PLATFORM(CG) #include <CoreGraphics/CoreGraphics.h> @@ -102,7 +102,7 @@ static bool booleanValueForPreferencesValue(CFPropertyListRef value) static CFDictionaryRef defaultSettings; -static HashMap<WebCore::String, COMPtr<WebPreferences> > webPreferencesInstances; +static HashMap<WTF::String, COMPtr<WebPreferences> > webPreferencesInstances; WebPreferences* WebPreferences::sharedStandardPreferences() { @@ -154,7 +154,7 @@ WebPreferences* WebPreferences::getInstanceForIdentifier(BSTR identifier) if (!identifier) return sharedStandardPreferences(); - WebCore::String identifierString(identifier, SysStringLen(identifier)); + WTF::String identifierString(identifier, SysStringLen(identifier)); return webPreferencesInstances.get(identifierString).get(); } @@ -162,7 +162,7 @@ void WebPreferences::setInstance(WebPreferences* instance, BSTR identifier) { if (!identifier || !instance) return; - WebCore::String identifierString(identifier, SysStringLen(identifier)); + WTF::String identifierString(identifier, SysStringLen(identifier)); webPreferencesInstances.add(identifierString, instance); } @@ -171,7 +171,7 @@ void WebPreferences::removeReferenceForIdentifier(BSTR identifier) if (!identifier || webPreferencesInstances.isEmpty()) return; - WebCore::String identifierString(identifier, SysStringLen(identifier)); + WTF::String identifierString(identifier, SysStringLen(identifier)); WebPreferences* webPreference = webPreferencesInstances.get(identifierString).get(); if (webPreference && webPreference->m_refCount == 1) webPreferencesInstances.remove(identifierString); @@ -190,11 +190,11 @@ void WebPreferences::initializeDefaultSettings() CFDictionaryAddValue(defaults, CFSTR(WebKitSansSerifFontPreferenceKey), CFSTR("Arial")); CFDictionaryAddValue(defaults, CFSTR(WebKitCursiveFontPreferenceKey), CFSTR("Comic Sans MS")); CFDictionaryAddValue(defaults, CFSTR(WebKitFantasyFontPreferenceKey), CFSTR("Comic Sans MS")); - CFDictionaryAddValue(defaults, CFSTR(WebKitMinimumFontSizePreferenceKey), CFSTR("1")); + CFDictionaryAddValue(defaults, CFSTR(WebKitMinimumFontSizePreferenceKey), CFSTR("0")); CFDictionaryAddValue(defaults, CFSTR(WebKitMinimumLogicalFontSizePreferenceKey), CFSTR("9")); CFDictionaryAddValue(defaults, CFSTR(WebKitDefaultFontSizePreferenceKey), CFSTR("16")); CFDictionaryAddValue(defaults, CFSTR(WebKitDefaultFixedFontSizePreferenceKey), CFSTR("13")); - WebCore::String defaultDefaultEncoding(LPCTSTR_UI_STRING("ISO-8859-1", "The default, default character encoding")); + WTF::String defaultDefaultEncoding(LPCTSTR_UI_STRING("ISO-8859-1", "The default, default character encoding")); CFDictionaryAddValue(defaults, CFSTR(WebKitDefaultTextEncodingNamePreferenceKey), defaultDefaultEncoding.createCFString()); CFDictionaryAddValue(defaults, CFSTR(WebKitUserStyleSheetEnabledPreferenceKey), kCFBooleanFalse); @@ -205,8 +205,10 @@ void WebPreferences::initializeDefaultSettings() CFDictionaryAddValue(defaults, CFSTR(WebKitJavaScriptEnabledPreferenceKey), kCFBooleanTrue); CFDictionaryAddValue(defaults, CFSTR(WebKitWebSecurityEnabledPreferenceKey), kCFBooleanTrue); CFDictionaryAddValue(defaults, CFSTR(WebKitAllowUniversalAccessFromFileURLsPreferenceKey), kCFBooleanFalse); + CFDictionaryAddValue(defaults, CFSTR(WebKitAllowFileAccessFromFileURLsPreferenceKey), kCFBooleanTrue); + CFDictionaryAddValue(defaults, CFSTR(WebKitJavaScriptCanAccessClipboardPreferenceKey), kCFBooleanFalse); CFDictionaryAddValue(defaults, CFSTR(WebKitXSSAuditorEnabledPreferenceKey), kCFBooleanTrue); - CFDictionaryAddValue(defaults, CFSTR(WebKitFrameSetFlatteningEnabledPreferenceKey), kCFBooleanFalse); + CFDictionaryAddValue(defaults, CFSTR(WebKitFrameFlatteningEnabledPreferenceKey), kCFBooleanFalse); CFDictionaryAddValue(defaults, CFSTR(WebKitJavaScriptCanOpenWindowsAutomaticallyPreferenceKey), kCFBooleanTrue); CFDictionaryAddValue(defaults, CFSTR(WebKitPluginsEnabledPreferenceKey), kCFBooleanTrue); CFDictionaryAddValue(defaults, CFSTR(WebKitDatabasesEnabledPreferenceKey), kCFBooleanTrue); @@ -255,7 +257,14 @@ void WebPreferences::initializeDefaultSettings() RetainPtr<CFStringRef> pluginAllowedRunTime(AdoptCF, CFStringCreateWithFormat(0, 0, CFSTR("%u"), numeric_limits<unsigned>::max())); CFDictionaryAddValue(defaults, CFSTR(WebKitPluginAllowedRunTimePreferenceKey), pluginAllowedRunTime.get()); - CFDictionaryAddValue(defaults, CFSTR(WebKitAcceleratedCompositingEnabledPreferenceKey), kCFBooleanTrue); + CFDictionaryAddValue(defaults, CFSTR(WebKitAcceleratedCompositingEnabledPreferenceKey), kCFBooleanFalse); + + CFDictionaryAddValue(defaults, CFSTR(WebKitShowDebugBordersPreferenceKey), kCFBooleanFalse); + + CFDictionaryAddValue(defaults, CFSTR(WebKitDNSPrefetchingEnabledPreferenceKey), kCFBooleanTrue); + + CFDictionaryAddValue(defaults, CFSTR(WebKitMemoryInfoEnabledPreferenceKey), kCFBooleanFalse); + CFDictionaryAddValue(defaults, CFSTR(WebKitHyperlinkAuditingEnabledPreferenceKey), kCFBooleanFalse); defaultSettings = defaults; } @@ -419,7 +428,7 @@ void WebPreferences::migrateWebKitPreferencesToCFPreferences() setBoolValue(didMigrateKey, TRUE); m_autoSaves = oldValue; - CString path = oldPreferencesPath().utf8(); + WTF::CString path = oldPreferencesPath().utf8(); RetainPtr<CFURLRef> urlRef(AdoptCF, CFURLCreateFromFileSystemRepresentation(0, reinterpret_cast<const UInt8*>(path.data()), path.length(), false)); if (!urlRef) @@ -792,6 +801,34 @@ HRESULT STDMETHODCALLTYPE WebPreferences::setAllowUniversalAccessFromFileURLs( return S_OK; } +HRESULT STDMETHODCALLTYPE WebPreferences::allowFileAccessFromFileURLs( + /* [retval][out] */ BOOL* allowAccess) +{ + *allowAccess = boolValueForKey(CFSTR(WebKitAllowFileAccessFromFileURLsPreferenceKey)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::setAllowFileAccessFromFileURLs( + /* [in] */ BOOL allowAccess) +{ + setBoolValue(CFSTR(WebKitAllowFileAccessFromFileURLsPreferenceKey), allowAccess); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::javaScriptCanAccessClipboard( + /* [retval][out] */ BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitJavaScriptCanAccessClipboardPreferenceKey)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::setJavaScriptCanAccessClipboard( + /* [in] */ BOOL enabled) +{ + setBoolValue(CFSTR(WebKitJavaScriptCanAccessClipboardPreferenceKey), enabled); + return S_OK; +} + HRESULT STDMETHODCALLTYPE WebPreferences::isXSSAuditorEnabled( /* [retval][out] */ BOOL* enabled) { @@ -806,17 +843,17 @@ HRESULT STDMETHODCALLTYPE WebPreferences::setXSSAuditorEnabled( return S_OK; } -HRESULT STDMETHODCALLTYPE WebPreferences::isFrameSetFlatteningEnabled( +HRESULT STDMETHODCALLTYPE WebPreferences::isFrameFlatteningEnabled( /* [retval][out] */ BOOL* enabled) { - *enabled = boolValueForKey(CFSTR(WebKitFrameSetFlatteningEnabledPreferenceKey)); + *enabled = boolValueForKey(CFSTR(WebKitFrameFlatteningEnabledPreferenceKey)); return S_OK; } -HRESULT STDMETHODCALLTYPE WebPreferences::setFrameSetFlatteningEnabled( +HRESULT STDMETHODCALLTYPE WebPreferences::setFrameFlatteningEnabled( /* [in] */ BOOL enabled) { - setBoolValue(CFSTR(WebKitFrameSetFlatteningEnabledPreferenceKey), enabled); + setBoolValue(CFSTR(WebKitFrameFlatteningEnabledPreferenceKey), enabled); return S_OK; } @@ -1098,6 +1135,34 @@ HRESULT STDMETHODCALLTYPE WebPreferences::setEditableLinkBehavior( return S_OK; } +HRESULT STDMETHODCALLTYPE WebPreferences::editingBehavior( + /* [out, retval] */ WebKitEditingBehavior* editingBehavior) +{ + *editingBehavior = (WebKitEditingBehavior) integerValueForKey(CFSTR(WebKitEditingBehaviorPreferenceKey)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::setEditingBehavior( + /* [in] */ WebKitEditingBehavior behavior) +{ + setIntegerValue(CFSTR(WebKitEditingBehaviorPreferenceKey), behavior); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::hyperlinkAuditingEnabled( + /* [in] */ BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitHyperlinkAuditingEnabledPreferenceKey)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebPreferences::setHyperlinkAuditingEnabled( + /* [retval][out] */ BOOL enabled) +{ + setBoolValue(CFSTR(WebKitHyperlinkAuditingEnabledPreferenceKey), enabled); + return S_OK; +} + HRESULT STDMETHODCALLTYPE WebPreferences::cookieStorageAcceptPolicy( /* [retval][out] */ WebKitCookieStorageAcceptPolicy *acceptPolicy ) { @@ -1388,6 +1453,30 @@ HRESULT WebPreferences::acceleratedCompositingEnabled(BOOL* enabled) return S_OK; } +HRESULT WebPreferences::showDebugBorders(BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitShowDebugBordersPreferenceKey)); + return S_OK; +} + +HRESULT WebPreferences::setShowDebugBorders(BOOL enabled) +{ + setBoolValue(CFSTR(WebKitShowDebugBordersPreferenceKey), enabled); + return S_OK; +} + +HRESULT WebPreferences::showRepaintCounter(BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitShowRepaintCounterPreferenceKey)); + return S_OK; +} + +HRESULT WebPreferences::setShowRepaintCounter(BOOL enabled) +{ + setBoolValue(CFSTR(WebKitShowRepaintCounterPreferenceKey), enabled); + return S_OK; +} + HRESULT WebPreferences::setCustomDragCursorsEnabled(BOOL enabled) { setBoolValue(CFSTR(WebKitCustomDragCursorsEnabledPreferenceKey), enabled); @@ -1400,6 +1489,30 @@ HRESULT WebPreferences::customDragCursorsEnabled(BOOL* enabled) return S_OK; } +HRESULT WebPreferences::setDNSPrefetchingEnabled(BOOL enabled) +{ + setBoolValue(CFSTR(WebKitDNSPrefetchingEnabledPreferenceKey), enabled); + return S_OK; +} + +HRESULT WebPreferences::isDNSPrefetchingEnabled(BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitDNSPrefetchingEnabledPreferenceKey)); + return S_OK; +} + +HRESULT WebPreferences::memoryInfoEnabled(BOOL* enabled) +{ + *enabled = boolValueForKey(CFSTR(WebKitMemoryInfoEnabledPreferenceKey)); + return S_OK; +} + +HRESULT WebPreferences::setMemoryInfoEnabled(BOOL enabled) +{ + setBoolValue(CFSTR(WebKitMemoryInfoEnabledPreferenceKey), enabled); + return S_OK; +} + void WebPreferences::willAddToWebView() { ++m_numWebViews; diff --git a/WebKit/win/WebPreferences.h b/WebKit/win/WebPreferences.h index 9209b7d..d09945a 100644 --- a/WebKit/win/WebPreferences.h +++ b/WebKit/win/WebPreferences.h @@ -238,6 +238,12 @@ public: virtual HRESULT STDMETHODCALLTYPE setEditableLinkBehavior( /* [in] */ WebKitEditableLinkBehavior behavior); + virtual HRESULT STDMETHODCALLTYPE editingBehavior( + /* [retval][out] */ WebKitEditingBehavior* behavior); + + virtual HRESULT STDMETHODCALLTYPE setEditingBehavior( + /* [in] */ WebKitEditingBehavior behavior); + virtual HRESULT STDMETHODCALLTYPE cookieStorageAcceptPolicy( /* [retval][out] */ WebKitCookieStorageAcceptPolicy *acceptPolicy); @@ -362,6 +368,18 @@ public: virtual HRESULT STDMETHODCALLTYPE setAllowUniversalAccessFromFileURLs( /* [in] */ BOOL allowAccess); + virtual HRESULT STDMETHODCALLTYPE allowFileAccessFromFileURLs( + /* [retval][out] */ BOOL* allowAccess); + + virtual HRESULT STDMETHODCALLTYPE setAllowFileAccessFromFileURLs( + /* [in] */ BOOL allowAccess); + + virtual HRESULT STDMETHODCALLTYPE javaScriptCanAccessClipboard( + /* [retval][out] */ BOOL* enabled); + + virtual HRESULT STDMETHODCALLTYPE setJavaScriptCanAccessClipboard( + /* [in] */ BOOL enabled); + virtual HRESULT STDMETHODCALLTYPE isXSSAuditorEnabled( /* [retval][out] */ BOOL* enabled); @@ -380,10 +398,10 @@ public: virtual HRESULT STDMETHODCALLTYPE pluginAllowedRunTime( /* [retval][out] */ UINT* allowedRunTime); - virtual HRESULT STDMETHODCALLTYPE isFrameSetFlatteningEnabled( + virtual HRESULT STDMETHODCALLTYPE isFrameFlatteningEnabled( /* [retval][out] */ BOOL* enabled); - virtual HRESULT STDMETHODCALLTYPE setFrameSetFlatteningEnabled( + virtual HRESULT STDMETHODCALLTYPE setFrameFlatteningEnabled( /* [in] */ BOOL enabled); virtual HRESULT STDMETHODCALLTYPE setPreferenceForTest( @@ -396,6 +414,21 @@ public: virtual HRESULT STDMETHODCALLTYPE setCustomDragCursorsEnabled(BOOL); virtual HRESULT STDMETHODCALLTYPE customDragCursorsEnabled(BOOL*); + virtual HRESULT STDMETHODCALLTYPE setShowDebugBorders(BOOL); + virtual HRESULT STDMETHODCALLTYPE showDebugBorders(BOOL*); + + virtual HRESULT STDMETHODCALLTYPE setShowRepaintCounter(BOOL); + virtual HRESULT STDMETHODCALLTYPE showRepaintCounter(BOOL*); + + virtual HRESULT STDMETHODCALLTYPE setDNSPrefetchingEnabled(BOOL); + virtual HRESULT STDMETHODCALLTYPE isDNSPrefetchingEnabled(BOOL*); + + virtual HRESULT STDMETHODCALLTYPE setMemoryInfoEnabled(BOOL); + virtual HRESULT STDMETHODCALLTYPE memoryInfoEnabled(BOOL*); + + virtual HRESULT STDMETHODCALLTYPE hyperlinkAuditingEnabled(BOOL*); + virtual HRESULT STDMETHODCALLTYPE setHyperlinkAuditingEnabled(BOOL); + // WebPreferences // This method accesses a different preference key than developerExtrasEnabled. diff --git a/WebKit/win/WebResource.cpp b/WebKit/win/WebResource.cpp index d02bcc5..506e55d 100644 --- a/WebKit/win/WebResource.cpp +++ b/WebKit/win/WebResource.cpp @@ -38,7 +38,7 @@ using namespace WebCore; // WebResource --------------------------------------------------------------------- -WebResource::WebResource(IStream* data, const WebCore::KURL& url, const WebCore::String& mimeType, const WebCore::String& textEncodingName, const WebCore::String& frameName) +WebResource::WebResource(IStream* data, const WebCore::KURL& url, const WTF::String& mimeType, const WTF::String& textEncodingName, const WTF::String& frameName) : m_refCount(0) , m_data(data) , m_url(url) diff --git a/WebKit/win/WebResource.h b/WebKit/win/WebResource.h index d67cb56..7c6759a 100644 --- a/WebKit/win/WebResource.h +++ b/WebKit/win/WebResource.h @@ -41,7 +41,7 @@ class WebResource : public IWebResource { public: static WebResource* createInstance(PassRefPtr<WebCore::SharedBuffer> data, const WebCore::ResourceResponse& response); protected: - WebResource(IStream* data, const WebCore::KURL& url, const WebCore::String& mimeType, const WebCore::String& textEncodingName, const WebCore::String& frameName); + WebResource(IStream* data, const WebCore::KURL& url, const WTF::String& mimeType, const WTF::String& textEncodingName, const WTF::String& frameName); ~WebResource(); public: @@ -77,9 +77,9 @@ private: ULONG m_refCount; COMPtr<IStream> m_data; WebCore::KURL m_url; - WebCore::String m_mimeType; - WebCore::String m_textEncodingName; - WebCore::String m_frameName; + WTF::String m_mimeType; + WTF::String m_textEncodingName; + WTF::String m_frameName; }; #endif diff --git a/WebKit/win/WebScriptWorld.cpp b/WebKit/win/WebScriptWorld.cpp index 7bc04eb..9c661d9 100644 --- a/WebKit/win/WebScriptWorld.cpp +++ b/WebKit/win/WebScriptWorld.cpp @@ -136,3 +136,9 @@ HRESULT WebScriptWorld::scriptWorldForGlobalContext(JSGlobalContextRef context, return E_POINTER; return findOrCreateWorld(currentWorld(toJS(context))).copyRefTo(outWorld); } + +HRESULT WebScriptWorld::unregisterWorld() +{ + m_world->unregisterWorld(); + return S_OK; +} diff --git a/WebKit/win/WebScriptWorld.h b/WebKit/win/WebScriptWorld.h index dc7e9db..f088a72 100644 --- a/WebKit/win/WebScriptWorld.h +++ b/WebKit/win/WebScriptWorld.h @@ -52,6 +52,7 @@ private: virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, void** ppvObject); virtual HRESULT STDMETHODCALLTYPE standardWorld(IWebScriptWorld**); virtual HRESULT STDMETHODCALLTYPE scriptWorldForGlobalContext(JSGlobalContextRef, IWebScriptWorld**); + virtual HRESULT STDMETHODCALLTYPE unregisterWorld(); ULONG m_refCount; RefPtr<WebCore::DOMWrapperWorld> m_world; diff --git a/WebKit/win/WebScrollBar.cpp b/WebKit/win/WebScrollBar.cpp index ccf40d9..8613c1c 100644 --- a/WebKit/win/WebScrollBar.cpp +++ b/WebKit/win/WebScrollBar.cpp @@ -143,7 +143,7 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::setRect( HRESULT STDMETHODCALLTYPE WebScrollBar::setValue( /* [in] */ int value) { - m_scrollBar->setValue(value); + m_scrollBar->setValue(value, Scrollbar::NotFromScrollAnimator); return S_OK; } @@ -252,6 +252,16 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::scroll( } // ScrollbarClient ------------------------------------------------------- +int WebScrollBar::scrollSize(ScrollbarOrientation orientation) const +{ + return (orientation == m_scrollBar->orientation()) ? (m_scrollBar->totalSize() - m_scrollBar->visibleSize()) : 0; +} + +void WebScrollBar::setScrollOffsetFromAnimation(const IntPoint& offset) +{ + m_scrollBar->setValue((m_scrollBar->orientation() == HorizontalScrollbar) ? offset.x() : offset.y(), Scrollbar::FromScrollAnimator); +} + void WebScrollBar::valueChanged(Scrollbar* scrollBar) { if (m_scrollBar != scrollBar) { diff --git a/WebKit/win/WebScrollBar.h b/WebKit/win/WebScrollBar.h index 0fed8a3..90f2491 100644 --- a/WebKit/win/WebScrollBar.h +++ b/WebKit/win/WebScrollBar.h @@ -116,6 +116,8 @@ public: protected: // ScrollbarClient + virtual int scrollSize(ScrollbarOrientation orientation) const; + virtual void setScrollOffsetFromAnimation(const IntPoint&); virtual void valueChanged(Scrollbar*); virtual void invalidateScrollbarRect(Scrollbar*, const IntRect&); diff --git a/WebKit/win/WebSerializedJSValue.cpp b/WebKit/win/WebSerializedJSValue.cpp index 307df90..7f6e3b0 100644 --- a/WebKit/win/WebSerializedJSValue.cpp +++ b/WebKit/win/WebSerializedJSValue.cpp @@ -69,10 +69,12 @@ HRESULT WebSerializedJSValue::QueryInterface(REFIID riid, void** ppvObject) if (IsEqualIID(riid, __uuidof(WebSerializedJSValue))) *ppvObject = this; + else if (IsEqualGUID(riid, IID_IUnknown)) + *ppvObject = static_cast<IWebSerializedJSValue*>(this); else if (IsEqualIID(riid, __uuidof(IWebSerializedJSValue))) *ppvObject = static_cast<IWebSerializedJSValue*>(this); - else if (IsEqualIID(riid, IID_IUnknown)) - *ppvObject = static_cast<IUnknown*>(this); + else if (IsEqualIID(riid, __uuidof(IWebSerializedJSValuePrivate))) + *ppvObject = static_cast<IWebSerializedJSValuePrivate*>(this); else return E_NOINTERFACE; @@ -105,3 +107,23 @@ HRESULT WebSerializedJSValue::deserialize(JSContextRef destinationContext, JSVal return S_OK; } + +HRESULT WebSerializedJSValue::setInternalRepresentation(void* internalRepresentation) +{ + if (!internalRepresentation || m_value) + return E_POINTER; + + m_value = reinterpret_cast<SerializedScriptValue*>(internalRepresentation); + + return S_OK; +} + +HRESULT WebSerializedJSValue::getInternalRepresentation(void** internalRepresentation) +{ + if (!m_value) + return E_POINTER; + + *internalRepresentation = m_value.get(); + return S_OK; +} + diff --git a/WebKit/win/WebSerializedJSValue.h b/WebKit/win/WebSerializedJSValue.h index d39323c..a2d6d56 100644 --- a/WebKit/win/WebSerializedJSValue.h +++ b/WebKit/win/WebSerializedJSValue.h @@ -34,7 +34,7 @@ namespace WebCore { class SerializedScriptValue; } -class WebSerializedJSValue : public Noncopyable, public IWebSerializedJSValue { +class WebSerializedJSValue : public Noncopyable, public IWebSerializedJSValue, public IWebSerializedJSValuePrivate { public: static COMPtr<WebSerializedJSValue> createInstance(); @@ -43,6 +43,8 @@ public: virtual HRESULT STDMETHODCALLTYPE serialize(JSContextRef, JSValueRef value, JSValueRef* exception); virtual HRESULT STDMETHODCALLTYPE deserialize(JSContextRef, JSValueRef* result); + virtual HRESULT STDMETHODCALLTYPE setInternalRepresentation(void* internalRepresentation); + virtual HRESULT STDMETHODCALLTYPE getInternalRepresentation(void** internalRepresentation); private: WebSerializedJSValue(); diff --git a/WebKit/win/WebTextRenderer.cpp b/WebKit/win/WebTextRenderer.cpp index 7ff2ff3..6d6d9a3 100644 --- a/WebKit/win/WebTextRenderer.cpp +++ b/WebKit/win/WebTextRenderer.cpp @@ -31,12 +31,6 @@ #include "WebKitDLL.h" -#include <CoreFoundation/CFString.h> -#if PLATFORM(CG) -#include <WebKitSystemInterface/WebKitSystemInterface.h> -#endif -#include <wtf/RetainPtr.h> - WebTextRenderer* WebTextRenderer::createInstance() { WebTextRenderer* instance = new WebTextRenderer; @@ -91,9 +85,5 @@ HRESULT STDMETHODCALLTYPE WebTextRenderer::registerPrivateFont( if (!AddFontResourceEx(fontFilePath, FR_PRIVATE, 0)) return E_FAIL; - RetainPtr<CFStringRef> string(AdoptCF, CFStringCreateWithCharacters(0, reinterpret_cast<const UniChar*>(fontFilePath), static_cast<CFIndex>(wcslen(fontFilePath)))); -#if PLATFORM(CG) - wkAddFontsAtPath(string.get()); -#endif return S_OK; } diff --git a/WebKit/win/WebURLProtectionSpace.cpp b/WebKit/win/WebURLProtectionSpace.cpp index c3d78bb..6086abb 100644 --- a/WebKit/win/WebURLProtectionSpace.cpp +++ b/WebKit/win/WebURLProtectionSpace.cpp @@ -166,8 +166,6 @@ HRESULT STDMETHODCALLTYPE WebURLProtectionSpace::initWithHost( serverType = ProtectionSpaceServerFTP; else if (BString(protocol) == webURLProtectionSpaceFTPSBString) serverType = ProtectionSpaceServerFTPS; - else - ASSERT_NOT_REACHED(); m_protectionSpace = ProtectionSpace(String(host, SysStringLen(host)), port, serverType, String(realm, SysStringLen(realm)), coreScheme(authenticationMethod)); diff --git a/WebKit/win/WebUserContentURLPattern.cpp b/WebKit/win/WebUserContentURLPattern.cpp new file mode 100644 index 0000000..1c8c569 --- /dev/null +++ b/WebKit/win/WebUserContentURLPattern.cpp @@ -0,0 +1,130 @@ +/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "config.h" +#include "WebUserContentURLPattern.h" + +#include "MarshallingHelpers.h" +#include "WebKitDLL.h" + +#include <WebCore/BString.h> +#include <WebCore/KURL.h> + +using namespace WebCore; + +inline WebUserContentURLPattern::WebUserContentURLPattern() + : m_refCount(0) +{ + ++gClassCount; + gClassNameCount.add("WebUserContentURLPattern"); +} + +WebUserContentURLPattern::~WebUserContentURLPattern() +{ + --gClassCount; + gClassNameCount.remove("WebUserContentURLPattern"); +} + +COMPtr<WebUserContentURLPattern> WebUserContentURLPattern::createInstance() +{ + return new WebUserContentURLPattern; +} + +ULONG WebUserContentURLPattern::AddRef() +{ + return ++m_refCount; +} + +ULONG WebUserContentURLPattern::Release() +{ + ULONG newRefCount = --m_refCount; + if (!newRefCount) + delete this; + return newRefCount; +} + +HRESULT WebUserContentURLPattern::QueryInterface(REFIID riid, void** ppvObject) +{ + if (!ppvObject) + return E_POINTER; + *ppvObject = 0; + + if (IsEqualIID(riid, __uuidof(WebUserContentURLPattern))) + *ppvObject = this; + else if (IsEqualIID(riid, __uuidof(IWebUserContentURLPattern))) + *ppvObject = static_cast<IWebUserContentURLPattern*>(this); + else if (IsEqualIID(riid, IID_IUnknown)) + *ppvObject = static_cast<IUnknown*>(this); + else + return E_NOINTERFACE; + + AddRef(); + return S_OK; +} + +HRESULT WebUserContentURLPattern::parse(BSTR patternString) +{ + m_pattern = UserContentURLPattern(String(patternString, SysStringLen(patternString))); + return S_OK; +} + +HRESULT WebUserContentURLPattern::isValid(BOOL* isValid) +{ + if (!isValid) + return E_POINTER; + *isValid = m_pattern.isValid(); + return S_OK; +} + +HRESULT WebUserContentURLPattern::scheme(BSTR* scheme) +{ + if (!scheme) + return E_POINTER; + *scheme = BString(m_pattern.scheme()).release(); + return S_OK; +} + +HRESULT WebUserContentURLPattern::host(BSTR* host) +{ + if (!host) + return E_POINTER; + *host = BString(m_pattern.host()).release(); + return S_OK; +} + +HRESULT WebUserContentURLPattern::matchesSubdomains(BOOL* matches) +{ + if (!matches) + return E_POINTER; + *matches = m_pattern.matchSubdomains(); + return S_OK; +} + +HRESULT WebUserContentURLPattern::matchesURL(BSTR url, BOOL* matches) +{ + if (!matches) + return E_POINTER; + *matches = m_pattern.matches(MarshallingHelpers::BSTRToKURL(url)); + return S_OK; +} diff --git a/WebKit/win/WebUserContentURLPattern.h b/WebKit/win/WebUserContentURLPattern.h new file mode 100644 index 0000000..e8f6b67 --- /dev/null +++ b/WebKit/win/WebUserContentURLPattern.h @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2010 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef WebUserContentURLPattern_h +#define WebUserContentURLPattern_h + +#include <WebCore/COMPtr.h> +#include <WebCore/UserContentURLPattern.h> + +namespace WebCore { + class UserContentURLPattern; +} + +class WebUserContentURLPattern : public Noncopyable, public IWebUserContentURLPattern { +public: + static COMPtr<WebUserContentURLPattern> createInstance(); + + virtual ULONG STDMETHODCALLTYPE AddRef(); + virtual ULONG STDMETHODCALLTYPE Release(); + +private: + WebUserContentURLPattern(); + ~WebUserContentURLPattern(); + + virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, void** ppvObject); + virtual HRESULT STDMETHODCALLTYPE parse(BSTR patternString); + virtual HRESULT STDMETHODCALLTYPE isValid(BOOL*); + virtual HRESULT STDMETHODCALLTYPE scheme(BSTR*); + virtual HRESULT STDMETHODCALLTYPE host(BSTR*); + virtual HRESULT STDMETHODCALLTYPE matchesSubdomains(BOOL* matches); + virtual HRESULT STDMETHODCALLTYPE matchesURL(BSTR, BOOL*); + + ULONG m_refCount; + WebCore::UserContentURLPattern m_pattern; +}; + +#endif // WebScriptWorld_h diff --git a/WebKit/win/WebView.cpp b/WebKit/win/WebView.cpp index 880c75f..20c8d17 100644 --- a/WebKit/win/WebView.cpp +++ b/WebKit/win/WebView.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006, 2007, 2008 Apple, Inc. All rights reserved. + * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple, Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -24,7 +24,6 @@ */ #include "config.h" - #include "WebView.h" #include "CFDictionaryPropertyBag.h" @@ -43,7 +42,7 @@ #include "WebEditorClient.h" #include "WebElementPropertyBag.h" #include "WebFrame.h" -#include "WebGeolocationControllerClient.h" +#include "WebGeolocationClient.h" #include "WebGeolocationPosition.h" #include "WebIconDatabase.h" #include "WebInspector.h" @@ -55,24 +54,25 @@ #include "WebKitSystemBits.h" #include "WebMutableURLRequest.h" #include "WebNotificationCenter.h" +#include "WebPlatformStrategies.h" #include "WebPluginHalterClient.h" #include "WebPreferences.h" #include "WebScriptWorld.h" #include "WindowsTouch.h" +#include <JavaScriptCore/APICast.h> #include <JavaScriptCore/InitializeThreading.h> #include <JavaScriptCore/JSLock.h> #include <JavaScriptCore/JSValue.h> +#include <WebCore/AbstractDatabase.h> #include <WebCore/AXObjectCache.h> #include <WebCore/ApplicationCacheStorage.h> #include <WebCore/BString.h> -#include <WebCore/BackForwardList.h> +#include <WebCore/BackForwardListImpl.h> #include <WebCore/BitmapInfo.h> -#include <WebCore/CString.h> -#include <WebCore/Cache.h> +#include <WebCore/MemoryCache.h> #include <WebCore/Chrome.h> #include <WebCore/ContextMenu.h> #include <WebCore/ContextMenuController.h> -#include <WebCore/CookieStorageWin.h> #include <WebCore/Cursor.h> #include <WebCore/Document.h> #include <WebCore/DragController.h> @@ -95,6 +95,7 @@ #include <WebCore/HitTestRequest.h> #include <WebCore/HitTestResult.h> #include <WebCore/IntRect.h> +#include <WebCore/JSElement.h> #include <WebCore/KeyboardEvent.h> #include <WebCore/Language.h> #include <WebCore/Logging.h> @@ -105,16 +106,20 @@ #include <WebCore/PlatformKeyboardEvent.h> #include <WebCore/PlatformMouseEvent.h> #include <WebCore/PlatformWheelEvent.h> +#include <WebCore/PluginData.h> #include <WebCore/PluginDatabase.h> -#include <WebCore/PluginInfoStore.h> #include <WebCore/PluginView.h> #include <WebCore/PopupMenu.h> +#include <WebCore/PopupMenuWin.h> #include <WebCore/ProgressTracker.h> +#include <WebCore/RenderLayer.h> #include <WebCore/RenderTheme.h> +#include <WebCore/RenderTreeAsText.h> #include <WebCore/RenderView.h> #include <WebCore/RenderWidget.h> #include <WebCore/ResourceHandle.h> #include <WebCore/ResourceHandleClient.h> +#include <WebCore/SchemeRegistry.h> #include <WebCore/ScriptValue.h> #include <WebCore/Scrollbar.h> #include <WebCore/ScrollbarTheme.h> @@ -124,6 +129,7 @@ #include <WebCore/SimpleFontData.h> #include <WebCore/TypingCommand.h> #include <WebCore/WindowMessageBroadcaster.h> +#include <wtf/Threading.h> #if ENABLE(CLIENT_BASED_GEOLOCATION) #include <WebCore/GeolocationController.h> @@ -141,6 +147,7 @@ #if USE(CFNETWORK) #include <CFNetwork/CFURLCachePriv.h> #include <CFNetwork/CFURLProtocolPriv.h> +#include <WebCore/CookieStorageCFNet.h> #include <WebKitSystemInterface/WebKitSystemInterface.h> #endif @@ -151,6 +158,8 @@ #include <tchar.h> #include <windowsx.h> #include <wtf/HashSet.h> +#include <wtf/text/CString.h> +#include <wtf/text/StringConcatenate.h> // Soft link functions for gestures and panning feedback SOFT_LINK_LIBRARY(USER32); @@ -318,6 +327,7 @@ WebView::WebView() , m_useBackForwardList(true) , m_userAgentOverridden(false) , m_zoomMultiplier(1.0f) + , m_zoomsTextOnly(false) , m_mouseActivated(false) , m_dragData(0) , m_currentCharacterCode(0) @@ -328,7 +338,7 @@ WebView::WebView() , m_didClose(false) , m_inIMEComposition(0) , m_toolTipHwnd(0) - , m_closeWindowTimer(this, &WebView::closeWindowTimerFired) + , m_closeWindowTimer(0) , m_topLevelParent(0) , m_deleteBackingStoreTimerActive(false) , m_transparent(false) @@ -340,8 +350,11 @@ WebView::WebView() #if USE(ACCELERATED_COMPOSITING) , m_isAcceleratedCompositing(false) #endif + , m_nextDisplayIsSynchronous(false) + , m_lastSetCursor(0) { JSC::initializeThreading(); + WTF::initializeMainThread(); m_backingStoreSize.cx = m_backingStoreSize.cy = 0; @@ -736,6 +749,10 @@ void WebView::deleteBackingStore() } m_backingStoreBitmap.clear(); m_backingStoreDirtyRegion.clear(); +#if USE(ACCELERATED_COMPOSITING) + if (m_layerRenderer) + m_layerRenderer->setBackingStoreDirty(false); +#endif m_backingStoreSize.cx = m_backingStoreSize.cy = 0; } @@ -754,7 +771,7 @@ bool WebView::ensureBackingStore() BitmapInfo bitmapInfo = BitmapInfo::createBottomUp(IntSize(m_backingStoreSize)); void* pixels = NULL; - m_backingStoreBitmap.set(::CreateDIBSection(NULL, &bitmapInfo, DIB_RGB_COLORS, &pixels, NULL, 0)); + m_backingStoreBitmap = RefCountedHBITMAP::create(::CreateDIBSection(0, &bitmapInfo, DIB_RGB_COLORS, &pixels, 0, 0)); return true; } @@ -778,11 +795,16 @@ void WebView::addToDirtyRegion(HRGN newRegion) if (m_backingStoreDirtyRegion) { HRGN combinedRegion = ::CreateRectRgn(0,0,0,0); - ::CombineRgn(combinedRegion, m_backingStoreDirtyRegion.get(), newRegion, RGN_OR); + ::CombineRgn(combinedRegion, m_backingStoreDirtyRegion->handle(), newRegion, RGN_OR); ::DeleteObject(newRegion); - m_backingStoreDirtyRegion.set(combinedRegion); + m_backingStoreDirtyRegion = RefCountedHRGN::create(combinedRegion); } else - m_backingStoreDirtyRegion.set(newRegion); + m_backingStoreDirtyRegion = RefCountedHRGN::create(newRegion); + +#if USE(ACCELERATED_COMPOSITING) + if (m_layerRenderer) + m_layerRenderer->setBackingStoreDirty(true); +#endif if (m_uiDelegatePrivate) m_uiDelegatePrivate->webViewDidInvalidate(this); @@ -806,7 +828,7 @@ void WebView::scrollBackingStore(FrameView* frameView, int dx, int dy, const Int // Collect our device context info and select the bitmap to scroll. HDC windowDC = ::GetDC(m_viewWindow); HDC bitmapDC = ::CreateCompatibleDC(windowDC); - ::SelectObject(bitmapDC, m_backingStoreBitmap.get()); + HGDIOBJ oldBitmap = ::SelectObject(bitmapDC, m_backingStoreBitmap->handle()); // Scroll the bitmap. RECT scrollRectWin(scrollViewRect); @@ -828,10 +850,24 @@ void WebView::scrollBackingStore(FrameView* frameView, int dx, int dy, const Int updateBackingStore(frameView, bitmapDC, false); // Clean up. + ::SelectObject(bitmapDC, oldBitmap); ::DeleteDC(bitmapDC); ::ReleaseDC(m_viewWindow, windowDC); } +void WebView::sizeChanged(const IntSize& newSize) +{ + deleteBackingStore(); + + if (Frame* coreFrame = core(topLevelFrame())) + coreFrame->view()->resize(newSize); + +#if USE(ACCELERATED_COMPOSITING) + if (m_layerRenderer) + m_layerRenderer->resize(); +#endif +} + // This emulates the Mac smarts for painting rects intelligently. This is very // important for us, since we double buffer based off dirty rects. static void getUpdateRects(HRGN region, const IntRect& dirtyRect, Vector<IntRect>& rects) @@ -883,20 +919,20 @@ void WebView::updateBackingStore(FrameView* frameView, HDC dc, bool backingStore if (!dc) { windowDC = ::GetDC(m_viewWindow); bitmapDC = ::CreateCompatibleDC(windowDC); - ::SelectObject(bitmapDC, m_backingStoreBitmap.get()); + ::SelectObject(bitmapDC, m_backingStoreBitmap->handle()); } if (m_backingStoreBitmap && (m_backingStoreDirtyRegion || backingStoreCompletelyDirty)) { // Do a layout first so that everything we render to the backing store is always current. if (Frame* coreFrame = core(m_mainFrame)) if (FrameView* view = coreFrame->view()) - view->layoutIfNeededRecursive(); + view->updateLayoutAndStyleIfNeededRecursive(); Vector<IntRect> paintRects; - if (!backingStoreCompletelyDirty) { + if (!backingStoreCompletelyDirty && m_backingStoreDirtyRegion) { RECT regionBox; - ::GetRgnBox(m_backingStoreDirtyRegion.get(), ®ionBox); - getUpdateRects(m_backingStoreDirtyRegion.get(), regionBox, paintRects); + ::GetRgnBox(m_backingStoreDirtyRegion->handle(), ®ionBox); + getUpdateRects(m_backingStoreDirtyRegion->handle(), regionBox, paintRects); } else { RECT clientRect; ::GetClientRect(m_viewWindow, &clientRect); @@ -910,6 +946,10 @@ void WebView::updateBackingStore(FrameView* frameView, HDC dc, bool backingStore m_uiDelegatePrivate->webViewPainted(this); m_backingStoreDirtyRegion.clear(); +#if USE(ACCELERATED_COMPOSITING) + if (m_layerRenderer) + m_layerRenderer->setBackingStoreDirty(false); +#endif } if (!dc) { @@ -929,8 +969,6 @@ void WebView::paint(HDC dc, LPARAM options) return; FrameView* frameView = coreFrame->view(); - m_paintCount++; - RECT rcPaint; HDC hdc; OwnPtr<HRGN> region; @@ -955,9 +993,17 @@ void WebView::paint(HDC dc, LPARAM options) windowsToPaint = PaintWebViewAndChildren; } - HDC bitmapDC = ::CreateCompatibleDC(hdc); bool backingStoreCompletelyDirty = ensureBackingStore(); - ::SelectObject(bitmapDC, m_backingStoreBitmap.get()); + if (!m_backingStoreBitmap) { + if (!dc) + EndPaint(m_viewWindow, &ps); + return; + } + + m_paintCount++; + + HDC bitmapDC = ::CreateCompatibleDC(hdc); + HGDIOBJ oldBitmap = ::SelectObject(bitmapDC, m_backingStoreBitmap->handle()); // Update our backing store if needed. updateBackingStore(frameView, bitmapDC, backingStoreCompletelyDirty, windowsToPaint); @@ -982,6 +1028,7 @@ void WebView::paint(HDC dc, LPARAM options) updateRootLayerContents(); #endif + ::SelectObject(bitmapDC, oldBitmap); ::DeleteDC(bitmapDC); if (!dc) @@ -1007,7 +1054,7 @@ void WebView::paintIntoBackingStore(FrameView* frameView, HDC bitmapDC, const In #if FLASH_BACKING_STORE_REDRAW HDC dc = ::GetDC(m_viewWindow); - OwnPtr<HBRUSH> yellowBrush = CreateSolidBrush(RGB(255, 255, 0)); + OwnPtr<HBRUSH> yellowBrush(CreateSolidBrush(RGB(255, 255, 0))); FillRect(dc, &rect, yellowBrush.get()); GdiFlush(); Sleep(50); @@ -1056,13 +1103,67 @@ void WebView::frameRect(RECT* rect) ::GetWindowRect(m_viewWindow, rect); } +class WindowCloseTimer : public WebCore::SuspendableTimer { +public: + static WindowCloseTimer* create(WebView*); + +private: + WindowCloseTimer(ScriptExecutionContext*, WebView*); + virtual void contextDestroyed(); + virtual void fired(); + + WebView* m_webView; +}; + +WindowCloseTimer* WindowCloseTimer::create(WebView* webView) +{ + ASSERT_ARG(webView, webView); + Frame* frame = core(webView->topLevelFrame()); + ASSERT(frame); + if (!frame) + return 0; + + Document* document = frame->document(); + ASSERT(document); + if (!document) + return 0; + + return new WindowCloseTimer(document, webView); +} + +WindowCloseTimer::WindowCloseTimer(ScriptExecutionContext* context, WebView* webView) + : SuspendableTimer(context) + , m_webView(webView) +{ + ASSERT_ARG(context, context); + ASSERT_ARG(webView, webView); +} + +void WindowCloseTimer::contextDestroyed() +{ + SuspendableTimer::contextDestroyed(); + delete this; +} + +void WindowCloseTimer::fired() +{ + m_webView->closeWindowTimerFired(); +} + void WebView::closeWindowSoon() { - m_closeWindowTimer.startOneShot(0); + if (m_closeWindowTimer) + return; + + m_closeWindowTimer = WindowCloseTimer::create(this); + if (!m_closeWindowTimer) + return; + m_closeWindowTimer->startOneShot(0); + AddRef(); } -void WebView::closeWindowTimerFired(WebCore::Timer<WebView>*) +void WebView::closeWindowTimerFired() { closeWindow(); Release(); @@ -1100,7 +1201,9 @@ bool WebView::canHandleRequest(const WebCore::ResourceRequest& request) String WebView::standardUserAgentWithApplicationName(const String& applicationName) { - return String::format("Mozilla/5.0 (Windows; U; %s; %s) AppleWebKit/%s (KHTML, like Gecko)%s%s", osVersion().latin1().data(), defaultLanguage().latin1().data(), webKitVersion().latin1().data(), (applicationName.length() ? " " : ""), applicationName.latin1().data()); + if (applicationName.isEmpty()) + return makeString("Mozilla/5.0 (Windows; U; ", osVersion(), "; ", defaultLanguage(), ") AppleWebKit/", webKitVersion(), " (KHTML, like Gecko)"); + return makeString("Mozilla/5.0 (Windows; U; ", osVersion(), "; ", defaultLanguage(), ") AppleWebKit/", webKitVersion(), " (KHTML, like Gecko) ", applicationName); } Page* WebView::page() @@ -1110,60 +1213,19 @@ Page* WebView::page() bool WebView::handleContextMenuEvent(WPARAM wParam, LPARAM lParam) { - static const int contextMenuMargin = 1; - // Translate the screen coordinates into window coordinates POINT coords = { GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam) }; if (coords.x == -1 || coords.y == -1) { - FrameView* view = m_page->mainFrame()->view(); - if (!view) - return false; + // The contextMenuController() holds onto the last context menu that was popped up on the + // page until a new one is created. We need to clear this menu before propagating the event + // through the DOM so that we can detect if we create a new menu for this event, since we + // won't create a new menu if the DOM swallows the event and the defaultEventHandler does + // not run. + m_page->contextMenuController()->clearContextMenu(); - int rightAligned = ::GetSystemMetrics(SM_MENUDROPALIGNMENT); - IntPoint location; - - // The context menu event was generated from the keyboard, so show the context menu by the current selection. - Position start = m_page->mainFrame()->selection()->selection().start(); - Position end = m_page->mainFrame()->selection()->selection().end(); - - if (!start.node() || !end.node()) - location = IntPoint(rightAligned ? view->contentsWidth() - contextMenuMargin : contextMenuMargin, contextMenuMargin); - else { - RenderObject* renderer = start.node()->renderer(); - if (!renderer) - return false; - - // Calculate the rect of the first line of the selection (cribbed from -[WebCoreFrameBridge firstRectForDOMRange:], - // now Frame::firstRectForRange(), which perhaps this should call). - int extraWidthToEndOfLine = 0; - - InlineBox* startInlineBox; - int startCaretOffset; - start.getInlineBoxAndOffset(DOWNSTREAM, startInlineBox, startCaretOffset); - IntRect startCaretRect = renderer->localCaretRect(startInlineBox, startCaretOffset, &extraWidthToEndOfLine); - if (startCaretRect != IntRect()) - startCaretRect = renderer->localToAbsoluteQuad(FloatRect(startCaretRect)).enclosingBoundingBox(); - - InlineBox* endInlineBox; - int endCaretOffset; - end.getInlineBoxAndOffset(UPSTREAM, endInlineBox, endCaretOffset); - IntRect endCaretRect = renderer->localCaretRect(endInlineBox, endCaretOffset); - if (endCaretRect != IntRect()) - endCaretRect = renderer->localToAbsoluteQuad(FloatRect(endCaretRect)).enclosingBoundingBox(); - - IntRect firstRect; - if (startCaretRect.y() == endCaretRect.y()) - firstRect = IntRect(min(startCaretRect.x(), endCaretRect.x()), startCaretRect.y(), abs(endCaretRect.x() - startCaretRect.x()), max(startCaretRect.height(), endCaretRect.height())); - else - firstRect = IntRect(startCaretRect.x(), startCaretRect.y(), startCaretRect.width() + extraWidthToEndOfLine, startCaretRect.height()); - - location = IntPoint(rightAligned ? firstRect.right() : firstRect.x(), firstRect.bottom()); - } + Frame* focusedFrame = m_page->focusController()->focusedOrMainFrame(); + return focusedFrame->eventHandler()->sendContextMenuEventForKey(); - location = view->contentsToWindow(location); - // FIXME: The IntSize(0, -1) is a hack to get the hit-testing to result in the selected element. - // Ideally we'd have the position of a context menu event be separate from its target node. - coords = location + IntSize(0, -1); } else { if (!::ScreenToClient(m_viewWindow, &coords)) return false; @@ -1171,11 +1233,6 @@ bool WebView::handleContextMenuEvent(WPARAM wParam, LPARAM lParam) lParam = MAKELPARAM(coords.x, coords.y); - // The contextMenuController() holds onto the last context menu that was popped up on the - // page until a new one is created. We need to clear this menu before propagating the event - // through the DOM so that we can detect if we create a new menu for this event, since we - // won't create a new menu if the DOM swallows the event and the defaultEventHandler does - // not run. m_page->contextMenuController()->clearContextMenu(); IntPoint documentPoint(m_page->mainFrame()->view()->windowToContents(coords)); @@ -1310,12 +1367,19 @@ bool WebView::handleMouseEvent(UINT message, WPARAM wParam, LPARAM lParam) static MouseButton globalPrevButton; static LONG globalPrevMouseDownTime; + if (message == WM_CANCELMODE) { + m_page->mainFrame()->eventHandler()->lostMouseCapture(); + return true; + } + // Create our event. // On WM_MOUSELEAVE we need to create a mouseout event, so we force the position // of the event to be at (MINSHORT, MINSHORT). LPARAM position = (message == WM_MOUSELEAVE) ? ((MINSHORT << 16) | MINSHORT) : lParam; PlatformMouseEvent mouseEvent(m_viewWindow, message, wParam, position, m_mouseActivated); - + + setMouseActivated(false); + bool insideThreshold = abs(globalPrevPoint.x() - mouseEvent.pos().x()) < ::GetSystemMetrics(SM_CXDOUBLECLK) && abs(globalPrevPoint.y() - mouseEvent.pos().y()) < ::GetSystemMetrics(SM_CYDOUBLECLK); LONG messageTime = ::GetMessageTime(); @@ -1374,7 +1438,6 @@ bool WebView::handleMouseEvent(UINT message, WPARAM wParam, LPARAM lParam) ::TrackMouseEvent(m_mouseOutTracker.get()); } } - setMouseActivated(false); return handled; } @@ -1571,9 +1634,9 @@ bool WebView::mouseWheel(WPARAM wParam, LPARAM lParam, bool isMouseHWheel) TCHAR className[256]; // Make sure truncation won't affect the comparison. - ASSERT(ARRAYSIZE(className) > _tcslen(PopupMenu::popupClassName())); + ASSERT(WTF_ARRAY_LENGTH(className) > _tcslen(PopupMenuWin::popupClassName())); - if (GetClassName(focusedWindow, className, ARRAYSIZE(className)) && !_tcscmp(className, PopupMenu::popupClassName())) { + if (GetClassName(focusedWindow, className, WTF_ARRAY_LENGTH(className)) && !_tcscmp(className, PopupMenuWin::popupClassName())) { // We don't let the WebView scroll here for two reasons - 1) To match Firefox behavior, 2) If we do scroll, we lose the // focus ring around the select menu. SetFocus(m_viewWindow); @@ -1770,10 +1833,10 @@ const char* WebView::interpretKeyEvent(const KeyboardEvent* evt) keyDownCommandsMap = new HashMap<int, const char*>; keyPressCommandsMap = new HashMap<int, const char*>; - for (unsigned i = 0; i < _countof(keyDownEntries); i++) + for (size_t i = 0; i < WTF_ARRAY_LENGTH(keyDownEntries); ++i) keyDownCommandsMap->set(keyDownEntries[i].modifiers << 16 | keyDownEntries[i].virtualKey, keyDownEntries[i].name); - for (unsigned i = 0; i < _countof(keyPressEntries); i++) + for (size_t i = 0; i < WTF_ARRAY_LENGTH(keyPressEntries); ++i) keyPressCommandsMap->set(keyPressEntries[i].modifiers << 16 | keyPressEntries[i].charCode, keyPressEntries[i].name); } @@ -1849,10 +1912,10 @@ bool WebView::keyDown(WPARAM virtualKeyCode, LPARAM keyData, bool systemKeyDown) // We need to handle back/forward using either Backspace(+Shift) or Ctrl+Left/Right Arrow keys. if ((virtualKeyCode == VK_BACK && keyEvent.shiftKey()) || (virtualKeyCode == VK_RIGHT && keyEvent.ctrlKey())) - m_page->goForward(); - else if (virtualKeyCode == VK_BACK || (virtualKeyCode == VK_LEFT && keyEvent.ctrlKey())) - m_page->goBack(); - + return m_page->goForward(); + if (virtualKeyCode == VK_BACK || (virtualKeyCode == VK_LEFT && keyEvent.ctrlKey())) + return m_page->goBack(); + // Need to scroll the page if the arrow keys, pgup/dn, or home/end are hit. ScrollDirection direction; ScrollGranularity granularity; @@ -1934,10 +1997,6 @@ bool WebView::registerWebViewWindowClass() return !!RegisterClassEx(&wcex); } -namespace WebCore { - extern HCURSOR lastSetCursor; -} - static HWND findTopLevelParent(HWND window) { if (!window) @@ -2006,6 +2065,7 @@ LRESULT CALLBACK WebView::WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, case WM_MBUTTONUP: case WM_RBUTTONUP: case WM_MOUSELEAVE: + case WM_CANCELMODE: if (Frame* coreFrame = core(mainFrameImpl)) if (coreFrame->view()->didFirstLayout()) handled = webView->handleMouseEvent(message, wParam, lParam); @@ -2036,15 +2096,8 @@ LRESULT CALLBACK WebView::WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, break; // FIXME: We need to check WM_UNICHAR to support supplementary characters (that don't fit in 16 bits). case WM_SIZE: - if (lParam != 0) { - webView->deleteBackingStore(); -#if USE(ACCELERATED_COMPOSITING) - if (webView->isAcceleratedCompositing()) - webView->resizeLayerRenderer(); -#endif - if (Frame* coreFrame = core(mainFrameImpl)) - coreFrame->view()->resize(LOWORD(lParam), HIWORD(lParam)); - } + if (lParam != 0) + webView->sizeChanged(IntSize(LOWORD(lParam), HIWORD(lParam))); break; case WM_SHOWWINDOW: lResult = DefWindowProc(hWnd, message, wParam, lParam); @@ -2071,10 +2124,8 @@ LRESULT CALLBACK WebView::WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, // child of ours (for example a plugin). if (!IsChild(hWnd, reinterpret_cast<HWND>(wParam))) focusController->setFocused(true); - } else { + } else focusController->setFocused(true); - focusController->setFocusedFrame(webView->page()->mainFrame()); - } break; } case WM_KILLFOCUS: { @@ -2154,6 +2205,7 @@ LRESULT CALLBACK WebView::WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, break; case WM_MOUSEACTIVATE: webView->setMouseActivated(true); + handled = false; break; case WM_GETDLGCODE: { COMPtr<IWebUIDelegate> uiDelegate; @@ -2211,10 +2263,8 @@ LRESULT CALLBACK WebView::WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, } break; case WM_SETCURSOR: - if (handled = webView->page()->chrome()->setCursor(lastSetCursor)) - break; - - __fallthrough; + handled = ::SetCursor(webView->m_lastSetCursor); + break; case WM_VSCROLL: handled = webView->verticalScroll(wParam, lParam); break; @@ -2263,11 +2313,10 @@ static String osVersion() osVersion = "Windows 98; Win 9x 4.90"; } } else if (versionInfo.dwPlatformId == VER_PLATFORM_WIN32_NT) - osVersion = String::format("Windows NT %d.%d", versionInfo.dwMajorVersion, versionInfo.dwMinorVersion); + osVersion = makeString("Windows NT ", String::number(versionInfo.dwMajorVersion), '.', String::number(versionInfo.dwMinorVersion)); if (!osVersion.length()) - osVersion = String::format("Windows %d.%d", versionInfo.dwMajorVersion, versionInfo.dwMinorVersion); - + osVersion = makeString("Windows ", String::number(versionInfo.dwMajorVersion), '.', String::number(versionInfo.dwMinorVersion)); return osVersion; } @@ -2282,7 +2331,7 @@ static String webKitVersion() } *lpTranslate; TCHAR path[MAX_PATH]; - GetModuleFileName(gInstance, path, ARRAYSIZE(path)); + GetModuleFileName(gInstance, path, WTF_ARRAY_LENGTH(path)); DWORD handle; DWORD versionSize = GetFileVersionInfoSize(path, &handle); if (!versionSize) @@ -2296,12 +2345,12 @@ static String webKitVersion() if (!VerQueryValue(data, TEXT("\\VarFileInfo\\Translation"), (LPVOID*)&lpTranslate, &cbTranslate)) goto exit; TCHAR key[256]; - _stprintf_s(key, ARRAYSIZE(key), TEXT("\\StringFileInfo\\%04x%04x\\ProductVersion"), lpTranslate[0].wLanguage, lpTranslate[0].wCodePage); + _stprintf_s(key, WTF_ARRAY_LENGTH(key), TEXT("\\StringFileInfo\\%04x%04x\\ProductVersion"), lpTranslate[0].wLanguage, lpTranslate[0].wCodePage); LPCTSTR productVersion; UINT productVersionLength; if (!VerQueryValue(data, (LPTSTR)(LPCTSTR)key, (void**)&productVersion, &productVersionLength)) goto exit; - versionStr = String(productVersion, productVersionLength); + versionStr = String(productVersion, productVersionLength - 1); exit: if (data) @@ -2395,7 +2444,7 @@ HRESULT STDMETHODCALLTYPE WebView::canShowMIMEType( *canShow = MIMETypeRegistry::isSupportedImageMIMEType(mimeTypeStr) || MIMETypeRegistry::isSupportedNonImageMIMEType(mimeTypeStr) || - PluginInfoStore::supportsMIMEType(mimeTypeStr) || + (m_page && m_page->pluginData() && m_page->pluginData()->supportsMimeType(mimeTypeStr)) || shouldUseEmbeddedView(mimeTypeStr); return S_OK; @@ -2514,29 +2563,40 @@ HRESULT STDMETHODCALLTYPE WebView::initWithFrame( sharedPreferences->willAddToWebView(); m_preferences = sharedPreferences; - InitializeLoggingChannelsIfNecessary(); + static bool didOneTimeInitialization; + if (!didOneTimeInitialization) { + InitializeLoggingChannelsIfNecessary(); #if ENABLE(DATABASE) - WebKitSetWebDatabasesPathIfNecessary(); + WebKitInitializeWebDatabasesIfNecessary(); #endif - WebKitSetApplicationCachePathIfNecessary(); - + WebKitSetApplicationCachePathIfNecessary(); + WebPlatformStrategies::initialize(); + Settings::setMinDOMTimerInterval(0.004); + + didOneTimeInitialization = true; + } + #if USE(SAFARI_THEME) BOOL shouldPaintNativeControls; if (SUCCEEDED(m_preferences->shouldPaintNativeControls(&shouldPaintNativeControls))) Settings::setShouldPaintNativeControls(shouldPaintNativeControls); #endif -#if ENABLE(CLIENT_BASED_GEOLOCATION) - WebGeolocationControllerClient* geolocationControllerClient = new WebGeolocationControllerClient(this); -#else - WebGeolocationControllerClient* geolocationControllerClient = 0; -#endif - BOOL useHighResolutionTimer; if (SUCCEEDED(m_preferences->shouldUseHighResolutionTimers(&useHighResolutionTimer))) Settings::setShouldUseHighResolutionTimers(useHighResolutionTimer); - m_page = new Page(new WebChromeClient(this), new WebContextMenuClient(this), new WebEditorClient(this), new WebDragClient(this), new WebInspectorClient(this), new WebPluginHalterClient(this), geolocationControllerClient); + Page::PageClients pageClients; + pageClients.chromeClient = new WebChromeClient(this); + pageClients.contextMenuClient = new WebContextMenuClient(this); + pageClients.editorClient = new WebEditorClient(this); + pageClients.dragClient = new WebDragClient(this); + pageClients.inspectorClient = new WebInspectorClient(this); + pageClients.pluginHalterClient = new WebPluginHalterClient(this); +#if ENABLE(CLIENT_BASED_GEOLOCATION) + pageClients.geolocationClient = new WebGeolocationClient(this); +#endif + m_page = new Page(pageClients); BSTR localStoragePath; if (SUCCEEDED(m_preferences->localStorageDatabasePath(&localStoragePath))) { @@ -2596,7 +2656,7 @@ void WebView::initializeToolTipWindow() if (!initCommonControls()) return; - m_toolTipHwnd = CreateWindowEx(0, TOOLTIPS_CLASS, 0, WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP, + m_toolTipHwnd = CreateWindowEx(WS_EX_TRANSPARENT, TOOLTIPS_CLASS, 0, WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, m_viewWindow, 0, 0, 0); if (!m_toolTipHwnd) @@ -2810,13 +2870,14 @@ HRESULT STDMETHODCALLTYPE WebView::focusedFrame( return webFrame->QueryInterface(IID_IWebFrame, (void**) frame); } + HRESULT STDMETHODCALLTYPE WebView::backForwardList( /* [out][retval] */ IWebBackForwardList** list) { if (!m_useBackForwardList) return E_FAIL; - *list = WebBackForwardList::createInstance(m_page->backForwardList()); + *list = WebBackForwardList::createInstance(static_cast<WebCore::BackForwardListImpl*>(m_page->backForwardList())); return S_OK; } @@ -2880,9 +2941,14 @@ HRESULT STDMETHODCALLTYPE WebView::setPageSizeMultiplier( void WebView::setZoomMultiplier(float multiplier, bool isTextOnly) { m_zoomMultiplier = multiplier; - m_page->settings()->setZoomsTextOnly(isTextOnly); - if (Frame* coreFrame = core(m_mainFrame)) - coreFrame->setZoomFactor(multiplier, isTextOnly); + m_zoomsTextOnly = isTextOnly; + + if (Frame* coreFrame = core(m_mainFrame)) { + if (m_zoomsTextOnly) + coreFrame->setPageAndTextZoomFactors(1, multiplier); + else + coreFrame->setPageAndTextZoomFactors(multiplier, 1); + } } HRESULT STDMETHODCALLTYPE WebView::textSizeMultiplier( @@ -2901,7 +2967,7 @@ HRESULT STDMETHODCALLTYPE WebView::pageSizeMultiplier( float WebView::zoomMultiplier(bool isTextOnly) { - if (isTextOnly != m_page->settings()->zoomsTextOnly()) + if (isTextOnly != m_zoomsTextOnly) return 1.0f; return m_zoomMultiplier; } @@ -3044,13 +3110,13 @@ HRESULT STDMETHODCALLTYPE WebView::stringByEvaluatingJavaScriptFromString( if (!coreFrame) return E_FAIL; - JSC::JSValue scriptExecutionResult = coreFrame->script()->executeScript(WebCore::String(script), true).jsValue(); + JSC::JSValue scriptExecutionResult = coreFrame->script()->executeScript(WTF::String(script), true).jsValue(); if (!scriptExecutionResult) return E_FAIL; else if (scriptExecutionResult.isString()) { JSLock lock(JSC::SilenceAssertionsOnly); JSC::ExecState* exec = coreFrame->script()->globalObject(mainThreadNormalWorld())->globalExec(); - *result = BString(String(scriptExecutionResult.getString(exec))); + *result = BString(ustringToString(scriptExecutionResult.getString(exec))); } return S_OK; @@ -3126,6 +3192,14 @@ HRESULT STDMETHODCALLTYPE WebView::preferencesIdentifier( return E_NOTIMPL; } +static void systemParameterChanged(WPARAM parameter) +{ +#if PLATFORM(CG) + if (parameter == SPI_SETFONTSMOOTHING || parameter == SPI_SETFONTSMOOTHINGTYPE || parameter == SPI_SETFONTSMOOTHINGCONTRAST || parameter == SPI_SETFONTSMOOTHINGORIENTATION) + wkSystemFontSmoothingChanged(); +#endif +} + void WebView::windowReceivedMessage(HWND, UINT message, WPARAM wParam, LPARAM) { switch (message) { @@ -3134,6 +3208,9 @@ void WebView::windowReceivedMessage(HWND, UINT message, WPARAM wParam, LPARAM) if (!wParam) deleteBackingStoreSoon(); break; + case WM_SETTINGCHANGE: + systemParameterChanged(wParam); + break; } } @@ -3306,7 +3383,7 @@ HRESULT STDMETHODCALLTYPE WebView::rectsForTextMatches( do { if (Document* document = frame->document()) { IntRect visibleRect = frame->view()->visibleContentRect(); - Vector<IntRect> frameRects = document->renderedRectsForMarkers(DocumentMarker::TextMatch); + Vector<IntRect> frameRects = document->markers()->renderedRectsForMarkers(DocumentMarker::TextMatch); IntPoint frameOffset(-frame->view()->scrollOffset().width(), -frame->view()->scrollOffset().height()); frameOffset = frame->view()->convertToContainingWindow(frameOffset); @@ -3342,7 +3419,7 @@ HRESULT STDMETHODCALLTYPE WebView::selectionRect(RECT* rc) WebCore::Frame* frame = m_page->focusController()->focusedOrMainFrame(); if (frame) { - IntRect ir = enclosingIntRect(frame->selectionBounds()); + IntRect ir = enclosingIntRect(frame->selection()->bounds()); ir = frame->view()->convertToContainingWindow(ir); ir.move(-frame->view()->scrollOffset().width(), -frame->view()->scrollOffset().height()); rc->left = ir.x(); @@ -3403,6 +3480,9 @@ HRESULT STDMETHODCALLTYPE WebView::isLoading( *isLoading = FALSE; + if (!m_mainFrame) + return E_FAIL; + if (SUCCEEDED(m_mainFrame->dataSource(&dataSource))) dataSource->isLoading(isLoading); @@ -3485,7 +3565,7 @@ HRESULT STDMETHODCALLTYPE WebView::selectedText( if (!focusedFrame) return E_FAIL; - String frameSelectedText = focusedFrame->selectedText(); + String frameSelectedText = focusedFrame->editor()->selectedText(); *text = SysAllocStringLen(frameSelectedText.characters(), frameSelectedText.length()); if (!*text && frameSelectedText.length()) return E_OUTOFMEMORY; @@ -3499,7 +3579,7 @@ HRESULT STDMETHODCALLTYPE WebView::centerSelectionInVisibleArea( if (!coreFrame) return E_FAIL; - coreFrame->revealSelection(ScrollAlignment::alignCenterAlways); + coreFrame->selection()->revealSelection(ScrollAlignment::alignCenterAlways); return S_OK; } @@ -3599,7 +3679,7 @@ HRESULT STDMETHODCALLTYPE WebView::registerURLSchemeAsLocal( if (!scheme) return E_POINTER; - SecurityOrigin::registerURLSchemeAsLocal(String(scheme, ::SysStringLen(scheme))); + SchemeRegistry::registerURLSchemeAsLocal(String(scheme, ::SysStringLen(scheme))); return S_OK; } @@ -3635,7 +3715,7 @@ HRESULT STDMETHODCALLTYPE WebView::canGoBack( /* [in] */ IUnknown* /*sender*/, /* [retval][out] */ BOOL* result) { - *result = !!m_page->backForwardList()->backItem(); + *result = !!(m_page->backForwardList()->backItem() && !m_page->defersLoading()); return S_OK; } @@ -3650,7 +3730,7 @@ HRESULT STDMETHODCALLTYPE WebView::canGoForward( /* [in] */ IUnknown* /*sender*/, /* [retval][out] */ BOOL* result) { - *result = !!m_page->backForwardList()->forwardItem(); + *result = !!(m_page->backForwardList()->forwardItem() && !m_page->defersLoading()); return S_OK; } @@ -3670,7 +3750,7 @@ HRESULT STDMETHODCALLTYPE WebView::canMakeTextLarger( /* [in] */ IUnknown* /*sender*/, /* [retval][out] */ BOOL* result) { - bool canGrowMore = canZoomIn(m_page->settings()->zoomsTextOnly()); + bool canGrowMore = canZoomIn(m_zoomsTextOnly); *result = canGrowMore ? TRUE : FALSE; return S_OK; } @@ -3692,7 +3772,7 @@ bool WebView::canZoomIn(bool isTextOnly) HRESULT STDMETHODCALLTYPE WebView::makeTextLarger( /* [in] */ IUnknown* /*sender*/) { - return zoomIn(m_page->settings()->zoomsTextOnly()); + return zoomIn(m_zoomsTextOnly); } HRESULT STDMETHODCALLTYPE WebView::zoomPageIn( @@ -3713,7 +3793,7 @@ HRESULT STDMETHODCALLTYPE WebView::canMakeTextSmaller( /* [in] */ IUnknown* /*sender*/, /* [retval][out] */ BOOL* result) { - bool canShrinkMore = canZoomOut(m_page->settings()->zoomsTextOnly()); + bool canShrinkMore = canZoomOut(m_zoomsTextOnly); *result = canShrinkMore ? TRUE : FALSE; return S_OK; } @@ -3735,7 +3815,7 @@ bool WebView::canZoomOut(bool isTextOnly) HRESULT STDMETHODCALLTYPE WebView::makeTextSmaller( /* [in] */ IUnknown* /*sender*/) { - return zoomOut(m_page->settings()->zoomsTextOnly()); + return zoomOut(m_zoomsTextOnly); } HRESULT STDMETHODCALLTYPE WebView::zoomPageOut( @@ -4548,6 +4628,12 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) return hr; settings->setEditableLinkBehavior((EditableLinkBehavior)behavior); + WebKitEditingBehavior editingBehavior; + hr = preferences->editingBehavior(&editingBehavior); + if (FAILED(hr)) + return hr; + settings->setEditingBehaviorType((EditingBehaviorType)editingBehavior); + hr = preferences->usesPageCache(&enabled); if (FAILED(hr)) return hr; @@ -4566,7 +4652,9 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) hr = preferences->zoomsTextOnly(&enabled); if (FAILED(hr)) return hr; - settings->setZoomsTextOnly(!!enabled); + + if (m_zoomsTextOnly != !!enabled) + setZoomMultiplier(m_zoomMultiplier, enabled); settings->setShowsURLsInToolTips(false); settings->setForceFTPDirectoryListings(true); @@ -4597,10 +4685,12 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) return hr; settings->setOfflineWebApplicationCacheEnabled(enabled); +#if ENABLE(DATABASE) hr = prefsPrivate->databasesEnabled(&enabled); if (FAILED(hr)) return hr; - settings->setDatabasesEnabled(enabled); + AbstractDatabase::setIsAvailable(enabled); +#endif hr = prefsPrivate->localStorageEnabled(&enabled); if (FAILED(hr)) @@ -4622,6 +4712,16 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) return hr; settings->setAllowUniversalAccessFromFileURLs(!!enabled); + hr = prefsPrivate->allowFileAccessFromFileURLs(&enabled); + if (FAILED(hr)) + return hr; + settings->setAllowFileAccessFromFileURLs(!!enabled); + + hr = prefsPrivate->javaScriptCanAccessClipboard(&enabled); + if (FAILED(hr)) + return hr; + settings->setJavaScriptCanAccessClipboard(!!enabled); + hr = prefsPrivate->isXSSAuditorEnabled(&enabled); if (FAILED(hr)) return hr; @@ -4645,10 +4745,10 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) return hr; settings->setPluginAllowedRunTime(runTime); - hr = prefsPrivate->isFrameSetFlatteningEnabled(&enabled); + hr = prefsPrivate->isFrameFlatteningEnabled(&enabled); if (FAILED(hr)) return hr; - settings->setFrameSetFlatteningEnabled(enabled); + settings->setFrameFlatteningEnabled(enabled); #if USE(ACCELERATED_COMPOSITING) hr = prefsPrivate->acceleratedCompositingEnabled(&enabled); @@ -4657,11 +4757,36 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) settings->setAcceleratedCompositingEnabled(enabled); #endif + hr = prefsPrivate->showDebugBorders(&enabled); + if (FAILED(hr)) + return hr; + settings->setShowDebugBorders(enabled); + + hr = prefsPrivate->showRepaintCounter(&enabled); + if (FAILED(hr)) + return hr; + settings->setShowRepaintCounter(enabled); + #if ENABLE(3D_CANVAS) settings->setWebGLEnabled(true); #endif // ENABLE(3D_CANVAS) - if (!m_closeWindowTimer.isActive()) + hr = prefsPrivate->isDNSPrefetchingEnabled(&enabled); + if (FAILED(hr)) + return hr; + settings->setDNSPrefetchingEnabled(enabled); + + hr = prefsPrivate->memoryInfoEnabled(&enabled); + if (FAILED(hr)) + return hr; + settings->setMemoryInfoEnabled(enabled); + + hr = prefsPrivate->hyperlinkAuditingEnabled(&enabled); + if (FAILED(hr)) + return hr; + settings->setHyperlinkAuditingEnabled(enabled); + + if (!m_closeWindowTimer) m_mainFrame->invalidate(); // FIXME hr = updateSharedSettingsFromPreferencesIfNeeded(preferences.get()); @@ -5066,7 +5191,7 @@ HRESULT STDMETHODCALLTYPE WebView::shouldClose( *result = TRUE; if (Frame* frame = m_page->mainFrame()) - *result = frame->shouldClose() ? TRUE : FALSE; + *result = frame->loader()->shouldClose(); return S_OK; } @@ -5167,7 +5292,7 @@ void WebView::prepareCandidateWindow(Frame* targetFrame, HIMC hInputContext) if (RefPtr<Range> range = targetFrame->selection()->selection().toNormalizedRange()) { ExceptionCode ec = 0; RefPtr<Range> tempRange = range->cloneRange(ec); - caret = targetFrame->firstRectForRange(tempRange.get()); + caret = targetFrame->editor()->firstRectForRange(tempRange.get()); } caret = targetFrame->view()->contentsToWindow(caret); CANDIDATEFORM form; @@ -5438,7 +5563,7 @@ LRESULT WebView::onIMERequestCharPosition(Frame* targetFrame, IMECHARPOSITION* c ExceptionCode ec = 0; RefPtr<Range> tempRange = range->cloneRange(ec); tempRange->setStart(tempRange->startContainer(ec), tempRange->startOffset(ec) + charPos->dwCharPos, ec); - caret = targetFrame->firstRectForRange(tempRange.get()); + caret = targetFrame->editor()->firstRectForRange(tempRange.get()); } caret = targetFrame->view()->contentsToWindow(caret); charPos->pt.x = caret.x(); @@ -5546,6 +5671,63 @@ HRESULT STDMETHODCALLTYPE WebView::paintDocumentRectToContext( return m_mainFrame->paintDocumentRectToContext(rect, deviceContext); } +HRESULT STDMETHODCALLTYPE WebView::paintScrollViewRectToContextAtPoint( + /* [in] */ RECT rect, + /* [in] */ POINT pt, + /* [in] */ OLE_HANDLE deviceContext) +{ + if (!deviceContext) + return E_POINTER; + + if (!m_mainFrame) + return E_FAIL; + + return m_mainFrame->paintScrollViewRectToContextAtPoint(rect, pt, deviceContext); +} + +HRESULT STDMETHODCALLTYPE WebView::reportException( + /* [in] */ JSContextRef context, + /* [in] */ JSValueRef exception) +{ + if (!context || !exception) + return E_FAIL; + + JSLock lock(JSC::SilenceAssertionsOnly); + JSC::ExecState* execState = toJS(context); + + // Make sure the context has a DOMWindow global object, otherwise this context didn't originate from a WebView. + if (!toJSDOMWindow(execState->lexicalGlobalObject())) + return E_FAIL; + + WebCore::reportException(execState, toJS(execState, exception)); + return S_OK; +} + +HRESULT STDMETHODCALLTYPE WebView::elementFromJS( + /* [in] */ JSContextRef context, + /* [in] */ JSValueRef nodeObject, + /* [retval][out] */ IDOMElement **element) +{ + if (!element) + return E_POINTER; + + *element = 0; + + if (!context) + return E_FAIL; + + if (!nodeObject) + return E_FAIL; + + JSLock lock(JSC::SilenceAssertionsOnly); + Element* elt = toElement(toJS(toJS(context), nodeObject)); + if (!elt) + return E_FAIL; + + *element = DOMElement::createInstance(elt); + return S_OK; +} + HRESULT STDMETHODCALLTYPE WebView::setCustomHTMLTokenizerTimeDelay( /* [in] */ double timeDelay) { @@ -5571,7 +5753,9 @@ HRESULT STDMETHODCALLTYPE WebView::backingStore( { if (!hBitmap) return E_POINTER; - *hBitmap = reinterpret_cast<OLE_HANDLE>(m_backingStoreBitmap.get()); + if (!m_backingStoreBitmap) + return E_FAIL; + *hBitmap = reinterpret_cast<OLE_HANDLE>(m_backingStoreBitmap->handle()); return S_OK; } @@ -5702,7 +5886,7 @@ HRESULT STDMETHODCALLTYPE WebView::registerEmbeddedViewMIMEType(BSTR mimeType) return S_OK; } -bool WebView::shouldUseEmbeddedView(const WebCore::String& mimeType) const +bool WebView::shouldUseEmbeddedView(const WTF::String& mimeType) const { if (!m_embeddedViewMIMETypes) return false; @@ -5766,7 +5950,7 @@ HRESULT WebView::setJavaScriptURLsAreAllowed(BOOL areAllowed) HRESULT WebView::setCanStartPlugins(BOOL canStartPlugins) { - m_page->setCanStartPlugins(canStartPlugins); + m_page->setCanStartMedia(canStartPlugins); return S_OK; } @@ -5849,7 +6033,8 @@ HRESULT WebView::addUserScriptToGroup(BSTR groupName, IWebScriptWorld* iWorld, B pageGroup->addUserScriptToWorld(world->world(), toString(source), toKURL(url), toStringVector(whitelistCount, whitelist), toStringVector(blacklistCount, blacklist), - injectionTime == WebInjectAtDocumentStart ? InjectAtDocumentStart : InjectAtDocumentEnd); + injectionTime == WebInjectAtDocumentStart ? InjectAtDocumentStart : InjectAtDocumentEnd, + InjectInAllFrames); return S_OK; } @@ -5872,7 +6057,8 @@ HRESULT WebView::addUserStyleSheetToGroup(BSTR groupName, IWebScriptWorld* iWorl return E_FAIL; pageGroup->addUserStyleSheetToWorld(world->world(), toString(source), toKURL(url), - toStringVector(whitelistCount, whitelist), toStringVector(blacklistCount, blacklist)); + toStringVector(whitelistCount, whitelist), toStringVector(blacklistCount, blacklist), + InjectInAllFrames); return S_OK; } @@ -5989,15 +6175,21 @@ HRESULT WebView::invalidateBackingStore(const RECT* rect) return S_OK; } -HRESULT WebView::whiteListAccessFromOrigin(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains) +HRESULT WebView::addOriginAccessWhitelistEntry(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains) +{ + SecurityOrigin::addOriginAccessWhitelistEntry(*SecurityOrigin::createFromString(String(sourceOrigin, SysStringLen(sourceOrigin))), String(destinationProtocol, SysStringLen(destinationProtocol)), String(destinationHost, SysStringLen(destinationHost)), allowDestinationSubdomains); + return S_OK; +} + +HRESULT WebView::removeOriginAccessWhitelistEntry(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains) { - SecurityOrigin::whiteListAccessFromOrigin(*SecurityOrigin::createFromString(String(sourceOrigin, SysStringLen(sourceOrigin))), String(destinationProtocol, SysStringLen(destinationProtocol)), String(destinationHost, SysStringLen(destinationHost)), allowDestinationSubdomains); + SecurityOrigin::removeOriginAccessWhitelistEntry(*SecurityOrigin::createFromString(String(sourceOrigin, SysStringLen(sourceOrigin))), String(destinationProtocol, SysStringLen(destinationProtocol)), String(destinationHost, SysStringLen(destinationHost)), allowDestinationSubdomains); return S_OK; } -HRESULT WebView::resetOriginAccessWhiteLists() +HRESULT WebView::resetOriginAccessWhitelists() { - SecurityOrigin::resetOriginAccessWhiteLists(); + SecurityOrigin::resetOriginAccessWhitelists(); return S_OK; } @@ -6037,7 +6229,7 @@ void WebView::downloadURL(const KURL& url) } #if USE(ACCELERATED_COMPOSITING) -void WebView::setRootChildLayer(WebCore::PlatformLayer* layer) +void WebView::setRootChildLayer(WebCore::WKCACFLayer* layer) { setAcceleratedCompositing(layer ? true : false); if (m_layerRenderer) @@ -6050,14 +6242,14 @@ void WebView::setAcceleratedCompositing(bool accelerated) return; if (accelerated) { - m_layerRenderer = WKCACFLayerRenderer::create(); + m_layerRenderer = WKCACFLayerRenderer::create(this); if (m_layerRenderer) { m_isAcceleratedCompositing = true; // Create the root layer ASSERT(m_viewWindow); m_layerRenderer->setHostWindow(m_viewWindow); - updateRootLayerContents(); + m_layerRenderer->createRenderer(); } } else { m_layerRenderer = 0; @@ -6065,6 +6257,14 @@ void WebView::setAcceleratedCompositing(bool accelerated) } } +void releaseBackingStoreCallback(void* info, const void* data, size_t size) +{ + // Release the backing store bitmap previously retained by updateRootLayerContents(). + ASSERT(info); + if (info) + static_cast<RefCountedHBITMAP*>(info)->deref(); +} + void WebView::updateRootLayerContents() { if (!m_backingStoreBitmap || !m_layerRenderer) @@ -6072,13 +6272,12 @@ void WebView::updateRootLayerContents() // Get the backing store into a CGImage BITMAP bitmap; - GetObject(m_backingStoreBitmap.get(), sizeof(bitmap), &bitmap); - int bmSize = bitmap.bmWidthBytes * bitmap.bmHeight; - RetainPtr<CFDataRef> data(AdoptCF, - CFDataCreateWithBytesNoCopy( - 0, static_cast<UInt8*>(bitmap.bmBits), - bmSize, kCFAllocatorNull)); - RetainPtr<CGDataProviderRef> cgData(AdoptCF, CGDataProviderCreateWithCFData(data.get())); + GetObject(m_backingStoreBitmap->handle(), sizeof(bitmap), &bitmap); + size_t bmSize = bitmap.bmWidthBytes * bitmap.bmHeight; + RetainPtr<CGDataProviderRef> cgData(AdoptCF, + CGDataProviderCreateWithData(static_cast<void*>(m_backingStoreBitmap.get()), + bitmap.bmBits, bmSize, + releaseBackingStoreCallback)); RetainPtr<CGColorSpaceRef> space(AdoptCF, CGColorSpaceCreateDeviceRGB()); RetainPtr<CGImageRef> backingStoreImage(AdoptCF, CGImageCreate(bitmap.bmWidth, bitmap.bmHeight, 8, bitmap.bmBitsPixel, @@ -6087,16 +6286,22 @@ void WebView::updateRootLayerContents() cgData.get(), 0, false, kCGRenderingIntentDefault)); - // Hand the CGImage to CACF for compositing - m_layerRenderer->setRootContents(backingStoreImage.get()); + // Retain the backing store bitmap so that it is not deleted by deleteBackingStore() + // while still in use within CA. When CA is done with the bitmap, it will + // call releaseBackingStoreCallback(), which will release the backing store bitmap. + m_backingStoreBitmap->ref(); - // Set the frame and scroll position - Frame* coreFrame = core(m_mainFrame); - if (!coreFrame) - return; - FrameView* frameView = coreFrame->view(); + // Hand the CGImage to CACF for compositing + if (m_nextDisplayIsSynchronous) { + m_layerRenderer->setRootContentsAndDisplay(backingStoreImage.get()); + m_nextDisplayIsSynchronous = false; + } else + m_layerRenderer->setRootContents(backingStoreImage.get()); +} - m_layerRenderer->setScrollFrame(IntRect(frameView->scrollX(), frameView->scrollY(), frameView->layoutWidth(), frameView->layoutHeight())); +void WebView::layerRendererBecameVisible() +{ + m_layerRenderer->createRenderer(); } #endif @@ -6238,6 +6443,32 @@ HRESULT WebView::setDomainRelaxationForbiddenForURLScheme(BOOL forbidden, BSTR s return S_OK; } +HRESULT WebView::registerURLSchemeAsSecure(BSTR scheme) +{ + SchemeRegistry::registerURLSchemeAsSecure(toString(scheme)); + return S_OK; +} + +HRESULT WebView::nextDisplayIsSynchronous() +{ + m_nextDisplayIsSynchronous = true; + return S_OK; +} + +#if USE(ACCELERATED_COMPOSITING) +bool WebView::shouldRender() const +{ + Frame* coreFrame = core(m_mainFrame); + if (!coreFrame) + return true; + FrameView* frameView = coreFrame->view(); + if (!frameView) + return true; + + return !frameView->layoutPending(); +} +#endif + class EnumTextMatches : public IEnumTextMatches { long m_ref; diff --git a/WebKit/win/WebView.h b/WebKit/win/WebView.h index 56fb40c..424b03a 100644 --- a/WebKit/win/WebView.h +++ b/WebKit/win/WebView.h @@ -32,12 +32,17 @@ #include "WebPreferences.h" #include <WebCore/DragActions.h> #include <WebCore/IntRect.h> -#include <WebCore/Timer.h> +#include <WebCore/RefCountedGDIHandle.h> +#include <WebCore/SuspendableTimer.h> #include <WebCore/WindowMessageListener.h> -#include <WebCore/WKCACFLayer.h> -#include <WebCore/WKCACFLayerRenderer.h> #include <wtf/HashSet.h> #include <wtf/OwnPtr.h> +#include <wtf/RefPtr.h> + +#if USE(ACCELERATED_COMPOSITING) +#include <WebCore/WKCACFLayer.h> +#include <WebCore/WKCACFLayerRenderer.h> +#endif class FullscreenVideoController; class WebBackForwardList; @@ -45,6 +50,9 @@ class WebFrame; class WebInspector; class WebInspectorClient; +typedef WebCore::RefCountedGDIHandle<HBITMAP> RefCountedHBITMAP; +typedef WebCore::RefCountedGDIHandle<HRGN> RefCountedHRGN; + WebView* kit(WebCore::Page*); WebCore::Page* core(IWebView*); @@ -61,6 +69,9 @@ class WebView , public IWebNotificationObserver , public IDropTarget , WebCore::WindowMessageListener +#if USE(ACCELERATED_COMPOSITING) + , WebCore::WKCACFLayerRendererClient +#endif { public: static WebView* createInstance(); @@ -689,6 +700,20 @@ public: /* [in] */ RECT rect, /* [in] */ OLE_HANDLE dc); + virtual HRESULT STDMETHODCALLTYPE paintScrollViewRectToContextAtPoint( + /* [in] */ RECT rect, + /* [in] */ POINT pt, + /* [in] */ OLE_HANDLE dc); + + virtual HRESULT STDMETHODCALLTYPE reportException( + /* [in] */ JSContextRef context, + /* [in] */ JSValueRef exception); + + virtual HRESULT STDMETHODCALLTYPE elementFromJS( + /* [in] */ JSContextRef context, + /* [in] */ JSValueRef nodeObject, + /* [retval][out] */ IDOMElement **element); + virtual HRESULT STDMETHODCALLTYPE setCustomHTMLTokenizerTimeDelay( /* [in] */ double timeDelay); @@ -761,9 +786,9 @@ public: virtual HRESULT STDMETHODCALLTYPE invalidateBackingStore(const RECT*); - virtual HRESULT STDMETHODCALLTYPE whiteListAccessFromOrigin(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains); - virtual HRESULT STDMETHODCALLTYPE resetOriginAccessWhiteLists(); - + virtual HRESULT STDMETHODCALLTYPE addOriginAccessWhitelistEntry(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains); + virtual HRESULT STDMETHODCALLTYPE removeOriginAccessWhitelistEntry(BSTR sourceOrigin, BSTR destinationProtocol, BSTR destinationHost, BOOL allowDestinationSubdomains); + virtual HRESULT STDMETHODCALLTYPE resetOriginAccessWhitelists(); virtual HRESULT STDMETHODCALLTYPE setHistoryDelegate(IWebHistoryDelegate* historyDelegate); virtual HRESULT STDMETHODCALLTYPE historyDelegate(IWebHistoryDelegate** historyDelegate); @@ -779,9 +804,12 @@ public: virtual HRESULT STDMETHODCALLTYPE geolocationDidFailWithError(IWebError* error); virtual HRESULT STDMETHODCALLTYPE setDomainRelaxationForbiddenForURLScheme(BOOL forbidden, BSTR scheme); + virtual HRESULT STDMETHODCALLTYPE registerURLSchemeAsSecure(BSTR); + + virtual HRESULT STDMETHODCALLTYPE nextDisplayIsSynchronous(); // WebView - bool shouldUseEmbeddedView(const WebCore::String& mimeType) const; + bool shouldUseEmbeddedView(const WTF::String& mimeType) const; WebCore::Page* page(); bool handleMouseEvent(UINT, WPARAM, LPARAM); @@ -812,6 +840,7 @@ public: void frameRect(RECT* rect); void closeWindow(); void closeWindowSoon(); + void closeWindowTimerFired(); bool didClose() const { return m_didClose; } bool transparent() const { return m_transparent; } @@ -833,11 +862,11 @@ public: // Convenient to be able to violate the rules of COM here for easy movement to the frame. WebFrame* topLevelFrame() const { return m_mainFrame; } - const WebCore::String& userAgentForKURL(const WebCore::KURL& url); + const WTF::String& userAgentForKURL(const WebCore::KURL& url); static bool canHandleRequest(const WebCore::ResourceRequest&); - static WebCore::String standardUserAgentWithApplicationName(const WebCore::String&); + static WTF::String standardUserAgentWithApplicationName(const WTF::String&); void setIsBeingDestroyed() { m_isBeingDestroyed = true; } bool isBeingDestroyed() const { return m_isBeingDestroyed; } @@ -847,7 +876,7 @@ public: bool isPainting() const { return m_paintCount > 0; } - void setToolTip(const WebCore::String&); + void setToolTip(const WTF::String&); void registerForIconNotification(bool listen); void dispatchDidReceiveIconFromWebFrame(WebFrame*); @@ -865,6 +894,7 @@ public: void cancelDeleteBackingStoreSoon(); HWND topLevelParent() const { return m_topLevelParent; } + HWND viewWindow() const { return m_viewWindow; } void updateActiveState(); @@ -875,12 +905,14 @@ public: #if USE(ACCELERATED_COMPOSITING) void setRootLayerNeedsDisplay() { if (m_layerRenderer) m_layerRenderer->setNeedsDisplay(); } - void setRootChildLayer(WebCore::PlatformLayer* layer); + void setRootChildLayer(WebCore::WKCACFLayer* layer); #endif void enterFullscreenForNode(WebCore::Node*); void exitFullscreen(); + void setLastCursor(HCURSOR cursor) { m_lastSetCursor = cursor; } + private: void setZoomMultiplier(float multiplier, bool isTextOnly); float zoomMultiplier(bool isTextOnly); @@ -892,6 +924,8 @@ private: HRESULT resetZoom(bool isTextOnly); bool active(); + void sizeChanged(const WebCore::IntSize&); + enum WindowsToPaint { PaintWebViewOnly, PaintWebViewAndChildren }; void paintIntoBackingStore(WebCore::FrameView*, HDC bitmapDC, const WebCore::IntRect& dirtyRect, WindowsToPaint); void updateBackingStore(WebCore::FrameView*, HDC = 0, bool backingStoreCompletelyDirty = false, WindowsToPaint = PaintWebViewOnly); @@ -904,6 +938,11 @@ private: // (see https://bugs.webkit.org/show_bug.cgi?id=29264) DWORD m_lastDropEffect; +#if USE(ACCELERATED_COMPOSITING) + // WKCACFLayerRendererClient + virtual bool shouldRender() const; +#endif + protected: static bool registerWebViewWindowClass(); static LRESULT CALLBACK WebViewWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); @@ -914,7 +953,6 @@ protected: void preflightSpellChecker(); bool continuousCheckingAllowed(); void initializeToolTipWindow(); - void closeWindowTimerFired(WebCore::Timer<WebView>*); void prepareCandidateWindow(WebCore::Frame*, HIMC); void updateSelectionForIME(); LRESULT onIMERequestCharPosition(WebCore::Frame*, IMECHARPOSITION*); @@ -938,9 +976,9 @@ protected: WebFrame* m_mainFrame; WebCore::Page* m_page; - OwnPtr<HBITMAP> m_backingStoreBitmap; + RefPtr<RefCountedHBITMAP> m_backingStoreBitmap; SIZE m_backingStoreSize; - OwnPtr<HRGN> m_backingStoreDirtyRegion; + RefPtr<RefCountedHRGN> m_backingStoreDirtyRegion; COMPtr<IWebEditingDelegate> m_editingDelegate; COMPtr<IWebFrameLoadDelegate> m_frameLoadDelegate; @@ -959,11 +997,12 @@ protected: bool m_userAgentOverridden; bool m_useBackForwardList; - WebCore::String m_userAgentCustom; - WebCore::String m_userAgentStandard; + WTF::String m_userAgentCustom; + WTF::String m_userAgentStandard; float m_zoomMultiplier; - WebCore::String m_overrideEncoding; - WebCore::String m_applicationName; + bool m_zoomsTextOnly; + WTF::String m_overrideEncoding; + WTF::String m_applicationName; bool m_mouseActivated; // WebCore dragging logic needs to be able to inspect the drag data // this is updated in DragEnter/Leave/Drop @@ -979,19 +1018,19 @@ protected: bool m_hasCustomDropTarget; unsigned m_inIMEComposition; HWND m_toolTipHwnd; - WebCore::String m_toolTip; + WTF::String m_toolTip; bool m_deleteBackingStoreTimerActive; bool m_transparent; static bool s_allowSiteSpecificHacks; - WebCore::Timer<WebView> m_closeWindowTimer; + WebCore::SuspendableTimer* m_closeWindowTimer; OwnPtr<TRACKMOUSEEVENT> m_mouseOutTracker; HWND m_topLevelParent; - OwnPtr<HashSet<WebCore::String> > m_embeddedViewMIMETypes; + OwnPtr<HashSet<WTF::String> > m_embeddedViewMIMETypes; //Variables needed to store gesture information RefPtr<WebCore::Node> m_gestureTargetNode; @@ -1008,12 +1047,15 @@ protected: bool isAcceleratedCompositing() const { return m_isAcceleratedCompositing; } void setAcceleratedCompositing(bool); void updateRootLayerContents(); - void resizeLayerRenderer() { m_layerRenderer->resize(); } - void layerRendererBecameVisible() { m_layerRenderer->createRenderer(); } + void layerRendererBecameVisible(); OwnPtr<WebCore::WKCACFLayerRenderer> m_layerRenderer; bool m_isAcceleratedCompositing; #endif + + bool m_nextDisplayIsSynchronous; + + HCURSOR m_lastSetCursor; }; #endif |
