diff options
Diffstat (limited to 'WebKit/win')
| -rw-r--r-- | WebKit/win/ChangeLog | 46 | ||||
| -rw-r--r-- | WebKit/win/WebCoreSupport/WebEditorClient.cpp | 6 | ||||
| -rw-r--r-- | WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h | 1 | ||||
| -rw-r--r-- | WebKit/win/WebView.cpp | 23 |
4 files changed, 66 insertions, 10 deletions
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog index 44869dc..6b81bcc 100644 --- a/WebKit/win/ChangeLog +++ b/WebKit/win/ChangeLog @@ -1,3 +1,49 @@ +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. diff --git a/WebKit/win/WebCoreSupport/WebEditorClient.cpp b/WebKit/win/WebCoreSupport/WebEditorClient.cpp index e05951c..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); diff --git a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h b/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h index ec0bef7..ed73454 100644 --- a/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h +++ b/WebKit/win/WebCoreSupport/WebGeolocationControllerClient.h @@ -42,6 +42,7 @@ public: virtual void geolocationDestroyed(); virtual void startUpdating(); virtual void stopUpdating(); + virtual void setEnableHighAccuracy(bool) { } virtual WebCore::GeolocationPosition* lastPosition(); private: diff --git a/WebKit/win/WebView.cpp b/WebKit/win/WebView.cpp index fb0aad5..41ae079 100644 --- a/WebKit/win/WebView.cpp +++ b/WebKit/win/WebView.cpp @@ -118,6 +118,7 @@ #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> @@ -2562,17 +2563,21 @@ HRESULT STDMETHODCALLTYPE WebView::initWithFrame( 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, 0, 0); + 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.geolocationControllerClient = new WebGeolocationControllerClient(this); +#endif + m_page = new Page(pageClients); BSTR localStoragePath; if (SUCCEEDED(m_preferences->localStorageDatabasePath(&localStoragePath))) { @@ -3652,7 +3657,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; } @@ -6412,7 +6417,7 @@ HRESULT WebView::setDomainRelaxationForbiddenForURLScheme(BOOL forbidden, BSTR s HRESULT WebView::registerURLSchemeAsSecure(BSTR scheme) { - SecurityOrigin::registerURLSchemeAsSecure(toString(scheme)); + SchemeRegistry::registerURLSchemeAsSecure(toString(scheme)); return S_OK; } |
