diff options
Diffstat (limited to 'WebKit/win')
-rw-r--r-- | WebKit/win/ChangeLog | 73 | ||||
-rw-r--r-- | WebKit/win/DefaultDownloadDelegate.cpp | 1 | ||||
-rwxr-xr-x | WebKit/win/Interfaces/IWebFramePrivate.idl | 2 | ||||
-rw-r--r-- | WebKit/win/Interfaces/WebKit.idl | 2 | ||||
-rw-r--r-- | WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp | 21 | ||||
-rw-r--r-- | WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h | 42 | ||||
-rw-r--r-- | WebKit/win/WebFrame.cpp | 28 | ||||
-rw-r--r-- | WebKit/win/WebFrame.h | 2 | ||||
-rw-r--r-- | WebKit/win/WebKit.vcproj/WebKit.vcproj | 8 | ||||
-rw-r--r-- | WebKit/win/WebKitDLL.h | 2 | ||||
-rw-r--r-- | WebKit/win/WebLocalizableStrings.cpp | 2 | ||||
-rw-r--r-- | WebKit/win/WebNotificationCenter.cpp | 2 | ||||
-rw-r--r-- | WebKit/win/WebPreferences.cpp | 2 | ||||
-rw-r--r-- | WebKit/win/WebView.cpp | 4 |
14 files changed, 184 insertions, 7 deletions
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog index acfeab7..cd0f234 100644 --- a/WebKit/win/ChangeLog +++ b/WebKit/win/ChangeLog @@ -1,3 +1,76 @@ +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 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/Interfaces/IWebFramePrivate.idl b/WebKit/win/Interfaces/IWebFramePrivate.idl index b04edfe..cf25204 100755 --- a/WebKit/win/Interfaces/IWebFramePrivate.idl +++ b/WebKit/win/Interfaces/IWebFramePrivate.idl @@ -90,6 +90,8 @@ interface IWebFramePrivate : IUnknown HRESULT pauseAnimation([in] BSTR animationName, [in] IDOMNode* node, [in] double secondsFromNow, [out, retval] BOOL* animationWasRunning); HRESULT pauseTransition([in] BSTR propertyName, [in] IDOMNode* node, [in] double secondsFromNow, [out, retval] BOOL* transitionWasRunning); HRESULT numberOfActiveAnimations([out, retval] UINT* number); + HRESULT suspendAnimations(); + HRESULT resumeAnimations(); HRESULT isDisplayingStandaloneImage([out, retval] BOOL* result); diff --git a/WebKit/win/Interfaces/WebKit.idl b/WebKit/win/Interfaces/WebKit.idl index 8938501..d25cdfe 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/WebFrameNetworkingContext.cpp b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp new file mode 100644 index 0000000..941cfaa --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.cpp @@ -0,0 +1,21 @@ +/* + 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. +*/ + +// Checking this file in empty to get the build system work out of the way. +// Will put the code in here later. diff --git a/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h new file mode 100644 index 0000000..7fd55d5 --- /dev/null +++ b/WebKit/win/WebCoreSupport/WebFrameNetworkingContext.h @@ -0,0 +1,42 @@ +/* + 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> + +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; + + WTF::String m_userAgent; +}; + +#endif // WebFrameNetworkingContext_h diff --git a/WebKit/win/WebFrame.cpp b/WebKit/win/WebFrame.cpp index f07821f..500a643 100644 --- a/WebKit/win/WebFrame.cpp +++ b/WebKit/win/WebFrame.cpp @@ -1297,6 +1297,34 @@ HRESULT WebFrame::numberOfActiveAnimations(UINT* number) return S_OK; } +HRESULT WebFrame::suspendAnimations() +{ + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + AnimationController* controller = frame->animation(); + if (!controller) + return E_FAIL; + + controller->suspendAnimations(frame->document()); + return S_OK; +} + +HRESULT WebFrame::resumeAnimations() +{ + Frame* frame = core(this); + if (!frame) + return E_FAIL; + + AnimationController* controller = frame->animation(); + if (!controller) + return E_FAIL; + + controller->resumeAnimations(frame->document()); + return S_OK; +} + HRESULT WebFrame::isDisplayingStandaloneImage(BOOL* result) { if (!result) diff --git a/WebKit/win/WebFrame.h b/WebKit/win/WebFrame.h index 6f8b56a..24a7e2b 100644 --- a/WebKit/win/WebFrame.h +++ b/WebKit/win/WebFrame.h @@ -258,6 +258,8 @@ 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 isDisplayingStandaloneImage(BOOL*); diff --git a/WebKit/win/WebKit.vcproj/WebKit.vcproj b/WebKit/win/WebKit.vcproj/WebKit.vcproj index 85e8ee1..822e13c 100644 --- a/WebKit/win/WebKit.vcproj/WebKit.vcproj +++ b/WebKit/win/WebKit.vcproj/WebKit.vcproj @@ -1296,6 +1296,14 @@ >
</File>
<File
+ RelativePath="..\WebCoreSupport\WebFrameNetworkingContext.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\WebCoreSupport\WebFrameNetworkingContext.h"
+ >
+ </File>
+ <File
RelativePath="..\WebCoreSupport\WebGeolocationControllerClient.cpp"
>
</File>
diff --git a/WebKit/win/WebKitDLL.h b/WebKit/win/WebKitDLL.h index c31bc2d..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) diff --git a/WebKit/win/WebLocalizableStrings.cpp b/WebKit/win/WebLocalizableStrings.cpp index ab2db5d..da6b221 100644 --- a/WebKit/win/WebLocalizableStrings.cpp +++ b/WebKit/win/WebLocalizableStrings.cpp @@ -30,8 +30,8 @@ #pragma warning(push, 0) #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/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/WebPreferences.cpp b/WebKit/win/WebPreferences.cpp index 25cfbda..255b68e 100644 --- a/WebKit/win/WebPreferences.cpp +++ b/WebKit/win/WebPreferences.cpp @@ -32,10 +32,10 @@ #include "WebNotificationCenter.h" #include "WebPreferenceKeysPrivate.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" diff --git a/WebKit/win/WebView.cpp b/WebKit/win/WebView.cpp index c307c02..6d610a1 100644 --- a/WebKit/win/WebView.cpp +++ b/WebKit/win/WebView.cpp @@ -3694,7 +3694,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; } @@ -3709,7 +3709,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; } |