From bec39347bb3bb5bf1187ccaf471d26247f28b585 Mon Sep 17 00:00:00 2001 From: Kristian Monsen Date: Thu, 30 Sep 2010 15:42:16 +0100 Subject: Merge WebKit at r68651 : Initial merge by git. Change-Id: I3d6bff59f17eedd6722723354f386fec9be8ad12 --- WebKit/win/ChangeLog | 134 +++++++++++++++++++++ WebKit/win/Interfaces/IWebPreferencesPrivate.idl | 3 + WebKit/win/Interfaces/WebKit.idl | 2 +- WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp | 2 +- WebKit/win/WebCoreSupport/WebFrameLoaderClient.h | 2 +- .../win/WebCoreSupport/WebPlatformStrategies.cpp | 52 +++++++- WebKit/win/WebCoreSupport/WebPlatformStrategies.h | 12 +- WebKit/win/WebFrame.cpp | 1 - WebKit/win/WebKit.vcproj/WebKit.sln | 24 ++-- WebKit/win/WebPreferenceKeysPrivate.h | 1 + WebKit/win/WebPreferences.cpp | 14 +++ WebKit/win/WebPreferences.h | 3 + WebKit/win/WebView.cpp | 20 ++- 13 files changed, 247 insertions(+), 23 deletions(-) (limited to 'WebKit/win') diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog index 251bf91..4933b24 100644 --- a/WebKit/win/ChangeLog +++ b/WebKit/win/ChangeLog @@ -1,3 +1,137 @@ +2010-09-28 Jenn Braithwaite + + 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 + + Unreviewed build fix (win; broken in r68371) + + * WebFrame.cpp: remove include + +2010-09-23 Matthew Delaney + + 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 + + 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 + + Unreviewed, build fix. + + Look for hyperlinkAuditingEnabled in the right set of preferences. + + * WebView.cpp: + (WebView::notifyPreferencesChanged): + +2010-09-23 Nate Chapin + + Reviewed by Darin Fisher. + + Add hyperlink auditing settings (i.e., ). + 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 + + 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 + + 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 + + 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 + + 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 + + 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 Reviewed by Sam Weinig. diff --git a/WebKit/win/Interfaces/IWebPreferencesPrivate.idl b/WebKit/win/Interfaces/IWebPreferencesPrivate.idl index bca8d6f..68cbcf3 100644 --- a/WebKit/win/Interfaces/IWebPreferencesPrivate.idl +++ b/WebKit/win/Interfaces/IWebPreferencesPrivate.idl @@ -118,4 +118,7 @@ interface IWebPreferencesPrivate : IUnknown HRESULT memoryInfoEnabled([out, retval] BOOL *enabled); HRESULT setMemoryInfoEnabled([in] BOOL enabled); + + HRESULT hyperlinkAuditingEnabled(BOOL *hyperlinkAuditingEnabled); + HRESULT setHyperlinkAuditingEnabled(BOOL hyperlinkAuditingEnabled); } diff --git a/WebKit/win/Interfaces/WebKit.idl b/WebKit/win/Interfaces/WebKit.idl index d25cdfe..8938501 100644 --- a/WebKit/win/Interfaces/WebKit.idl +++ b/WebKit/win/Interfaces/WebKit.idl @@ -20,7 +20,7 @@ * 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("/*") diff --git a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp index 1fb827d..4b05338 100644 --- a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp +++ b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp @@ -728,7 +728,7 @@ PassRefPtr WebFrameLoaderClient::createFrame(const KURL& url, const Strin return result.release(); } -void WebFrameLoaderClient::didTransferChildFrameToNewDocument() +void WebFrameLoaderClient::didTransferChildFrameToNewDocument(Page*) { } diff --git a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h index 6e8e354..7ec344c 100644 --- a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h +++ b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h @@ -112,7 +112,7 @@ public: virtual PassRefPtr 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(); + virtual void didTransferChildFrameToNewDocument(WebCore::Page*); virtual PassRefPtr createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector&, const Vector&, const WTF::String&, bool loadManually); virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget); diff --git a/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp b/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp index 00a2eab..fe35877 100644 --- a/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp +++ b/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp @@ -68,7 +68,7 @@ void WebPlatformStrategies::refreshPlugins() PluginDatabase::installedPlugins()->refresh(); } -void WebPlatformStrategies::getPluginInfo(Vector& outPlugins) +void WebPlatformStrategies::getPluginInfo(const WebCore::Page*, Vector& outPlugins) { const Vector& plugins = PluginDatabase::installedPlugins()->plugins(); @@ -163,6 +163,56 @@ 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"); diff --git a/WebKit/win/WebCoreSupport/WebPlatformStrategies.h b/WebKit/win/WebCoreSupport/WebPlatformStrategies.h index c3cfbb4..48c2b46 100644 --- a/WebKit/win/WebCoreSupport/WebPlatformStrategies.h +++ b/WebKit/win/WebCoreSupport/WebPlatformStrategies.h @@ -45,7 +45,7 @@ private: // WebCore::PluginStrategy virtual void refreshPlugins(); - virtual void getPluginInfo(Vector&); + virtual void getPluginInfo(const WebCore::Page*, Vector&); // WebCore::LocalizationStrategy virtual WTF::String inputElementAltText(); @@ -92,6 +92,16 @@ private: 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(); diff --git a/WebKit/win/WebFrame.cpp b/WebKit/win/WebFrame.cpp index 843f33a..27da1f4 100644 --- a/WebKit/win/WebFrame.cpp +++ b/WebKit/win/WebFrame.cpp @@ -89,7 +89,6 @@ #include #include #include -#include #include #include #include diff --git a/WebKit/win/WebKit.vcproj/WebKit.sln b/WebKit/win/WebKit.vcproj/WebKit.sln index 251fa5f..504bae3 100644 --- a/WebKit/win/WebKit.vcproj/WebKit.sln +++ b/WebKit/win/WebKit.vcproj/WebKit.sln @@ -413,14 +413,14 @@ Global {114FCA11-216B-4C8C-957E-30A75AE80443}.Release|Win32.Build.0 = Release|Win32 {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_All|Win32.ActiveCfg = Debug_All|Win32 {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_All|Win32.Build.0 = Debug_All|Win32 - {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32 - {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo|Win32.Build.0 = Debug|Win32 + {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32 + {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32 {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Internal|Win32.ActiveCfg = Debug_Internal|Win32 {CBC3391C-F060-4BF5-A66E-81404168816B}.Debug_Internal|Win32.Build.0 = Debug_Internal|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|Win32.ActiveCfg = Release|Win32 - {CBC3391C-F060-4BF5-A66E-81404168816B}.Release_Cairo|Win32.Build.0 = Release|Win32 + {CBC3391C-F060-4BF5-A66E-81404168816B}.Release_Cairo|Win32.ActiveCfg = Release_CFLite|Win32 + {CBC3391C-F060-4BF5-A66E-81404168816B}.Release_Cairo|Win32.Build.0 = Release_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_All|Win32.ActiveCfg = all|Win32 @@ -437,26 +437,26 @@ Global {4343BC0B-A2E0-4B48-8277-F33CFBFA83CD}.Release|Win32.Build.0 = all|Win32 {3B99669B-1817-443B-BCBE-835580146668}.Debug_All|Win32.ActiveCfg = Debug_All|Win32 {3B99669B-1817-443B-BCBE-835580146668}.Debug_All|Win32.Build.0 = Debug_All|Win32 - {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32 - {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo|Win32.Build.0 = Debug|Win32 + {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32 + {3B99669B-1817-443B-BCBE-835580146668}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32 {3B99669B-1817-443B-BCBE-835580146668}.Debug_Internal|Win32.ActiveCfg = Debug_Internal|Win32 {3B99669B-1817-443B-BCBE-835580146668}.Debug_Internal|Win32.Build.0 = Debug_Internal|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|Win32.ActiveCfg = Release|Win32 - {3B99669B-1817-443B-BCBE-835580146668}.Release_Cairo|Win32.Build.0 = Release|Win32 + {3B99669B-1817-443B-BCBE-835580146668}.Release_Cairo|Win32.ActiveCfg = Release_CFLite|Win32 + {3B99669B-1817-443B-BCBE-835580146668}.Release_Cairo|Win32.Build.0 = Release_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_All|Win32.ActiveCfg = Debug_All|Win32 {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_All|Win32.Build.0 = Debug_All|Win32 - {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo|Win32.ActiveCfg = Debug|Win32 - {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo|Win32.Build.0 = Debug|Win32 + {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo|Win32.ActiveCfg = Debug_CFLite|Win32 + {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Cairo|Win32.Build.0 = Debug_CFLite|Win32 {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Internal|Win32.ActiveCfg = Debug_Internal|Win32 {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Debug_Internal|Win32.Build.0 = Debug_Internal|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|Win32.ActiveCfg = Release|Win32 - {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release_Cairo|Win32.Build.0 = Release|Win32 + {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release_Cairo|Win32.ActiveCfg = Release_CFLite|Win32 + {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release_Cairo|Win32.Build.0 = Release_CFLite|Win32 {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release|Win32.ActiveCfg = Release|Win32 {1480CF5F-4160-47B5-A0E6-96AEC8258FB5}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection diff --git a/WebKit/win/WebPreferenceKeysPrivate.h b/WebKit/win/WebPreferenceKeysPrivate.h index f62905c..0b781d8 100644 --- a/WebKit/win/WebPreferenceKeysPrivate.h +++ b/WebKit/win/WebPreferenceKeysPrivate.h @@ -66,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. diff --git a/WebKit/win/WebPreferences.cpp b/WebKit/win/WebPreferences.cpp index 255b68e..d4bfd3e 100644 --- a/WebKit/win/WebPreferences.cpp +++ b/WebKit/win/WebPreferences.cpp @@ -264,6 +264,7 @@ void WebPreferences::initializeDefaultSettings() CFDictionaryAddValue(defaults, CFSTR(WebKitDNSPrefetchingEnabledPreferenceKey), kCFBooleanTrue); CFDictionaryAddValue(defaults, CFSTR(WebKitMemoryInfoEnabledPreferenceKey), kCFBooleanFalse); + CFDictionaryAddValue(defaults, CFSTR(WebKitHyperlinkAuditingEnabledPreferenceKey), kCFBooleanFalse); defaultSettings = defaults; } @@ -1148,6 +1149,19 @@ HRESULT STDMETHODCALLTYPE WebPreferences::setEditingBehavior( 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 ) diff --git a/WebKit/win/WebPreferences.h b/WebKit/win/WebPreferences.h index 463e1b3..d09945a 100644 --- a/WebKit/win/WebPreferences.h +++ b/WebKit/win/WebPreferences.h @@ -426,6 +426,9 @@ public: 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/WebView.cpp b/WebKit/win/WebView.cpp index 04794c9..547daf8 100755 --- a/WebKit/win/WebView.cpp +++ b/WebKit/win/WebView.cpp @@ -2561,12 +2561,18 @@ HRESULT STDMETHODCALLTYPE WebView::initWithFrame( sharedPreferences->willAddToWebView(); m_preferences = sharedPreferences; - InitializeLoggingChannelsIfNecessary(); + static bool didOneTimeInitialization; + if (!didOneTimeInitialization) { + InitializeLoggingChannelsIfNecessary(); #if ENABLE(DATABASE) - WebKitInitializeWebDatabasesIfNecessary(); + WebKitInitializeWebDatabasesIfNecessary(); #endif - WebKitSetApplicationCachePathIfNecessary(); - WebPlatformStrategies::initialize(); + WebKitSetApplicationCachePathIfNecessary(); + WebPlatformStrategies::initialize(); + Settings::setMinDOMTimerInterval(0.004); + + didOneTimeInitialization = true; + } #if USE(SAFARI_THEME) BOOL shouldPaintNativeControls; @@ -2589,7 +2595,6 @@ HRESULT STDMETHODCALLTYPE WebView::initWithFrame( pageClients.geolocationControllerClient = new WebGeolocationControllerClient(this); #endif m_page = new Page(pageClients); - m_page->settings()->setMinDOMTimerInterval(0.004); BSTR localStoragePath; if (SUCCEEDED(m_preferences->localStorageDatabasePath(&localStoragePath))) { @@ -4772,6 +4777,11 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification) 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 -- cgit v1.1