Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
authorbenjamin@webkit.org <benjamin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Mar 2012 20:10:27 +0000 (20:10 +0000)
committerbenjamin@webkit.org <benjamin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Mar 2012 20:10:27 +0000 (20:10 +0000)
https://bugs.webkit.org/show_bug.cgi?id=78853

Patch by Adam Barth  <abarth@webkit.org> && Benjamin Poulain <bpoulain@apple.com> on 2012-03-13
Reviewed by Adam Barth.

.:

* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:
* wtf/Platform.h:

Source/WebCore:

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Modules/geolocation/Geolocation.cpp:
(WebCore):
(WebCore::createPositionError):
(WebCore::Geolocation::Geolocation):
(WebCore::Geolocation::stop):
(WebCore::Geolocation::lastPosition):
(WebCore::Geolocation::requestPermission):
(WebCore::Geolocation::startUpdating):
(WebCore::Geolocation::stopUpdating):
* Modules/geolocation/Geolocation.h:
(WebCore):
(Geolocation):
* Modules/geolocation/GeolocationController.cpp:
* Modules/geolocation/GeolocationController.h:
* Modules/geolocation/GeolocationError.h:
* Modules/geolocation/GeolocationPosition.h:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* bindings/js/JSGeolocationCustom.cpp:
* loader/EmptyClients.h:
(EmptyChromeClient):
* page/ChromeClient.h:
(ChromeClient):
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(Page):
* platform/GeolocationService.cpp: Removed.
* platform/GeolocationService.h: Removed.
* platform/mock/GeolocationClientMock.cpp:
* platform/mock/GeolocationClientMock.h:
* platform/mock/GeolocationServiceMock.cpp: Removed.
* platform/mock/GeolocationServiceMock.h: Removed.

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):
* WebCoreSupport/AboutDataEnableFeatures.in:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):
* WebKitSupport/DumpRenderTreeSupport.cpp:
(toGeolocationClientMock):
(DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests):
(DumpRenderTreeSupport::resetGeolocationMock):
(DumpRenderTreeSupport::setMockGeolocationError):
(DumpRenderTreeSupport::setMockGeolocationPermission):
(DumpRenderTreeSupport::setMockGeolocationPosition):

Source/WebKit/chromium:

* features.gypi:
* src/ChromeClientImpl.cpp:
* src/ChromeClientImpl.h:
(ChromeClientImpl):

Source/WebKit/efl:

* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore):
* WebCoreSupport/ChromeClientEfl.h:
(ChromeClientEfl):

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit):
* WebCoreSupport/ChromeClientGtk.h:
(WebKit::ChromeClient::scrollRectIntoView):
* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::resetGeolocationClientMock):
(DumpRenderTreeSupportGtk::setMockGeolocationPermission):
(DumpRenderTreeSupportGtk::setMockGeolocationPosition):
(DumpRenderTreeSupportGtk::setMockGeolocationError):
(DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
* WebCoreSupport/GeolocationClientGtk.cpp:
(WebKit::GeolocationClient::requestPermission):
(WebKit::GeolocationClient::cancelPermissionRequest):
* WebCoreSupport/GeolocationClientGtk.h:
(WebKit):
* webkit/webkitwebview.cpp:
(webkit_web_view_init):

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient):
* WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::lastPosition):
* WebView/WebGeolocationPosition.mm:
(-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
(core):
(-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
* WebView/WebGeolocationPositionInternal.h:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _geolocationDidChangePosition:]):
(-[WebView _geolocationDidFailWithError:]):

Source/WebKit/qt:

* Api/qwebpage.cpp:
(QWebPagePrivate::QWebPagePrivate):
* WebCoreSupport/ChromeClientQt.h:
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(toGeolocationClientMock):
(DumpRenderTreeSupportQt::resetGeolocationMock):
(DumpRenderTreeSupportQt::setMockGeolocationPermission):
(DumpRenderTreeSupportQt::setMockGeolocationPosition):
(DumpRenderTreeSupportQt::setMockGeolocationError):
(DumpRenderTreeSupportQt::numberOfPendingGeolocationPermissionRequests):
* WebCoreSupport/GeolocationClientQt.h:
(WebCore):

Source/WebKit/win:

* WebCoreSupport/WebChromeClient.h:
(WebChromeClient):
* WebCoreSupport/WebGeolocationClient.cpp:
(WebGeolocationClient::lastPosition):
* WebGeolocationPosition.cpp:
(WebGeolocationPosition::initWithTimestamp):
(core):
* WebGeolocationPosition.h:
(WebGeolocationPosition):
(WebGeolocationPosition::impl):
* WebView.cpp:
(WebView::initWithFrame):
(WebView::geolocationDidChangePosition):
(WebView::geolocationDidFailWithError):

Source/WebKit/wince:

* WebCoreSupport/ChromeClientWinCE.cpp:
* WebCoreSupport/ChromeClientWinCE.h:
(ChromeClientWinCE):

Source/WebKit/wx:

* WebKitSupport/ChromeClientWx.cpp:
* WebKitSupport/ChromeClientWx.h:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:
* WebProcess/Geolocation/WebGeolocationManager.cpp:
(WebKit::WebGeolocationManager::registerWebPage):
(WebKit::WebGeolocationManager::unregisterWebPage):
(WebKit::WebGeolocationManager::didChangePosition):
(WebKit::WebGeolocationManager::didFailToDeterminePosition):
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setGeoLocationPermission):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit):
* WebProcess/WebCoreSupport/WebChromeClient.h:
(WebChromeClient):
* WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
* WebProcess/WebCoreSupport/WebGeolocationClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* mac/WebKit2.order:

Tools:

* Scripts/build-webkit:
* qmake/mkspecs/features/features.prf:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@110595 268f45cc-cd09-0410-ab3c-d52691b4dbfc

94 files changed:
ChangeLog
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/JavaScriptCore/wtf/Platform.h
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/GNUmakefile.am
Source/WebCore/GNUmakefile.list.am
Source/WebCore/Modules/geolocation/Geolocation.cpp
Source/WebCore/Modules/geolocation/Geolocation.h
Source/WebCore/Modules/geolocation/GeolocationController.cpp
Source/WebCore/Modules/geolocation/GeolocationController.h
Source/WebCore/Modules/geolocation/GeolocationError.h
Source/WebCore/Modules/geolocation/GeolocationPosition.h
Source/WebCore/Target.pri
Source/WebCore/WebCore.exp.in
Source/WebCore/WebCore.gypi
Source/WebCore/WebCore.vcproj/WebCore.vcproj
Source/WebCore/bindings/js/JSGeolocationCustom.cpp
Source/WebCore/loader/EmptyClients.h
Source/WebCore/page/ChromeClient.h
Source/WebCore/page/Page.cpp
Source/WebCore/page/Page.h
Source/WebCore/platform/GeolocationService.cpp [deleted file]
Source/WebCore/platform/GeolocationService.h [deleted file]
Source/WebCore/platform/mock/GeolocationClientMock.cpp
Source/WebCore/platform/mock/GeolocationClientMock.h
Source/WebCore/platform/mock/GeolocationServiceMock.cpp [deleted file]
Source/WebCore/platform/mock/GeolocationServiceMock.h [deleted file]
Source/WebKit/blackberry/Api/WebPage.cpp
Source/WebKit/blackberry/ChangeLog
Source/WebKit/blackberry/WebCoreSupport/AboutDataEnableFeatures.in
Source/WebKit/blackberry/WebCoreSupport/ChromeClientBlackBerry.cpp
Source/WebKit/blackberry/WebCoreSupport/ChromeClientBlackBerry.h
Source/WebKit/blackberry/WebKitSupport/DumpRenderTreeSupport.cpp
Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/features.gypi
Source/WebKit/chromium/src/ChromeClientImpl.cpp
Source/WebKit/chromium/src/ChromeClientImpl.h
Source/WebKit/efl/ChangeLog
Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
Source/WebKit/gtk/ChangeLog
Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp
Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h
Source/WebKit/gtk/webkit/webkitwebview.cpp
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
Source/WebKit/mac/WebCoreSupport/WebChromeClient.h
Source/WebKit/mac/WebCoreSupport/WebGeolocationClient.mm
Source/WebKit/mac/WebView/WebGeolocationPosition.mm
Source/WebKit/mac/WebView/WebGeolocationPositionInternal.h
Source/WebKit/mac/WebView/WebView.mm
Source/WebKit/qt/Api/qwebpage.cpp
Source/WebKit/qt/ChangeLog
Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h
Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
Source/WebKit/qt/WebCoreSupport/GeolocationClientQt.h
Source/WebKit/win/ChangeLog
Source/WebKit/win/WebCoreSupport/WebChromeClient.h
Source/WebKit/win/WebCoreSupport/WebGeolocationClient.cpp
Source/WebKit/win/WebGeolocationPosition.cpp
Source/WebKit/win/WebGeolocationPosition.h
Source/WebKit/win/WebView.cpp
Source/WebKit/wince/ChangeLog
Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp
Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h
Source/WebKit/wx/ChangeLog
Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
Source/WebKit/wx/WebKitSupport/ChromeClientWx.h
Source/WebKit2/ChangeLog
Source/WebKit2/Configurations/FeatureDefines.xcconfig
Source/WebKit2/WebProcess/Geolocation/WebGeolocationManager.cpp
Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
Source/WebKit2/WebProcess/WebCoreSupport/WebGeolocationClient.cpp
Source/WebKit2/WebProcess/WebCoreSupport/WebGeolocationClient.h
Source/WebKit2/WebProcess/WebPage/WebPage.cpp
Source/WebKit2/mac/WebKit2.order
Source/cmake/OptionsBlackBerry.cmake
Source/cmake/OptionsEfl.cmake
Source/cmake/OptionsWinCE.cmake
Source/cmakeconfig.h.cmake
Tools/ChangeLog
Tools/Scripts/build-webkit
Tools/qmake/mkspecs/features/features.prf
WebKitLibraries/ChangeLog
WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops
WebKitLibraries/win/tools/vsprops/FeatureDefinesCairo.vsprops

index e3232b3..d21f496 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Source/cmake/OptionsBlackBerry.cmake:
+        * Source/cmake/OptionsEfl.cmake:
+        * Source/cmake/OptionsWinCE.cmake:
+        * Source/cmakeconfig.h.cmake:
+
 2012-03-13  Max Vujovic  <mvujovic@adobe.com>
 
         Add a method to window.internals to enable testing of inspector highlight rects
index 4c71fee..dee4855 100644 (file)
@@ -1,3 +1,13 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * wtf/Platform.h:
+
 2012-03-13  Kwonjin Jeong  <gram@company100.net>
 
         Remove SlotVisitor::copy() method.
index 58a02f5..dd7cdd1 100644 (file)
@@ -34,9 +34,6 @@
 ENABLE_BLOB = $(ENABLE_BLOB_$(REAL_PLATFORM_NAME));
 ENABLE_BLOB_macosx = ENABLE_BLOB;
 
-ENABLE_CLIENT_BASED_GEOLOCATION = $(ENABLE_CLIENT_BASED_GEOLOCATION_$(REAL_PLATFORM_NAME));
-ENABLE_CLIENT_BASED_GEOLOCATION_macosx = ENABLE_CLIENT_BASED_GEOLOCATION;
-
 ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(REAL_PLATFORM_NAME));
 ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;
 
@@ -132,4 +129,4 @@ ENABLE_WEB_TIMING = ;
 ENABLE_WORKERS = ENABLE_WORKERS;
 ENABLE_XSLT = ENABLE_XSLT;
 
-FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
index 9ed1b83..caa8e88 100644 (file)
 #define WTF_USE_ACCESSIBILITY_CONTEXT_MENUS 1
 #endif
 
-/* Geolocation request policy. pre-emptive policy is to acquire user permission before acquiring location.
-   Client based implementations will have option to choose between pre-emptive and nonpre-emptive permission policy.
-   pre-emptive permission policy is enabled by default for all client-based implementations. */
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+/* Geolocation request policy. pre-emptive policy is to acquire user permission before acquiring location. */
 #define WTF_USE_PREEMPT_GEOLOCATION_PERMISSION 1
-#endif
 
 #if CPU(ARM_THUMB2)
 #define ENABLE_BRANCH_COMPACTION 1
index d4b54de..2db6d09 100644 (file)
@@ -1089,7 +1089,6 @@ SET(WebCore_SOURCES
     platform/FileIconLoader.cpp
     platform/FileSystem.cpp
     platform/ClockGeneric.cpp
-    platform/GeolocationService.cpp
     platform/HistogramSupport.cpp
     platform/KURL.cpp
     platform/KillRingNone.cpp
@@ -1211,7 +1210,6 @@ SET(WebCore_SOURCES
 
     platform/mock/DeviceOrientationClientMock.cpp
     platform/mock/GeolocationClientMock.cpp
-    platform/mock/GeolocationServiceMock.cpp
     platform/mock/ScrollbarThemeMock.cpp
 
     platform/network/AuthenticationChallengeBase.cpp
index 69cf3f5..dac3a40 100644 (file)
@@ -1,3 +1,50 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * CMakeLists.txt:
+        * Configurations/FeatureDefines.xcconfig:
+        * GNUmakefile.am:
+        * GNUmakefile.list.am:
+        * Modules/geolocation/Geolocation.cpp:
+        (WebCore):
+        (WebCore::createPositionError):
+        (WebCore::Geolocation::Geolocation):
+        (WebCore::Geolocation::stop):
+        (WebCore::Geolocation::lastPosition):
+        (WebCore::Geolocation::requestPermission):
+        (WebCore::Geolocation::startUpdating):
+        (WebCore::Geolocation::stopUpdating):
+        * Modules/geolocation/Geolocation.h:
+        (WebCore):
+        (Geolocation):
+        * Modules/geolocation/GeolocationController.cpp:
+        * Modules/geolocation/GeolocationController.h:
+        * Modules/geolocation/GeolocationError.h:
+        * Modules/geolocation/GeolocationPosition.h:
+        * Target.pri:
+        * WebCore.exp.in:
+        * WebCore.gypi:
+        * WebCore.vcproj/WebCore.vcproj:
+        * bindings/js/JSGeolocationCustom.cpp:
+        * loader/EmptyClients.h:
+        (EmptyChromeClient):
+        * page/ChromeClient.h:
+        (ChromeClient):
+        * page/Page.cpp:
+        (WebCore::Page::Page):
+        * page/Page.h:
+        (Page):
+        * platform/GeolocationService.cpp: Removed.
+        * platform/GeolocationService.h: Removed.
+        * platform/mock/GeolocationClientMock.cpp:
+        * platform/mock/GeolocationClientMock.h:
+        * platform/mock/GeolocationServiceMock.cpp: Removed.
+        * platform/mock/GeolocationServiceMock.h: Removed.
+
 2012-03-12  Antonio Gomes  <agomes@rim.com>
 
         Convert nodesFromRect tests to use Internals interface
index 58a02f5..dd7cdd1 100644 (file)
@@ -34,9 +34,6 @@
 ENABLE_BLOB = $(ENABLE_BLOB_$(REAL_PLATFORM_NAME));
 ENABLE_BLOB_macosx = ENABLE_BLOB;
 
-ENABLE_CLIENT_BASED_GEOLOCATION = $(ENABLE_CLIENT_BASED_GEOLOCATION_$(REAL_PLATFORM_NAME));
-ENABLE_CLIENT_BASED_GEOLOCATION_macosx = ENABLE_CLIENT_BASED_GEOLOCATION;
-
 ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(REAL_PLATFORM_NAME));
 ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;
 
@@ -132,4 +129,4 @@ ENABLE_WEB_TIMING = ;
 ENABLE_WORKERS = ENABLE_WORKERS;
 ENABLE_XSLT = ENABLE_XSLT;
 
-FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
index b1fefef..52324f3 100644 (file)
@@ -462,8 +462,8 @@ endif # END ENABLE_FILTERS
 # ----
 if ENABLE_GEOLOCATION
 
-FEATURE_DEFINES += ENABLE_GEOLOCATION=1 ENABLE_CLIENT_BASED_GEOLOCATION=1
-webcore_cppflags += -DENABLE_GEOLOCATION=1 -DENABLE_CLIENT_BASED_GEOLOCATION=1
+FEATURE_DEFINES += ENABLE_GEOLOCATION=1
+webcore_cppflags += -DENABLE_GEOLOCATION=1
 endif # END ENABLE_GEOLOCATION
 
 # ----
index f888cb0..81e30d8 100644 (file)
@@ -3025,8 +3025,6 @@ webcore_sources += \
        Source/WebCore/platform/FileSystem.h \
        Source/WebCore/platform/FloatConversion.h \
        Source/WebCore/platform/FractionalLayoutUnit.h \
-       Source/WebCore/platform/GeolocationService.cpp \
-       Source/WebCore/platform/GeolocationService.h \
        Source/WebCore/platform/HashTools.h \
        Source/WebCore/platform/HistogramSupport.cpp \
        Source/WebCore/platform/HistogramSupport.h \
@@ -3336,8 +3334,6 @@ webcore_sources += \
        Source/WebCore/platform/mock/DeviceOrientationClientMock.h \
        Source/WebCore/platform/mock/GeolocationClientMock.cpp \
        Source/WebCore/platform/mock/GeolocationClientMock.h \
-       Source/WebCore/platform/mock/GeolocationServiceMock.cpp \
-       Source/WebCore/platform/mock/GeolocationServiceMock.h \
        Source/WebCore/platform/mock/ScrollbarThemeMock.cpp \
        Source/WebCore/platform/mock/ScrollbarThemeMock.h \
        Source/WebCore/platform/network/AuthenticationChallengeBase.cpp \
index a689a18..9f64754 100644 (file)
 #include "Page.h"
 #include <wtf/CurrentTime.h>
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #include "Coordinates.h"
 #include "GeolocationController.h"
 #include "GeolocationError.h"
 #include "GeolocationPosition.h"
 #include "PositionError.h"
-#endif
 
 namespace WebCore {
 
@@ -54,8 +52,6 @@ static const char framelessDocumentErrorMessage[] = "Geolocation cannot be used
 
 static const int firstAvailableWatchId = 1;
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 static PassRefPtr<Geoposition> createGeoposition(GeolocationPosition* position)
 {
     if (!position)
@@ -81,7 +77,6 @@ static PassRefPtr<PositionError> createPositionError(GeolocationError* error)
 
     return PositionError::create(code, error->message());
 }
-#endif
 
 Geolocation::GeoNotifier::GeoNotifier(Geolocation* geolocation, PassRefPtr<PositionCallback> successCallback, PassRefPtr<PositionErrorCallback> errorCallback, PassRefPtr<PositionOptions> options)
     : m_geolocation(geolocation)
@@ -234,9 +229,6 @@ PassRefPtr<Geolocation> Geolocation::create(ScriptExecutionContext* context)
 
 Geolocation::Geolocation(ScriptExecutionContext* context)
     : ActiveDOMObject(context, this)
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
-    , m_service(GeolocationService::create(this))
-#endif
     , m_allowGeolocation(Unknown)
 {
 }
@@ -271,13 +263,8 @@ void Geolocation::stop()
     // and https://bugs.webkit.org/show_bug.cgi?id=52877
 
     Page* page = this->page();
-    if (page && m_allowGeolocation == InProgress) {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+    if (page && m_allowGeolocation == InProgress)
         page->geolocationController()->cancelPermissionRequest(this);
-#else
-        page->chrome()->client()->cancelGeolocationPermissionRequestForFrame(frame(), this);
-#endif
-    }
     // The frame may be moving to a new page and we want to get the permissions from the new page's client.
     m_allowGeolocation = Unknown;
     cancelAllRequests();
@@ -289,15 +276,11 @@ void Geolocation::stop()
 
 Geoposition* Geolocation::lastPosition()
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* page = this->page();
     if (!page)
         return 0;
 
     m_lastPosition = createGeoposition(page->geolocationController()->lastPosition());
-#else
-    m_lastPosition = m_service->lastPosition();
-#endif
 
     return m_lastPosition.get();
 }
@@ -627,11 +610,7 @@ void Geolocation::requestPermission()
     m_allowGeolocation = InProgress;
 
     // Ask the embedder: it maintains the geolocation challenge policy itself.
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     page->geolocationController()->requestPermission(this);
-#else
-    page->chrome()->client()->requestGeolocationPermissionForFrame(frame(), this);
-#endif
 }
 
 void Geolocation::positionChangedInternal()
@@ -676,8 +655,6 @@ void Geolocation::makeSuccessCallbacks()
         stopUpdating();
 }
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 void Geolocation::positionChanged()
 {
     positionChangedInternal();
@@ -689,54 +666,23 @@ void Geolocation::setError(GeolocationError* error)
     handleError(positionError.get());
 }
 
-#else
-
-void Geolocation::geolocationServicePositionChanged(GeolocationService* service)
-{
-    ASSERT_UNUSED(service, service == m_service);
-    ASSERT(m_service->lastPosition());
-
-    positionChangedInternal();
-}
-
-void Geolocation::geolocationServiceErrorOccurred(GeolocationService* service)
-{
-    ASSERT(service->lastError());
-
-    // Note that we do not stop timers here. For one-shots, the request is
-    // cleared in handleError. For watchers, the spec requires that the timer is
-    // not cleared.
-    handleError(service->lastError());
-}
-
-#endif
-
 bool Geolocation::startUpdating(GeoNotifier* notifier)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* page = this->page();
     if (!page)
         return false;
 
     page->geolocationController()->addObserver(this, notifier->m_options->enableHighAccuracy());
     return true;
-#else
-    return m_service->startUpdating(notifier->m_options.get());
-#endif
 }
 
 void Geolocation::stopUpdating()
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* page = this->page();
     if (!page)
         return;
 
     page->geolocationController()->removeObserver(this);
-#else
-    m_service->stopUpdating();
-#endif
-
 }
 
 #if USE(PREEMPT_GEOLOCATION_PERMISSION)
@@ -762,17 +708,5 @@ void Geolocation::handlePendingPermissionNotifiers()
 #endif
 
 } // namespace WebCore
-
-#else
-
-namespace WebCore {
-
-void Geolocation::clearWatch(int) { }
-void Geolocation::stop() { }
-Geolocation::Geolocation(ScriptExecutionContext* context) : ActiveDOMObject(context, this) { }
-Geolocation::~Geolocation() { }
-void Geolocation::setIsAllowed(bool) { }
-
-}
                                                         
 #endif // ENABLE(GEOLOCATION)
index 2c6bab8..8dcbb3d 100644 (file)
@@ -27,6 +27,8 @@
 #ifndef Geolocation_h
 #define Geolocation_h
 
+#if ENABLE(GEOLOCATION)
+
 #include "ActiveDOMObject.h"
 #include "Geoposition.h"
 #include "PositionCallback.h"
 #include "PositionOptions.h"
 #include "Timer.h"
 
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
-#include "GeolocationService.h"
-#endif
-
 namespace WebCore {
 
 class Document;
 class Frame;
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 class GeolocationPosition;
 class GeolocationError;
-#endif
 class Page;
 class ScriptExecutionContext;
 
 class Geolocation : public RefCounted<Geolocation>, public ActiveDOMObject
-#if !ENABLE(CLIENT_BASED_GEOLOCATION) && ENABLE(GEOLOCATION)
-    , public GeolocationServiceClient
-#endif
 {
 public:
     static PassRefPtr<Geolocation> create(ScriptExecutionContext*);
@@ -69,12 +62,8 @@ public:
 
     void setIsAllowed(bool);
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     void positionChanged();
     void setError(GeolocationError*);
-#else
-    GeolocationService* getGeolocationService() const { return m_service.get(); }
-#endif
 
 private:
     Geoposition* lastPosition();
@@ -158,12 +147,6 @@ private:
     void handlePendingPermissionNotifiers();
 #endif
 
-#if !ENABLE(CLIENT_BASED_GEOLOCATION) && ENABLE(GEOLOCATION)
-    // GeolocationServiceClient
-    virtual void geolocationServicePositionChanged(GeolocationService*);
-    virtual void geolocationServiceErrorOccurred(GeolocationService*);
-#endif
-
     PassRefPtr<GeoNotifier> startRequest(PassRefPtr<PositionCallback>, PassRefPtr<PositionErrorCallback>, PassRefPtr<PositionOptions>);
 
     void fatalErrorOccurred(GeoNotifier*);
@@ -174,9 +157,6 @@ private:
 
     GeoNotifierSet m_oneShots;
     Watchers m_watchers;
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
-    OwnPtr<GeolocationService> m_service;
-#endif
 #if USE(PREEMPT_GEOLOCATION_PERMISSION)
     GeoNotifierSet m_pendingForPermissionNotifiers;
 #endif
@@ -189,13 +169,13 @@ private:
         No
     } m_allowGeolocation;
 
-#if ENABLE(GEOLOCATION)
     RefPtr<Geoposition> m_cachedPosition;
-#endif
     GeoNotifierSet m_requestsAwaitingCachedPosition;
 };
     
 } // namespace WebCore
 
+#endif // ENABLE(GEOLOCATION)
+
 #endif // Geolocation_h
 
index 9694a99..c91f318 100644 (file)
 
 #include "config.h"
 #include "GeolocationController.h"
-#include "GeolocationPosition.h"
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "GeolocationClient.h"
+#include "GeolocationPosition.h"
 
 namespace WebCore {
 
@@ -127,4 +127,4 @@ GeolocationPosition* GeolocationController::lastPosition()
 
 } // namespace WebCore
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
index 0611dc3..9b10397 100644 (file)
@@ -26,7 +26,7 @@
 #ifndef GeolocationController_h
 #define GeolocationController_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "Geolocation.h"
 #include <wtf/HashSet.h>
@@ -75,6 +75,6 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
 
 #endif // GeolocationController_h
index 2a3bad4..7352e6b 100644 (file)
@@ -26,8 +26,6 @@
 #ifndef GeolocationError_h
 #define GeolocationError_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #include "PlatformString.h"
 #include <wtf/PassRefPtr.h>
 #include <wtf/RefCounted.h>
@@ -60,6 +58,4 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #endif // GeolocationError_h
index 9f25b11..7b15648 100644 (file)
@@ -26,8 +26,6 @@
 #ifndef GeolocationPosition_h
 #define GeolocationPosition_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #include <wtf/PassRefPtr.h>
 #include <wtf/RefCounted.h>
 #include <wtf/RefPtr.h>
@@ -106,6 +104,4 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #endif // GeolocationPosition_h
index ffd1706..d9f3a27 100644 (file)
@@ -1065,7 +1065,6 @@ SOURCES += \
     platform/FileIconLoader.cpp \
     platform/FileStream.cpp \
     platform/FileSystem.cpp \
-    platform/GeolocationService.cpp \
     platform/HistogramSupport.cpp \
     platform/image-decoders/qt/ImageFrameQt.cpp \
     platform/graphics/FontDescription.cpp \
@@ -1131,7 +1130,6 @@ SOURCES += \
     platform/MIMETypeRegistry.cpp \
     platform/mock/DeviceOrientationClientMock.cpp \
     platform/mock/GeolocationClientMock.cpp \
-    platform/mock/GeolocationServiceMock.cpp \
     platform/mock/ScrollbarThemeMock.cpp \
     platform/network/AuthenticationChallengeBase.cpp \
     platform/network/BlobData.cpp \
@@ -2149,12 +2147,10 @@ HEADERS += \
     platform/FileStream.h \
     platform/FileStreamClient.h \
     platform/FileSystem.h \
-    platform/GeolocationService.h \
     platform/HistogramSupport.h \
     platform/image-decoders/ImageDecoder.h \
     platform/mock/DeviceOrientationClientMock.h \
     platform/mock/GeolocationClientMock.cpp \
-    platform/mock/GeolocationServiceMock.h \
     platform/mock/ScrollbarThemeMock.h \
     platform/graphics/BitmapImage.h \
     platform/graphics/Color.h \
index a04208e..82e0ee3 100644 (file)
@@ -186,8 +186,6 @@ __ZN7WebCore11FrameLoader4loadERKNS_15ResourceRequestERKNS_14SubstituteDataEb
 __ZN7WebCore11FrameLoader4loadERKNS_15ResourceRequestEb
 __ZN7WebCore11FrameLoader6reloadEb
 __ZN7WebCore11FrameLoader9setOpenerEPNS_5FrameE
-__ZN7WebCore11Geolocation12setIsAllowedEb
-__ZN7WebCore11GeolocationD1Ev
 __ZN7WebCore11HistoryItem10targetItemEv
 __ZN7WebCore11HistoryItem11setReferrerERKN3WTF6StringE
 __ZN7WebCore11HistoryItem12addChildItemEN3WTF10PassRefPtrIS0_EE
@@ -620,7 +618,6 @@ __ZN7WebCore20builtInPDFPluginNameEv
 __ZN7WebCore20makeRGBA32FromFloatsEffff
 __ZN7WebCore20protocolIsJavaScriptERKN3WTF6StringE
 __ZN7WebCore21BackForwardController11itemAtIndexEi
-__ZN7WebCore21GeolocationClientMock13setPermissionEb
 __ZN7WebCore21MemoryPressureHandler7installEv
 __ZN7WebCore21PlatformKeyboardEvent24disambiguateKeyDownEventENS_13PlatformEvent4TypeEb
 __ZN7WebCore21ResourceLoadScheduler20servePendingRequestsENS_20ResourceLoadPriorityE
@@ -1193,7 +1190,6 @@ __ZNK7WebCore11FrameLoader17networkingContextEv
 __ZNK7WebCore11FrameLoader20activeDocumentLoaderEv
 __ZNK7WebCore11FrameLoader27numPendingOrLoadingRequestsEb
 __ZNK7WebCore11FrameLoader8loadTypeEv
-__ZNK7WebCore11Geolocation5frameEv
 __ZNK7WebCore11HistoryItem10visitCountEv
 __ZNK7WebCore11HistoryItem11hasChildrenEv
 __ZNK7WebCore11HistoryItem11originalURLEv
@@ -1709,13 +1705,12 @@ __ZN7WebCore8DragDataC1ERKN3WTF6StringERKNS_8IntPointES7_NS_13DragOperationENS_2
 #endif
 
 #if ENABLE(GEOLOCATION)
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+__ZN7WebCore11Geolocation12setIsAllowedEb
+__ZN7WebCore11GeolocationD1Ev
+__ZNK7WebCore11Geolocation5frameEv
+__ZN7WebCore21GeolocationClientMock13setPermissionEb
 __ZN7WebCore21GeolocationController13errorOccurredEPNS_16GeolocationErrorE
 __ZN7WebCore21GeolocationController15positionChangedEPNS_19GeolocationPositionE
-#else
-__ZN7WebCore22GeolocationServiceMock11setPositionEN3WTF10PassRefPtrINS_11GeopositionEEE
-__ZN7WebCore22GeolocationServiceMock8setErrorEN3WTF10PassRefPtrINS_13PositionErrorEEE
-#endif
 #endif
 
 #if ENABLE(ICONDATABASE)
index 1e197d5..445dd71 100644 (file)
             'platform/FloatConversion.h',
             'platform/ClockGeneric.cpp',
             'platform/ClockGeneric.h',
-            'platform/GeolocationService.cpp',
-            'platform/GeolocationService.h',
             'platform/HashTools.h',
             'platform/KURL.cpp',
             'platform/KURLGoogle.cpp',
             'platform/mac/WidgetMac.mm',
             'platform/mock/DeviceOrientationClientMock.cpp',
             'platform/mock/GeolocationClientMock.cpp',
-            'platform/mock/GeolocationServiceMock.cpp',
-            'platform/mock/GeolocationServiceMock.h',
             'platform/mock/ScrollbarThemeMock.cpp',
             'platform/mock/ScrollbarThemeMock.h',
             'platform/network/AuthenticationChallengeBase.cpp',
index 4e65219..6157e38 100755 (executable)
                                >
                        </File>
                        <File
-                               RelativePath="..\platform\GeolocationService.cpp"
-                               >
-                       </File>
-                       <File
-                               RelativePath="..\platform\GeolocationService.h"
-                               >
-                       </File>
-                       <File
                                RelativePath="..\platform\HistogramSupport.cpp"
                                >
                        </File>
                                        >
                                </File>
                                <File
-                                       RelativePath="..\platform\mock\GeolocationServiceMock.cpp"
-                                       >
-                               </File>
-                               <File
-                                       RelativePath="..\platform\mock\GeolocationServiceMock.h"
-                                       >
-                               </File>
-                               <File
                                        RelativePath="..\platform\mock\ScrollbarThemeMock.cpp"
                                        >
                                </File>
index caac380..8a91856 100644 (file)
 #include "JSPositionErrorCallback.h"
 #include "PositionOptions.h"
 
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
-#include "GeolocationService.h"
-#endif
-
 using namespace JSC;
 using namespace std;
 
index 3fc204d..a65f4f6 100644 (file)
@@ -217,9 +217,6 @@ public:
 
     virtual void scrollRectIntoView(const IntRect&) const { }
 
-    virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*) {}
-    virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*) {}
-
 #if USE(ACCELERATED_COMPOSITING)
     virtual void attachRootGraphicsLayer(Frame*, GraphicsLayer*) {}
     virtual void setNeedsOneShotDrawingSynchronization() {}
index 26d74ab..bc53e16 100644 (file)
@@ -214,13 +214,6 @@ namespace WebCore {
 
         virtual bool paintCustomOverhangArea(GraphicsContext*, const IntRect&, const IntRect&, const IntRect&);
 
-        // FIXME: Remove once all ports are using client-based geolocation. https://bugs.webkit.org/show_bug.cgi?id=40373
-        // For client-based geolocation, these two methods have moved to GeolocationClient. https://bugs.webkit.org/show_bug.cgi?id=50061
-        // This can be either a synchronous or asynchronous call. The ChromeClient can display UI asking the user for permission
-        // to use Geolocation.
-        virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*) = 0;
-        virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*) = 0;
-
 #if ENABLE(INPUT_COLOR)
         virtual PassOwnPtr<ColorChooser> createColorChooser(ColorChooserClient*, const Color&) = 0;
 #endif
index 7b6b9fe..7fb1dfa 100644 (file)
@@ -43,6 +43,7 @@
 #include "FrameSelection.h"
 #include "FrameTree.h"
 #include "FrameView.h"
+#include "GeolocationController.h"
 #include "HTMLElement.h"
 #include "HistoryItem.h"
 #include "InspectorController.h"
 #include <wtf/StdLibExtras.h>
 #include <wtf/text/StringHash.h>
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-#include "GeolocationController.h"
-#endif
-
 namespace WebCore {
 
 static HashSet<Page*>* allPages;
@@ -125,7 +122,7 @@ Page::Page(PageClients& pageClients)
 #if ENABLE(INSPECTOR)
     , m_inspectorController(InspectorController::create(this, pageClients.inspectorClient))
 #endif
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     , m_geolocationController(GeolocationController::create(this, pageClients.geolocationClient))
 #endif
 #if ENABLE(POINTER_LOCK)
index cdf7fe6..2ba4fd7 100644 (file)
@@ -167,7 +167,7 @@ namespace WebCore {
 #if ENABLE(INSPECTOR)
         InspectorController* inspectorController() const { return m_inspectorController.get(); }
 #endif
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
         GeolocationController* geolocationController() const { return m_geolocationController.get(); }
 #endif
 #if ENABLE(POINTER_LOCK)
@@ -358,7 +358,7 @@ namespace WebCore {
 #if ENABLE(INSPECTOR)
         OwnPtr<InspectorController> m_inspectorController;
 #endif
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
         OwnPtr<GeolocationController> m_geolocationController;
 #endif
 #if ENABLE(POINTER_LOCK)
diff --git a/Source/WebCore/platform/GeolocationService.cpp b/Source/WebCore/platform/GeolocationService.cpp
deleted file mode 100644 (file)
index f8793a1..0000000
+++ /dev/null
@@ -1,84 +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 "GeolocationService.h"
-
-#include "GeolocationServiceMock.h"
-#include "Geoposition.h"
-#include "PositionError.h"
-
-#include <wtf/Assertions.h>
-#include <wtf/CurrentTime.h>
-
-namespace WebCore {
-
-#if !ENABLE(GEOLOCATION) || ENABLE(CLIENT_BASED_GEOLOCATION)
-static PassOwnPtr<GeolocationService> createGeolocationServiceNull(GeolocationServiceClient*)
-{
-    return nullptr;
-}
-
-GeolocationService::FactoryFunction* GeolocationService::s_factoryFunction = &createGeolocationServiceNull;
-GeolocationService::FactoryFunction* GeolocationService::s_mockFactoryFunction = &createGeolocationServiceNull;
-#else
-GeolocationService::FactoryFunction* GeolocationService::s_mockFactoryFunction = &GeolocationServiceMock::create;
-#endif
-
-PassOwnPtr<GeolocationService> GeolocationService::create(GeolocationServiceClient* client)
-{
-    return (*s_factoryFunction)(client);
-}
-
-#if ENABLE(GEOLOCATION)
-void GeolocationService::useMock()
-{
-    s_factoryFunction = s_mockFactoryFunction;
-}
-
-void GeolocationService::setCustomMockFactory(FactoryFunction f)
-{
-    s_mockFactoryFunction = f;
-}
-
-GeolocationService::GeolocationService(GeolocationServiceClient* client)
-    : m_geolocationServiceClient(client)
-{
-    ASSERT(m_geolocationServiceClient);
-}
-
-void GeolocationService::positionChanged()
-{
-    m_geolocationServiceClient->geolocationServicePositionChanged(this);
-}
-
-void GeolocationService::errorOccurred()
-{
-    m_geolocationServiceClient->geolocationServiceErrorOccurred(this);
-}
-
-#endif
-
-} // namespace WebCore
diff --git a/Source/WebCore/platform/GeolocationService.h b/Source/WebCore/platform/GeolocationService.h
deleted file mode 100644 (file)
index 5ba9fd7..0000000
+++ /dev/null
@@ -1,79 +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.
- */
-
-#ifndef GeolocationService_h
-#define GeolocationService_h
-
-#include <wtf/Noncopyable.h>
-#include <wtf/PassOwnPtr.h>
-
-namespace WebCore {
-
-class GeolocationService;
-class Geoposition;
-class PositionError;
-class PositionOptions;
-
-class GeolocationServiceClient {
-public:
-    virtual ~GeolocationServiceClient() { }
-    virtual void geolocationServicePositionChanged(GeolocationService*) = 0;
-    virtual void geolocationServiceErrorOccurred(GeolocationService*) = 0;
-};
-
-class GeolocationService {
-    WTF_MAKE_NONCOPYABLE(GeolocationService);
-public:
-    static PassOwnPtr<GeolocationService> create(GeolocationServiceClient*);
-    virtual ~GeolocationService() { }
-
-    virtual bool startUpdating(PositionOptions*) { return false; }
-    virtual void stopUpdating() { }
-
-    virtual Geoposition* lastPosition() const { return 0; }
-    virtual PositionError* lastError() const { return 0; }
-
-    void positionChanged();
-    void errorOccurred();
-
-    static void useMock();
-    typedef PassOwnPtr<GeolocationService> (FactoryFunction)(GeolocationServiceClient*);
-    static void setCustomMockFactory(FactoryFunction);
-
-protected:
-    GeolocationService(GeolocationServiceClient*);
-    GeolocationServiceClient* geolocationServiceClient() const { return m_geolocationServiceClient; }
-
-private:
-    GeolocationServiceClient* m_geolocationServiceClient;
-
-    static FactoryFunction* s_factoryFunction;
-    static FactoryFunction* s_mockFactoryFunction;
-};
-
-} // namespace WebCore
-
-#endif // GeolocationService_h
-
index d067c8a..276b4a3 100644 (file)
@@ -31,7 +31,7 @@
 #include "config.h"
 #include "GeolocationClientMock.h"
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "GeolocationController.h"
 #include "GeolocationError.h"
@@ -179,4 +179,4 @@ void GeolocationClientMock::controllerTimerFired(Timer<GeolocationClientMock>* t
 
 } // WebCore
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
index b400166..4c238ce 100644 (file)
@@ -31,8 +31,6 @@
 #ifndef GeolocationClientMock_h
 #define GeolocationClientMock_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #include "GeolocationClient.h"
 #include "PlatformString.h"
 #include "Timer.h"
@@ -95,6 +93,4 @@ private:
 
 }
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #endif
diff --git a/Source/WebCore/platform/mock/GeolocationServiceMock.cpp b/Source/WebCore/platform/mock/GeolocationServiceMock.cpp
deleted file mode 100644 (file)
index 6f534dd..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Copyright (C) 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.
- * 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 "GeolocationServiceMock.h"
-
-#if ENABLE(GEOLOCATION)
-
-#include "Logging.h"
-#include "Geolocation.h"
-#include "Geoposition.h"
-#include "PositionError.h"
-#include "PositionOptions.h"
-
-namespace WebCore {
-
-GeolocationServiceMock::GeolocationServiceSet* GeolocationServiceMock::s_instances = 0;
-RefPtr<Geoposition>* GeolocationServiceMock::s_lastPosition;
-RefPtr<PositionError>* GeolocationServiceMock::s_lastError;
-
-PassOwnPtr<GeolocationService> GeolocationServiceMock::create(GeolocationServiceClient* client)
-{
-    initStatics();
-    return adoptPtr(new GeolocationServiceMock(client));
-}
-
-GeolocationServiceMock::GeolocationServiceMock(GeolocationServiceClient* client)
-    : GeolocationService(client)
-    , m_timer(this, &GeolocationServiceMock::timerFired)
-    , m_isActive(false)
-{
-    s_instances->add(this);
-}
-
-GeolocationServiceMock::~GeolocationServiceMock()
-{
-    GeolocationServiceSet::iterator iter = s_instances->find(this);
-    ASSERT(iter != s_instances->end());
-    s_instances->remove(iter);
-    cleanUpStatics();
-}
-
-void GeolocationServiceMock::setPosition(PassRefPtr<Geoposition> position)
-{
-    initStatics();
-    GeolocationService::useMock();
-    *s_lastPosition = position;
-    *s_lastError = 0;
-    makeGeolocationCallbackFromAllInstances();
-}
-
-void GeolocationServiceMock::setError(PassRefPtr<PositionError> error)
-{
-    initStatics();
-    GeolocationService::useMock();
-    *s_lastError = error;
-    *s_lastPosition = 0;
-    makeGeolocationCallbackFromAllInstances();
-}
-
-bool GeolocationServiceMock::startUpdating(PositionOptions*)
-{
-    m_isActive = true;
-    m_timer.startOneShot(0);
-    return true;
-}
-
-void GeolocationServiceMock::stopUpdating()
-{
-    m_isActive = false;
-}
-
-void GeolocationServiceMock::timerFired(Timer<GeolocationServiceMock>* timer)
-{
-    ASSERT_UNUSED(timer, timer == &m_timer);
-    makeGeolocationCallback();
-}
-
-void GeolocationServiceMock::makeGeolocationCallbackFromAllInstances()
-{
-    GeolocationServiceSet::const_iterator end = s_instances->end();
-    for (GeolocationServiceSet::const_iterator iter = s_instances->begin(); iter != end; ++iter)
-        (*iter)->makeGeolocationCallback();
-}
-
-void GeolocationServiceMock::makeGeolocationCallback()
-{
-    if (!m_isActive)
-        return;
-
-    if (*s_lastPosition)
-        positionChanged();
-    else if (*s_lastError)
-        errorOccurred();
-}
-
-void GeolocationServiceMock::initStatics()
-{
-    if (s_instances == 0) { 
-        s_instances = new GeolocationServiceSet;
-        s_lastPosition = new RefPtr<Geoposition>;
-        s_lastError = new RefPtr<PositionError>;
-    }
-}
-
-void GeolocationServiceMock::cleanUpStatics()
-{
-    if (s_instances->size() == 0) {
-        delete s_instances;
-        s_instances = 0;
-        delete s_lastPosition;
-        delete s_lastError;
-    }
-}
-
-} // namespace WebCore
-
-#endif
diff --git a/Source/WebCore/platform/mock/GeolocationServiceMock.h b/Source/WebCore/platform/mock/GeolocationServiceMock.h
deleted file mode 100644 (file)
index c3978fe..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 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.
- * 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 GeolocationServiceMock_h
-#define GeolocationServiceMock_h
-
-#include "GeolocationService.h"
-#include "Timer.h"
-#include <wtf/HashSet.h>
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefPtr.h>
-
-namespace WebCore {
-
-// This class provides a mock implementation of a GeolocationService for testing
-// purposes. It allows the position or error that will be reported by this class
-// to be set manually using the setPosition and setError methods. Objects of
-// this class call back to their respective GeolocationServiceClient with the
-// position or error every time either of these is updated.
-class GeolocationServiceMock : public GeolocationService {
-  public:
-    static PassOwnPtr<GeolocationService> create(GeolocationServiceClient*);
-
-    GeolocationServiceMock(GeolocationServiceClient*);
-    virtual ~GeolocationServiceMock();
-
-    virtual bool startUpdating(PositionOptions*);
-    virtual void stopUpdating();
-
-    static void setPosition(PassRefPtr<Geoposition> position);
-    static void setError(PassRefPtr<PositionError> position);
-
-    virtual Geoposition* lastPosition() const { return s_lastPosition->get(); }
-    virtual PositionError* lastError() const { return s_lastError->get(); }
-
-  private:
-    static void makeGeolocationCallbackFromAllInstances();
-    void makeGeolocationCallback();
-
-    void timerFired(Timer<GeolocationServiceMock>*);
-
-    static void initStatics();
-    static void cleanUpStatics();
-
-    typedef HashSet<GeolocationServiceMock*> GeolocationServiceSet;
-    static GeolocationServiceSet* s_instances;
-
-    static RefPtr<Geoposition>* s_lastPosition;
-    static RefPtr<PositionError>* s_lastError;
-
-    Timer<GeolocationServiceMock> m_timer;
-
-    bool m_isActive;
-};
-
-} // namespace WebCore
-
-#endif // GeolocationServiceMock_h
index 3e10e64..ccd3227 100644 (file)
 #include "EditorClientBlackBerry.h"
 #include "FocusController.h"
 #include "FrameLoaderClientBlackBerry.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #if ENABLE_DRT
 #include "GeolocationClientMock.h"
 #endif
 #include "GeolocationControllerClientBlackBerry.h"
-#endif
 #include "GroupSettings.h"
 #include "HTMLAreaElement.h"
 #include "HTMLFrameOwnerElement.h"
@@ -416,7 +414,6 @@ void WebPagePrivate::init(const WebString& pageGroupName)
     pageClients.dragClient = dragClient;
     pageClients.inspectorClient = inspectorClient;
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     // Note the object will be destroyed when the page is destroyed.
 #if ENABLE_DRT
     if (getenv("drtRun"))
@@ -426,7 +423,6 @@ void WebPagePrivate::init(const WebString& pageGroupName)
         pageClients.geolocationClient = m_geolocationClient = new GeolocationControllerClientBlackBerry(this);
 #else
     pageClients.geolocationClient = m_geolocationClient;
-#endif
 
     pageClients.deviceMotionClient = new DeviceMotionClientBlackBerry(this);
     pageClients.deviceOrientationClient = new DeviceOrientationClientBlackBerry(this);
@@ -436,7 +432,7 @@ void WebPagePrivate::init(const WebString& pageGroupName)
     WebCore::provideNotification(m_page, NotificationPresenterImpl::instance());
 #endif
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION) && ENABLE_DRT
+#if ENABLE_DRT
     // In case running in DumpRenderTree mode set the controller to mock provider.
     if (getenv("drtRun"))
         static_cast<GeolocationClientMock*>(pageClients.geolocationClient)->setController(m_page->geolocationController());
index 0ce92a1..b892c77 100644 (file)
@@ -1,3 +1,24 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Api/WebPage.cpp:
+        (BlackBerry::WebKit::WebPagePrivate::init):
+        * WebCoreSupport/AboutDataEnableFeatures.in:
+        * WebCoreSupport/ChromeClientBlackBerry.cpp:
+        * WebCoreSupport/ChromeClientBlackBerry.h:
+        (ChromeClientBlackBerry):
+        * WebKitSupport/DumpRenderTreeSupport.cpp:
+        (toGeolocationClientMock):
+        (DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests):
+        (DumpRenderTreeSupport::resetGeolocationMock):
+        (DumpRenderTreeSupport::setMockGeolocationError):
+        (DumpRenderTreeSupport::setMockGeolocationPermission):
+        (DumpRenderTreeSupport::setMockGeolocationPosition):
+
 2012-03-13  Mike Lattanzio  <mlattanzio@rim.com>
 
         Remove ActiveNodeContext in favour of BlackBerry::Platform::WebContext
index 44565db..9326d80 100644 (file)
@@ -7,7 +7,6 @@ BLACKBERRY_CREDENTIAL_PERSIST
 BLOB
 BRANCH_COMPACTION
 CHANNEL_MESSAGING
-CLIENT_BASED_GEOLOCATION
 CODEBLOCK_SAMPLING
 COMPARE_AND_SWAP
 COMPUTED_GOTO_INTERPRETER
index 3fc4afb..5b974d0 100644 (file)
@@ -458,26 +458,6 @@ void ChromeClientBlackBerry::exceededDatabaseQuota(Frame* frame, const String& n
 #endif
 }
 
-void ChromeClientBlackBerry::requestGeolocationPermissionForFrame(Frame* frame, Geolocation* geolocation)
-{
-    if (!m_webPagePrivate->m_webSettings->isGeolocationEnabled()) {
-        geolocation->setIsAllowed(false);
-        return;
-    }
-    DOMWindow* window = frame->domWindow();
-    if (!window)
-        return;
-
-    CString latinOrigin = frameOrigin(frame);
-
-    m_webPagePrivate->m_client->requestGeolocationPermission(m_webPagePrivate->m_geolocationClient, geolocation, latinOrigin.data(), latinOrigin.length());
-}
-
-void ChromeClientBlackBerry::cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation* geolocation)
-{
-    m_webPagePrivate->m_client->cancelGeolocationPermission(m_webPagePrivate->m_geolocationClient, geolocation);
-}
-
 void ChromeClientBlackBerry::runOpenPanel(Frame*, PassRefPtr<FileChooser> chooser)
 {
     SharedArray<WebString> initialFiles;
index b24d39c..f470f78 100644 (file)
@@ -90,8 +90,6 @@ public:
     virtual void numWheelEventHandlersChanged(unsigned) { }
     virtual void print(Frame*);
     virtual void exceededDatabaseQuota(Frame*, const String&);
-    virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*);
-    virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*);
     virtual void runOpenPanel(Frame*, PassRefPtr<FileChooser>);
     virtual void loadIconForFiles(const Vector<String>&, FileIconLoader*);
     virtual void setCursor(const Cursor&);
index c8ede6e..31f1dcf 100644 (file)
@@ -40,13 +40,11 @@ using namespace JSC;
 
 bool DumpRenderTreeSupport::s_linksIncludedInTabChain = true;
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 GeolocationClientMock* toGeolocationClientMock(GeolocationClient* client)
 {
      ASSERT(getenv("drtRun"));
      return static_cast<GeolocationClientMock*>(client);
 }
-#endif
 
 DumpRenderTreeSupport::DumpRenderTreeSupport()
 {
@@ -98,26 +96,18 @@ void DumpRenderTreeSupport::dumpConfigurationForViewport(Frame* mainFrame, int d
 
 int DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests(WebPage* webPage)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage(webPage)->geolocationController()->client());
     return mockClient->numberOfPendingPermissionRequests();
-#else
-    UNUSED_PARAM(webPage);
-    return -1;
-#endif
 }
 
 void DumpRenderTreeSupport::resetGeolocationMock(WebPage* webPage)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage(webPage)->geolocationController()->client());
     mockClient->reset();
-#endif
 }
 
 void DumpRenderTreeSupport::setMockGeolocationError(WebPage* webPage, int errorCode, const String message)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     GeolocationError::ErrorCode code = GeolocationError::PositionUnavailable;
     switch (errorCode) {
     case PositionError::PERMISSION_DENIED:
@@ -130,23 +120,18 @@ void DumpRenderTreeSupport::setMockGeolocationError(WebPage* webPage, int errorC
 
     GeolocationClientMock* mockClient = static_cast<GeolocationClientMock*>(corePage(webPage)->geolocationController()->client());
     mockClient->setError(GeolocationError::create(code, message));
-#endif
 }
 
 void DumpRenderTreeSupport::setMockGeolocationPermission(WebPage* webPage, bool allowed)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage(webPage)->geolocationController()->client());
     mockClient->setPermission(allowed);
-#endif
 }
 
 void DumpRenderTreeSupport::setMockGeolocationPosition(WebPage* webPage, double latitude, double longitude, double accuracy)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage(webPage)->geolocationController()->client());
     mockClient->setPosition(GeolocationPosition::create(currentTime(), latitude, longitude, accuracy));
-#endif
 }
 
 void DumpRenderTreeSupport::scalePageBy(WebPage* webPage, float scaleFactor, float x, float y)
index b1964e7..6710bae 100644 (file)
@@ -1,3 +1,15 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * features.gypi:
+        * src/ChromeClientImpl.cpp:
+        * src/ChromeClientImpl.h:
+        (ChromeClientImpl):
+
 2012-03-13  Tommy Widenflycht  <tommyw@google.com>
 
         MediaStream API: Rename PeerConnection to DeprecatedPeerConnection
index 5a033c8..1a41297 100644 (file)
@@ -36,7 +36,6 @@
       'ENABLE_BLOB=1',
       'ENABLE_BLOB_SLICE=1',
       'ENABLE_CHANNEL_MESSAGING=1',
-      'ENABLE_CLIENT_BASED_GEOLOCATION=1',
       'ENABLE_CSS_FILTERS=1',
       'ENABLE_DASHBOARD_SUPPORT=0',
       'ENABLE_DATA_TRANSFER_ITEMS=1',
index ad35382..4d381ec 100644 (file)
@@ -51,7 +51,6 @@
 #include "FrameLoadRequest.h"
 #include "FrameView.h"
 #include "Geolocation.h"
-#include "GeolocationService.h"
 #include "GraphicsLayer.h"
 #include "HTMLNames.h"
 #include "HitTestResult.h"
@@ -888,20 +887,6 @@ bool ChromeClientImpl::paintCustomOverhangArea(GraphicsContext* context, const I
     return false;
 }
 
-// FIXME: Remove ChromeClientImpl::requestGeolocationPermissionForFrame and ChromeClientImpl::cancelGeolocationPermissionRequestForFrame
-// once all ports have moved to client-based geolocation (see https://bugs.webkit.org/show_bug.cgi?id=40373 ).
-// For client-based geolocation, these methods are now implemented as WebGeolocationClient::requestPermission and WebGeolocationClient::cancelPermissionRequest.
-// (see https://bugs.webkit.org/show_bug.cgi?id=50061 ).
-void ChromeClientImpl::requestGeolocationPermissionForFrame(Frame* frame, Geolocation* geolocation)
-{
-    ASSERT_NOT_REACHED();
-}
-
-void ChromeClientImpl::cancelGeolocationPermissionRequestForFrame(Frame* frame, Geolocation* geolocation)
-{
-    ASSERT_NOT_REACHED();
-}
-
 #if USE(ACCELERATED_COMPOSITING)
 void ChromeClientImpl::attachRootGraphicsLayer(Frame* frame, GraphicsLayer* graphicsLayer)
 {
index c349454..34a0b5a 100644 (file)
@@ -137,8 +137,6 @@ public:
     virtual void reachedMaxAppCacheSize(int64_t spaceNeeded);
     virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*, int64_t totalSpaceNeeded);
     virtual bool paintCustomOverhangArea(WebCore::GraphicsContext*, const WebCore::IntRect&, const WebCore::IntRect&, const WebCore::IntRect&);
-    virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*);
-    virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*);
 #if ENABLE(INPUT_COLOR)
     virtual PassOwnPtr<WebCore::ColorChooser> createColorChooser(WebCore::ColorChooserClient*, const WebCore::Color&) OVERRIDE;
 #endif
index 2dd4184..abf52dc 100644 (file)
@@ -1,3 +1,15 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * WebCoreSupport/ChromeClientEfl.cpp:
+        (WebCore):
+        * WebCoreSupport/ChromeClientEfl.h:
+        (ChromeClientEfl):
+
 2012-03-13  ChangSeok Oh  <shivamidow@gmail.com>
 
         [EFL] [DRT] Implement scheduleAsynchronousKeyDown.
index a58a11b..0b00374 100644 (file)
@@ -464,17 +464,6 @@ void ChromeClientEfl::setCursorHiddenUntilMouseMoves(bool)
     notImplemented();
 }
 
-void ChromeClientEfl::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
-    // See the comment in WebCore/page/ChromeClient.h
-    notImplemented();
-}
-
-void ChromeClientEfl::cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*)
-{
-    notImplemented();
-}
-
 void ChromeClientEfl::cancelGeolocationPermissionForFrame(Frame*, Geolocation*)
 {
     notImplemented();
index 1526245..25dd35f 100644 (file)
@@ -147,8 +147,6 @@ public:
 
     virtual void scrollRectIntoView(const IntRect&) const { }
 
-    virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*);
-    virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*);
     virtual void cancelGeolocationPermissionForFrame(Frame*, Geolocation*);
 
     virtual void invalidateContents(const IntRect&, bool);
index 9ee7e77..b911837 100644 (file)
@@ -1,3 +1,28 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * WebCoreSupport/ChromeClientGtk.cpp:
+        (WebKit):
+        * WebCoreSupport/ChromeClientGtk.h:
+        (WebKit::ChromeClient::scrollRectIntoView):
+        * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
+        (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
+        (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
+        (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
+        (DumpRenderTreeSupportGtk::setMockGeolocationError):
+        (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
+        * WebCoreSupport/GeolocationClientGtk.cpp:
+        (WebKit::GeolocationClient::requestPermission):
+        (WebKit::GeolocationClient::cancelPermissionRequest):
+        * WebCoreSupport/GeolocationClientGtk.h:
+        (WebKit):
+        * webkit/webkitwebview.cpp:
+        (webkit_web_view_init):
+
 2012-03-12  Antonio Gomes  <agomes@rim.com>
 
         Convert nodesFromRect tests to use Internals interface
index d282f29..48ea0bd 100644 (file)
@@ -862,22 +862,6 @@ void ChromeClient::setCursorHiddenUntilMouseMoves(bool)
     notImplemented();
 }
 
-void ChromeClient::requestGeolocationPermissionForFrame(Frame* frame, Geolocation* geolocation)
-{
-    WebKitWebFrame* webFrame = kit(frame);
-    GRefPtr<WebKitGeolocationPolicyDecision> policyDecision(adoptGRef(webkit_geolocation_policy_decision_new(webFrame, geolocation)));
-
-    gboolean isHandled = FALSE;
-    g_signal_emit_by_name(m_webView, "geolocation-policy-decision-requested", webFrame, policyDecision.get(), &isHandled);
-    if (!isHandled)
-        webkit_geolocation_policy_deny(policyDecision.get());
-}
-
-void ChromeClient::cancelGeolocationPermissionRequestForFrame(WebCore::Frame* frame, WebCore::Geolocation*)
-{
-    g_signal_emit_by_name(m_webView, "geolocation-policy-decision-cancelled", kit(frame));
-}
-
 bool ChromeClient::selectItemWritingDirectionIsNatural()
 {
     return false;
index dcea2f0..22b54f7 100644 (file)
@@ -134,8 +134,6 @@ namespace WebKit {
         virtual void setCursorHiddenUntilMouseMoves(bool);
 
         virtual void scrollRectIntoView(const IntRect&) const { }
-        virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*);
-        virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*);
 
         virtual bool selectItemWritingDirectionIsNatural();
         virtual bool selectItemAlignmentFollowsMenuWritingDirection();
index bc0ed78..42427db 100644 (file)
@@ -798,7 +798,7 @@ void DumpRenderTreeSupportGtk::scalePageBy(WebKitWebView* webView, float scaleFa
 
 void DumpRenderTreeSupportGtk::resetGeolocationClientMock(WebKitWebView* webView)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(core(webView)->geolocationController()->client());
     mock->reset();
 #endif
@@ -806,7 +806,7 @@ void DumpRenderTreeSupportGtk::resetGeolocationClientMock(WebKitWebView* webView
 
 void DumpRenderTreeSupportGtk::setMockGeolocationPermission(WebKitWebView* webView, bool allowed)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(core(webView)->geolocationController()->client());
     mock->setPermission(allowed);
 #endif
@@ -814,7 +814,7 @@ void DumpRenderTreeSupportGtk::setMockGeolocationPermission(WebKitWebView* webVi
 
 void DumpRenderTreeSupportGtk::setMockGeolocationPosition(WebKitWebView* webView, double latitude, double longitude, double accuracy)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(core(webView)->geolocationController()->client());
 
     double timestamp = g_get_real_time() / 1000000.0;
@@ -824,7 +824,7 @@ void DumpRenderTreeSupportGtk::setMockGeolocationPosition(WebKitWebView* webView
 
 void DumpRenderTreeSupportGtk::setMockGeolocationError(WebKitWebView* webView, int errorCode, const gchar* errorMessage)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(core(webView)->geolocationController()->client());
 
     GeolocationError::ErrorCode code;
@@ -844,11 +844,9 @@ void DumpRenderTreeSupportGtk::setMockGeolocationError(WebKitWebView* webView, i
 
 int DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests(WebKitWebView* webView)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(core(webView)->geolocationController()->client());
     return mock->numberOfPendingPermissionRequests();
-#else
-    return 0;
 #endif
 }
 
index 06e9fbd..2b90618 100644 (file)
@@ -21,7 +21,7 @@
 #include "config.h"
 #include "GeolocationClientGtk.h"
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "Chrome.h"
 #include "ChromeClient.h"
@@ -29,6 +29,8 @@
 #include "GeolocationController.h"
 #include "GeolocationError.h"
 #include "GeolocationPosition.h"
+#include "webkitgeolocationpolicydecisionprivate.h"
+#include "webkitwebframeprivate.h"
 #include "webkitwebviewprivate.h"
 #include <glib/gi18n-lib.h>
 
@@ -138,12 +140,18 @@ WebCore::GeolocationPosition* GeolocationClient::lastPosition()
 
 void GeolocationClient::requestPermission(WebCore::Geolocation* geolocation)
 {
-    core(m_webView)->chrome()->client()->requestGeolocationPermissionForFrame(geolocation->frame(), geolocation);
+    WebKitWebFrame* webFrame = kit(geolocation->frame());
+    GRefPtr<WebKitGeolocationPolicyDecision> policyDecision(adoptGRef(webkit_geolocation_policy_decision_new(webFrame, geolocation)));
+
+    gboolean isHandled = FALSE;
+    g_signal_emit_by_name(m_webView, "geolocation-policy-decision-requested", webFrame, policyDecision.get(), &isHandled);
+    if (!isHandled)
+        webkit_geolocation_policy_deny(policyDecision.get());
 }
 
 void GeolocationClient::cancelPermissionRequest(WebCore::Geolocation* geolocation)
 {
-    core(m_webView)->chrome()->client()->cancelGeolocationPermissionRequestForFrame(geolocation->frame(), geolocation);
+    g_signal_emit_by_name(m_webView, "geolocation-policy-decision-cancelled", kit(geolocation->frame()));
 }
 
 void GeolocationClient::positionChanged(GeocluePosition*, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy)
@@ -178,4 +186,4 @@ void GeolocationClient::errorOccured(const char* message)
 
 }
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
index bf17c71..839e5b2 100644 (file)
@@ -21,7 +21,7 @@
 #ifndef GeolocationClientGtk_h
 #define GeolocationClientGtk_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "GRefPtr.h"
 #include "GeolocationClient.h"
@@ -75,8 +75,9 @@ private:
     bool m_enableHighAccuracy;
     bool m_isUpdating;
 };
+
 } // namespace WebKit
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
 
 #endif // GeolocationClientGtk_h
index 880f244..d299357 100644 (file)
@@ -3505,8 +3505,7 @@ static void webkit_web_view_init(WebKitWebView* webView)
     pageClients.editorClient = new WebKit::EditorClient(webView);
     pageClients.dragClient = new WebKit::DragClient(webView);
     pageClients.inspectorClient = new WebKit::InspectorClient(webView);
-
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled())
         pageClients.geolocationClient = new GeolocationClientMock;
     else
@@ -3520,10 +3519,8 @@ static void webkit_web_view_init(WebKitWebView* webView)
     WebCore::provideDeviceOrientationTo(priv->corePage, new DeviceOrientationClientGtk);
 #endif
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled())
         static_cast<GeolocationClientMock*>(pageClients.geolocationClient)->setController(priv->corePage->geolocationController());
-#endif
 
     // Pages within a same session need to be linked together otherwise some functionalities such
     // as visited link coloration (across pages) and changing popup window location will not work.
index b60d7e9..25e4cd6 100644 (file)
@@ -1,3 +1,25 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * WebCoreSupport/WebChromeClient.h:
+        (WebChromeClient):
+        * WebCoreSupport/WebGeolocationClient.mm:
+        (WebGeolocationClient::lastPosition):
+        * WebView/WebGeolocationPosition.mm:
+        (-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
+        (core):
+        (-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
+        * WebView/WebGeolocationPositionInternal.h:
+        * WebView/WebView.mm:
+        (-[WebView _commonInitializationWithFrameName:groupName:]):
+        (-[WebView _geolocationDidChangePosition:]):
+        (-[WebView _geolocationDidFailWithError:]):
+
 2012-03-12  Antonio Gomes  <agomes@rim.com>
 
         Convert nodesFromRect tests to use Internals interface
index 58a02f5..dd7cdd1 100644 (file)
@@ -34,9 +34,6 @@
 ENABLE_BLOB = $(ENABLE_BLOB_$(REAL_PLATFORM_NAME));
 ENABLE_BLOB_macosx = ENABLE_BLOB;
 
-ENABLE_CLIENT_BASED_GEOLOCATION = $(ENABLE_CLIENT_BASED_GEOLOCATION_$(REAL_PLATFORM_NAME));
-ENABLE_CLIENT_BASED_GEOLOCATION_macosx = ENABLE_CLIENT_BASED_GEOLOCATION;
-
 ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(REAL_PLATFORM_NAME));
 ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;
 
@@ -132,4 +129,4 @@ ENABLE_WEB_TIMING = ;
 ENABLE_WORKERS = ENABLE_WORKERS;
 ENABLE_XSLT = ENABLE_XSLT;
 
-FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
index 46d1201..0576aff 100644 (file)
@@ -173,11 +173,6 @@ public:
     virtual void fullScreenRendererChanged(WebCore::RenderBox*) OVERRIDE;
 #endif
 
-    // FIXME: Remove once all ports are using client-based geolocation. https://bugs.webkit.org/show_bug.cgi?id=40373
-    // For client-based geolocation, these two methods have moved to WebGeolocationClient. https://bugs.webkit.org/show_bug.cgi?id=50061
-    virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*) OVERRIDE { }
-    virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*) OVERRIDE { }
-
     virtual bool selectItemWritingDirectionIsNatural() OVERRIDE;
     virtual bool selectItemAlignmentFollowsMenuWritingDirection() OVERRIDE;
     virtual bool hasOpenedPopup() const OVERRIDE;
index 541f40c..ed0f9e8 100644 (file)
@@ -25,6 +25,8 @@
 
 #import "WebGeolocationClient.h"
 
+#if ENABLE(GEOLOCATION)
+
 #import "WebDelegateImplementationCaching.h"
 #import "WebFrameInternal.h"
 #import "WebGeolocationPositionInternal.h"
@@ -88,11 +90,7 @@ void WebGeolocationClient::requestPermission(Geolocation* geolocation)
 
 GeolocationPosition* WebGeolocationClient::lastPosition()
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     return core([[m_webView _geolocationProvider] lastPosition]);
-#else
-    return 0;
-#endif
 }
 
 @implementation WebGeolocationPolicyListener
@@ -117,3 +115,4 @@ GeolocationPosition* WebGeolocationClient::lastPosition()
 
 @end
 
+#endif // ENABLE(GEOLOCATION)
index c92b7f1..6467caa 100644 (file)
 #import <wtf/PassRefPtr.h>
 #import <wtf/RefPtr.h>
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #import <WebCore/GeolocationPosition.h>
 
 using namespace WebCore;
-#endif
 
 @interface WebGeolocationPositionInternal : NSObject
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 {
 @public
     RefPtr<GeolocationPosition> _position;
 }
 
 - (id)initWithCoreGeolocationPosition:(PassRefPtr<GeolocationPosition>)coreGeolocationPosition;
-#endif
 @end
 
 @implementation WebGeolocationPositionInternal
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 - (id)initWithCoreGeolocationPosition:(PassRefPtr<GeolocationPosition>)coreGeolocationPosition
 {
     self = [super init];
@@ -57,29 +52,22 @@ using namespace WebCore;
     _position = coreGeolocationPosition;
     return self;
 }
-#endif
 
 @end
 
 @implementation WebGeolocationPosition
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 GeolocationPosition* core(WebGeolocationPosition *position)
 {
     return position ? position->_internal->_position.get() : 0;
 }
-#endif
 
 - (id)initWithTimestamp:(double)timestamp latitude:(double)latitude longitude:(double)longitude accuracy:(double)accuracy
 {
     self = [super init];
     if (!self)
         return nil;
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     _internal = [[WebGeolocationPositionInternal alloc] initWithCoreGeolocationPosition:GeolocationPosition::create(timestamp, latitude, longitude, accuracy)];
-#else
-    _internal = [[WebGeolocationPositionInternal alloc] init];
-#endif
     return self;
 }
 
index 27f8a39..f54e66b 100644 (file)
 
 #import "WebGeolocationPosition.h"
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 namespace WebCore {
     class GeolocationPosition;
 }
 
 WebCore::GeolocationPosition* core(WebGeolocationPosition *);
 
-#endif
index c30f1b0..05fc586 100644 (file)
 #import <WebCore/FrameTree.h>
 #import <WebCore/FrameView.h>
 #import <WebCore/GCController.h>
+#import <WebCore/GeolocationController.h>
+#import <WebCore/GeolocationError.h>
 #import <WebCore/HTMLMediaElement.h>
 #import <WebCore/HTMLNames.h>
 #import <WebCore/HistoryItem.h>
 #import <WebKit/WebDashboardRegion.h>
 #endif
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-#import <WebCore/GeolocationController.h>
-#import <WebCore/GeolocationError.h>
-#endif
-
 #if ENABLE(GLIB_SUPPORT)
 #import <glib.h>
 #endif
@@ -739,7 +736,7 @@ static NSString *leakOutlookQuirksUserScriptContents()
     pageClients.editorClient = new WebEditorClient(self);
     pageClients.dragClient = new WebDragClient(self);
     pageClients.inspectorClient = new WebInspectorClient(self);
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     pageClients.geolocationClient = new WebGeolocationClient(self);
 #endif
     _private->page = new Page(pageClients);
@@ -6387,20 +6384,20 @@ static void glibContextIterationCallback(CFRunLoopObserverRef, CFRunLoopActivity
 
 - (void)_geolocationDidChangePosition:(WebGeolocationPosition *)position
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     if (_private && _private->page)
         _private->page->geolocationController()->positionChanged(core(position));
-#endif
+#endif // ENABLE(GEOLOCATION)
 }
 
 - (void)_geolocationDidFailWithError:(NSError *)error
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     if (_private && _private->page) {
         RefPtr<GeolocationError> geolocatioError = GeolocationError::create(GeolocationError::PositionUnavailable, [error localizedDescription]);
         _private->page->geolocationController()->errorOccurred(geolocatioError.get());
     }
-#endif
+#endif // ENABLE(GEOLOCATION)
 }
 
 @end
index 4928318..7fe1e57 100644 (file)
 #include "FrameLoaderClientQt.h"
 #include "FrameTree.h"
 #include "FrameView.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #include "GeolocationClientMock.h"
 #include "GeolocationClientQt.h"
-#endif // CLIENT_BASED_GEOLOCATION
 #include "GeolocationPermissionClientQt.h"
 #include "HTMLFormElement.h"
 #include "HTMLFrameOwnerElement.h"
@@ -314,9 +312,7 @@ QWebPagePrivate::QWebPagePrivate(QWebPage *qq)
     , inspectorIsInternalOnly(false)
     , m_lastDropAction(Qt::IgnoreAction)
 {
-#if ENABLE(DEVICE_ORIENTATION) || ENABLE(CLIENT_BASED_GEOLOCATION)
     bool useMock = QWebPagePrivate::drtRun;
-#endif
 
     WebCore::initializeWebCoreQt();
 
@@ -326,12 +322,10 @@ QWebPagePrivate::QWebPagePrivate(QWebPage *qq)
     pageClients.editorClient = new EditorClientQt(q);
     pageClients.dragClient = new DragClientQt(q);
     pageClients.inspectorClient = new InspectorClientQt(q);
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     if (useMock)
         pageClients.geolocationClient = new GeolocationClientMock;
     else
         pageClients.geolocationClient = new GeolocationClientQt(q);
-#endif
     page = new Page(pageClients);
 #if ENABLE(DEVICE_ORIENTATION)
     if (useMock)
@@ -351,11 +345,9 @@ QWebPagePrivate::QWebPagePrivate(QWebPage *qq)
     // as expected out of the box, we use a default group similar to what other ports are doing.
     page->setGroupName("Default Group");
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     // In case running in DumpRenderTree mode set the controller to mock provider.
     if (QWebPagePrivate::drtRun)
         static_cast<GeolocationClientMock*>(pageClients.geolocationClient)->setController(page->geolocationController());
-#endif
     settings = new QWebSettings(page->settings());
 
     history.d = new QWebHistoryPrivate(static_cast<WebCore::BackForwardListImpl*>(page->backForwardList()));
index 504b006..e82329c 100644 (file)
@@ -1,3 +1,23 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Api/qwebpage.cpp:
+        (QWebPagePrivate::QWebPagePrivate):
+        * WebCoreSupport/ChromeClientQt.h:
+        * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
+        (toGeolocationClientMock):
+        (DumpRenderTreeSupportQt::resetGeolocationMock):
+        (DumpRenderTreeSupportQt::setMockGeolocationPermission):
+        (DumpRenderTreeSupportQt::setMockGeolocationPosition):
+        (DumpRenderTreeSupportQt::setMockGeolocationError):
+        (DumpRenderTreeSupportQt::numberOfPendingGeolocationPermissionRequests):
+        * WebCoreSupport/GeolocationClientQt.h:
+        (WebCore):
+
 2012-03-12  Antonio Gomes  <agomes@rim.com>
 
         Convert nodesFromRect tests to use Internals interface
index 386b986..2306675 100644 (file)
@@ -173,9 +173,6 @@ public:
 
     virtual void scrollRectIntoView(const IntRect&) const { }
 
-    virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*) { }
-    virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*) { }
-
     virtual bool selectItemWritingDirectionIsNatural();
     virtual bool selectItemAlignmentFollowsMenuWritingDirection();
     virtual bool hasOpenedPopup() const;
index 36d635f..47450be 100644 (file)
@@ -105,13 +105,11 @@ using namespace WebCore;
 
 QMap<int, QWebScriptWorld*> m_worldMap;
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 GeolocationClientMock* toGeolocationClientMock(GeolocationClient* client)
 {
      ASSERT(QWebPagePrivate::drtRun);
      return static_cast<GeolocationClientMock*>(client);
 }
-#endif
 
 #if ENABLE(DEVICE_ORIENTATION)
 DeviceOrientationClientMock* toDeviceOrientationClientMock(DeviceOrientationClient* client)
@@ -838,34 +836,27 @@ void DumpRenderTreeSupportQt::setMockDeviceOrientation(QWebPage* page, bool canP
 
 void DumpRenderTreeSupportQt::resetGeolocationMock(QWebPage* page)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* corePage = QWebPagePrivate::core(page);
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage->geolocationController()->client());
     mockClient->reset();
-#endif
 }
 
 void DumpRenderTreeSupportQt::setMockGeolocationPermission(QWebPage* page, bool allowed)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* corePage = QWebPagePrivate::core(page);
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage->geolocationController()->client());
     mockClient->setPermission(allowed);
-#endif
 }
 
 void DumpRenderTreeSupportQt::setMockGeolocationPosition(QWebPage* page, double latitude, double longitude, double accuracy)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* corePage = QWebPagePrivate::core(page);
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage->geolocationController()->client());
     mockClient->setPosition(GeolocationPosition::create(currentTime(), latitude, longitude, accuracy));
-#endif
 }
 
 void DumpRenderTreeSupportQt::setMockGeolocationError(QWebPage* page, int errorCode, const QString& message)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* corePage = QWebPagePrivate::core(page);
 
     GeolocationError::ErrorCode code = GeolocationError::PositionUnavailable;
@@ -880,18 +871,13 @@ void DumpRenderTreeSupportQt::setMockGeolocationError(QWebPage* page, int errorC
 
     GeolocationClientMock* mockClient = static_cast<GeolocationClientMock*>(corePage->geolocationController()->client());
     mockClient->setError(GeolocationError::create(code, message));
-#endif
 }
 
 int DumpRenderTreeSupportQt::numberOfPendingGeolocationPermissionRequests(QWebPage* page)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     Page* corePage = QWebPagePrivate::core(page);
     GeolocationClientMock* mockClient = toGeolocationClientMock(corePage->geolocationController()->client());
     return mockClient->numberOfPendingPermissionRequests();
-#else
-    return -1;
-#endif
 }
 
 bool DumpRenderTreeSupportQt::isTargetItem(const QWebHistoryItem& historyItem)
index 9a2825d..9d07a91 100644 (file)
@@ -47,7 +47,7 @@ class QWebPage;
 
 namespace WebCore {
 
-// This class provides an implementation of a GeolocationService for QtWebkit.
+// This class provides an implementation of a GeolocationClient for QtWebkit.
 class GeolocationClientQt : public QObject, public GeolocationClient {
     Q_OBJECT
 
index ab1bfca..cdaa424 100644 (file)
@@ -1,3 +1,25 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * WebCoreSupport/WebChromeClient.h:
+        (WebChromeClient):
+        * WebCoreSupport/WebGeolocationClient.cpp:
+        (WebGeolocationClient::lastPosition):
+        * WebGeolocationPosition.cpp:
+        (WebGeolocationPosition::initWithTimestamp):
+        (core):
+        * WebGeolocationPosition.h:
+        (WebGeolocationPosition):
+        (WebGeolocationPosition::impl):
+        * WebView.cpp:
+        (WebView::initWithFrame):
+        (WebView::geolocationDidChangePosition):
+        (WebView::geolocationDidFailWithError):
+
 2012-03-12  Jessie Berlin  <jberlin@apple.com>
 
         More Windows build fixing.
index 478f5d5..63bf5d1 100644 (file)
@@ -144,11 +144,6 @@ public:
 
     virtual void scrollRectIntoView(const WebCore::IntRect&) const { }
 
-    // FIXME: Remove once all ports are using client-based geolocation. https://bugs.webkit.org/show_bug.cgi?id=40373
-    // For client-based geolocation, these two methods have been moved to WebGeolocationClient. https://bugs.webkit.org/show_bug.cgi?id=50061
-    virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*) { }
-    virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*) { }
-
 #if ENABLE(VIDEO)
     virtual bool supportsFullscreenForNode(const WebCore::Node*);
     virtual void enterFullscreenForNode(WebCore::Node*);
index b1d83fb..41bcb48 100644 (file)
@@ -66,7 +66,6 @@ void WebGeolocationClient::stopUpdating()
 
 GeolocationPosition* WebGeolocationClient::lastPosition()
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     COMPtr<IWebGeolocationProvider> provider;
     if (FAILED(m_webView->geolocationProvider(&provider)))
         return 0;
@@ -74,9 +73,6 @@ GeolocationPosition* WebGeolocationClient::lastPosition()
     if (FAILED(provider->lastPosition(&position)))
         return 0;
     return core(position.get());
-#else
-    return 0;
-#endif
 }
 
 void WebGeolocationClient::requestPermission(Geolocation* geolocation)
index 26554dd..fb2ac6f 100644 (file)
 #include "WebGeolocationPosition.h"
 #include <WebCore/COMPtr.h>
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #include <WebCore/GeolocationPosition.h>
 
 using namespace WebCore;
-#endif
 
 COMPtr<WebGeolocationPosition> WebGeolocationPosition::createInstance()
 {
@@ -83,15 +81,10 @@ ULONG WebGeolocationPosition::Release()
 
 HRESULT WebGeolocationPosition::initWithTimestamp(double timestamp, double latitude, double longitude, double accuracy)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     m_position = GeolocationPosition::create(timestamp, latitude, longitude, accuracy);
     return S_OK;
-#else
-    return E_FAIL;
-#endif
 }
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 GeolocationPosition* core(IWebGeolocationPosition* position)
 {
     if (!position)
@@ -103,4 +96,3 @@ GeolocationPosition* core(IWebGeolocationPosition* position)
 
     return webGeolocationPosition->impl();
 }
-#endif
index 8160270..3e11dcf 100644 (file)
@@ -48,19 +48,13 @@ public:
     // IWebGeolocationPosition
     virtual HRESULT STDMETHODCALLTYPE initWithTimestamp(double timestamp, double latitude, double longitude, double accuracy);
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     WebCore::GeolocationPosition* impl() const { return m_position.get(); }
-#endif
 
 private:
     ULONG m_refCount;
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     RefPtr<WebCore::GeolocationPosition> m_position;
-#endif
 };
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 WebCore::GeolocationPosition* core(IWebGeolocationPosition*);
-#endif
 
 #endif // WebGeolocationPosition_h
index 141d36c..f342ebd 100644 (file)
@@ -92,6 +92,8 @@
 #include <WebCore/FrameView.h>
 #include <WebCore/FrameWin.h>
 #include <WebCore/GDIObjectCounter.h>
+#include <WebCore/GeolocationController.h>
+#include <WebCore/GeolocationError.h>
 #include <WebCore/GraphicsContext.h>
 #include <WebCore/HTMLMediaElement.h>
 #include <WebCore/HTMLNames.h>
 #include <WebCore/WindowsTouch.h>
 #include <wtf/MainThread.h>
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-#include <WebCore/GeolocationController.h>
-#include <WebCore/GeolocationError.h>
-#endif
-
 #if USE(CG)
 #include <CoreGraphics/CGContext.h>
 #endif
@@ -2669,9 +2666,7 @@ HRESULT STDMETHODCALLTYPE WebView::initWithFrame(
     pageClients.editorClient = new WebEditorClient(this);
     pageClients.dragClient = new WebDragClient(this);
     pageClients.inspectorClient = m_inspectorClient;
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     pageClients.geolocationClient = new WebGeolocationClient(this);
-#endif
     m_page = new Page(pageClients);
 
     BSTR localStoragePath;
@@ -6569,19 +6564,14 @@ HRESULT WebView::geolocationProvider(IWebGeolocationProvider** locationProvider)
 
 HRESULT WebView::geolocationDidChangePosition(IWebGeolocationPosition* position)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     if (!m_page)
         return E_FAIL;
     m_page->geolocationController()->positionChanged(core(position));
     return S_OK;
-#else
-    return E_NOTIMPL;
-#endif
 }
 
 HRESULT WebView::geolocationDidFailWithError(IWebError* error)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     if (!m_page)
         return E_FAIL;
     if (!error)
@@ -6596,9 +6586,6 @@ HRESULT WebView::geolocationDidFailWithError(IWebError* error)
     RefPtr<GeolocationError> geolocationError = GeolocationError::create(GeolocationError::PositionUnavailable, descriptionString);
     m_page->geolocationController()->errorOccurred(geolocationError.get());
     return S_OK;
-#else
-    return E_NOTIMPL;
-#endif
 }
 
 HRESULT WebView::setDomainRelaxationForbiddenForURLScheme(BOOL forbidden, BSTR scheme)
index 5ca6d91..0ddab91 100644 (file)
@@ -1,3 +1,14 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * WebCoreSupport/ChromeClientWinCE.cpp:
+        * WebCoreSupport/ChromeClientWinCE.h:
+        (ChromeClientWinCE):
+
 2012-03-09  Jon Lee  <jonlee@apple.com>
 
         Rename NotificationPresenter to NotificationClient
index 6a0e25a..ac0b26d 100644 (file)
@@ -369,16 +369,6 @@ void ChromeClientWinCE::formStateDidChange(const Node*)
     notImplemented();
 }
 
-void ChromeClientWinCE::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
-    notImplemented();
-}
-
-void ChromeClientWinCE::cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*)
-{
-    notImplemented();
-}
-
 bool ChromeClientWinCE::selectItemWritingDirectionIsNatural()
 {
     return false;
index 4179202..db86405 100644 (file)
@@ -135,11 +135,6 @@ public:
     virtual WebCore::NotificationClient* notificationPresenter() const;
 #endif
 
-    // This can be either a synchronous or asynchronous call. The ChromeClient can display UI asking the user for permission
-    // to use Geolocation.
-    virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*);
-    virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*);
-
     virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>);
     // Asynchronous request to load an icon for specified filenames.
     virtual void loadIconForFiles(const Vector<WTF::String>&, WebCore::FileIconLoader*);
index de5aef9..350c4fe 100644 (file)
@@ -1,3 +1,13 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * WebKitSupport/ChromeClientWx.cpp:
+        * WebKitSupport/ChromeClientWx.h:
+
 2012-02-26  Hajime Morrita  <morrita@chromium.org>
 
         Move ChromeClient::showContextMenu() to ContextMenuClient
index bc98724..d171c01 100644 (file)
@@ -465,12 +465,6 @@ void ChromeClientWx::setCursor(const Cursor& cursor)
         m_webView->SetCursor(*cursor.impl());
 }
 
-void ChromeClientWx::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
-    // See the comment in WebCore/page/ChromeClient.h
-    notImplemented();
-}
-
 bool ChromeClientWx::selectItemWritingDirectionIsNatural()
 {
     return false;
index f95871b..a59442d 100644 (file)
@@ -136,9 +136,6 @@ public:
 
     virtual void scrollRectIntoView(const IntRect&) const { }
 
-    virtual void requestGeolocationPermissionForFrame(Frame*, Geolocation*);
-    virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*) { }
-
     virtual bool selectItemWritingDirectionIsNatural();
     virtual bool selectItemAlignmentFollowsMenuWritingDirection();
     virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
index aa7deb4..80d9d13 100644 (file)
@@ -1,3 +1,28 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * WebProcess/Geolocation/WebGeolocationManager.cpp:
+        (WebKit::WebGeolocationManager::registerWebPage):
+        (WebKit::WebGeolocationManager::unregisterWebPage):
+        (WebKit::WebGeolocationManager::didChangePosition):
+        (WebKit::WebGeolocationManager::didFailToDeterminePosition):
+        * WebProcess/InjectedBundle/InjectedBundle.cpp:
+        (WebKit::InjectedBundle::setGeoLocationPermission):
+        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+        (WebKit):
+        * WebProcess/WebCoreSupport/WebChromeClient.h:
+        (WebChromeClient):
+        * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
+        * WebProcess/WebCoreSupport/WebGeolocationClient.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::WebPage):
+        * mac/WebKit2.order:
+
 2012-03-13  Max Vujovic  <mvujovic@adobe.com>
 
         Add a method to window.internals to enable testing of inspector highlight rects
index 58a02f5..dd7cdd1 100644 (file)
@@ -34,9 +34,6 @@
 ENABLE_BLOB = $(ENABLE_BLOB_$(REAL_PLATFORM_NAME));
 ENABLE_BLOB_macosx = ENABLE_BLOB;
 
-ENABLE_CLIENT_BASED_GEOLOCATION = $(ENABLE_CLIENT_BASED_GEOLOCATION_$(REAL_PLATFORM_NAME));
-ENABLE_CLIENT_BASED_GEOLOCATION_macosx = ENABLE_CLIENT_BASED_GEOLOCATION;
-
 ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(REAL_PLATFORM_NAME));
 ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;
 
@@ -132,4 +129,4 @@ ENABLE_WEB_TIMING = ;
 ENABLE_WORKERS = ENABLE_WORKERS;
 ENABLE_XSLT = ENABLE_XSLT;
 
-FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_SHADERS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_COLOR) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_TAG) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_TAG) $(ENABLE_QUOTA) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XSLT);
index cee8e0b..60b81d1 100644 (file)
 #include "WebGeolocationManagerProxyMessages.h"
 #include "WebPage.h"
 #include "WebProcess.h"
-
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
 #include <WebCore/Geolocation.h>
 #include <WebCore/GeolocationController.h>
 #include <WebCore/GeolocationError.h>
 #include <WebCore/GeolocationPosition.h>
 #include <WebCore/Page.h>
-#endif
 
 using namespace WebCore;
 
@@ -58,29 +55,25 @@ void WebGeolocationManager::didReceiveMessage(CoreIPC::Connection* connection, C
 
 void WebGeolocationManager::registerWebPage(WebPage* page)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     bool wasEmpty = m_pageSet.isEmpty();
 
     m_pageSet.add(page);
     
     if (wasEmpty)
         m_process->connection()->send(Messages::WebGeolocationManagerProxy::StartUpdating(), 0);
-#endif
 }
 
 void WebGeolocationManager::unregisterWebPage(WebPage* page)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
     m_pageSet.remove(page);
 
     if (m_pageSet.isEmpty())
         m_process->connection()->send(Messages::WebGeolocationManagerProxy::StopUpdating(), 0);
-#endif
 }
 
 void WebGeolocationManager::didChangePosition(const WebGeolocationPosition::Data& data)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     RefPtr<GeolocationPosition> position = GeolocationPosition::create(data.timestamp, data.latitude, data.longitude, data.accuracy);
 
     HashSet<WebPage*>::const_iterator it = m_pageSet.begin();
@@ -90,12 +83,12 @@ void WebGeolocationManager::didChangePosition(const WebGeolocationPosition::Data
         if (page->corePage())
             page->corePage()->geolocationController()->positionChanged(position.get());
     }
-#endif
+#endif // ENABLE(GEOLOCATION)
 }
 
 void WebGeolocationManager::didFailToDeterminePosition()
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     // FIXME: Add localized error string.
     RefPtr<GeolocationError> error = GeolocationError::create(GeolocationError::PositionUnavailable, /* Localized error string */ String(""));
 
@@ -106,7 +99,7 @@ void WebGeolocationManager::didFailToDeterminePosition()
         if (page->corePage())
             page->corePage()->geolocationController()->errorOccurred(error.get());
     }
-#endif
+#endif // ENABLE(GEOLOCATION)
 }
 
 } // namespace WebKit
index 2267d66..42f8674 100644 (file)
@@ -195,11 +195,11 @@ void InjectedBundle::setFrameFlatteningEnabled(WebPageGroupProxy* pageGroup, boo
 
 void InjectedBundle::setGeoLocationPermission(WebPageGroupProxy* pageGroup, bool enabled)
 {
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     const HashSet<Page*>& pages = PageGroup::pageGroup(pageGroup->identifier())->pages();
     for (HashSet<Page*>::iterator iter = pages.begin(); iter != pages.end(); ++iter)
         static_cast<GeolocationClientMock*>((*iter)->geolocationController()->client())->setPermission(enabled);
-#endif
+#endif // ENABLE(GEOLOCATION)
 }
 
 void InjectedBundle::setJavaScriptCanAccessClipboard(WebPageGroupProxy* pageGroup, bool enabled)
index 16cb22a..54e7503 100644 (file)
@@ -585,16 +585,6 @@ bool WebChromeClient::paintCustomOverhangArea(GraphicsContext* context, const In
     return true;
 }
 
-void WebChromeClient::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
-    notImplemented();
-}
-
-void WebChromeClient::cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*)
-{
-    notImplemented();
-}
-
 void WebChromeClient::runOpenPanel(Frame* frame, PassRefPtr<FileChooser> prpFileChooser)
 {
     if (m_page->activeOpenPanelResultListener())
index b68d8d4..969049f 100644 (file)
@@ -153,11 +153,6 @@ private:
     
     virtual bool paintCustomOverhangArea(WebCore::GraphicsContext*, const WebCore::IntRect&, const WebCore::IntRect&, const WebCore::IntRect&) OVERRIDE;
 
-    // This is an asynchronous call. The ChromeClient can display UI asking the user for permission
-    // to use Geolococation. The ChromeClient must call Geolocation::setShouldClearCache() appropriately.
-    virtual void requestGeolocationPermissionForFrame(WebCore::Frame*, WebCore::Geolocation*) OVERRIDE;
-    virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*) OVERRIDE;
-
     virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>) OVERRIDE;
     virtual void loadIconForFiles(const Vector<String>&, WebCore::FileIconLoader*) OVERRIDE;
 
index 1f920a1..993f99e 100644 (file)
@@ -26,7 +26,7 @@
 #include "config.h"
 #include "WebGeolocationClient.h"
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
 
 #include "WebGeolocationManager.h"
 #include "WebPage.h"
@@ -80,4 +80,4 @@ void WebGeolocationClient::cancelPermissionRequest(Geolocation* geolocation)
 
 } // namespace WebKit
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
index 21fc438..9e57139 100644 (file)
@@ -26,8 +26,6 @@
 #ifndef WebGeolocationClient_h
 #define WebGeolocationClient_h
 
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #include <WebCore/GeolocationClient.h>
 
 namespace WebKit {
@@ -61,6 +59,4 @@ private:
 
 } // namespace WebKit
 
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
 #endif // WebGeolocationClient_h
index 9f8b417..38f45e4 100644 (file)
@@ -228,7 +228,7 @@ WebPage::WebPage(uint64_t pageID, const WebPageCreationParameters& parameters)
     pageClients.editorClient = new WebEditorClient(this);
     pageClients.dragClient = new WebDragClient(this);
     pageClients.backForwardClient = WebBackForwardListProxy::create(this);
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
     pageClients.geolocationClient = new WebGeolocationClient(this);
 #endif
 #if ENABLE(INSPECTOR)
index 457a063..041f89e 100644 (file)
@@ -2450,7 +2450,6 @@ __ZN6WebKit12WebPageProxy28didRestoreFrameFromPageCacheEyy
 __ZN7CoreIPC13handleMessageIN8Messages12WebPageProxy36RequestGeolocationPermissionForFrameEN6WebKit12WebPageProxyEMS5_FvyyN3WTF6StringEEEEvPNS_15ArgumentDecoderEPT0_T1_
 __ZN7CoreIPC10Arguments3IyyN3WTF6StringEE6decodeEPNS_15ArgumentDecoderERS3_
 __ZN7CoreIPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvyyN3WTF6StringEEyyS4_EEvRKNS_10Arguments3IT1_T2_T3_EEPT_T0_
-__ZN6WebKit12WebPageProxy36requestGeolocationPermissionForFrameEyyN3WTF6StringE
 __ZN6WebKit17WebSecurityOrigin6createERKN3WTF6StringE
 __ZN6WebKit40GeolocationPermissionRequestManagerProxy13createRequestEy
 __ZN6WebKit33GeolocationPermissionRequestProxyC1EPNS_40GeolocationPermissionRequestManagerProxyEy
index a90c850..122851b 100644 (file)
@@ -133,7 +133,6 @@ WEBKIT_FEATURE(ENABLE_ASSEMBLER_WX_EXCLUSIVE "Assembler WX Exclusive" DEFAULT ON
 WEBKIT_FEATURE(ENABLE_BLACKBERRY_CARET_APPEARANCE "Blackberry Caret Appearance" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT ON)
 WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT ON)
-WEBKIT_FEATURE(ENABLE_CLIENT_BASED_GEOLOCATION "Client based Geolocation" DEFAULT ON)
 WEBKIT_FEATURE(ENABLE_DATABASE "Enable database" DEFAULT ON)
 WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT ON)
 WEBKIT_FEATURE(ENABLE_DETAILS "Enable details element" DEFAULT ON)
index 926be91..2106e08 100644 (file)
@@ -65,7 +65,6 @@ SET(VERSION_SCRIPT "-Wl,--version-script,${CMAKE_MODULE_PATH}/eflsymbols.filter"
 
 WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT ON)
-WEBKIT_FEATURE(ENABLE_CLIENT_BASED_GEOLOCATION "Enable client based geolocation" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT ON)
 WEBKIT_FEATURE(ENABLE_DATA_TRANSFER_ITEMS "Enable data transfer items" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_DEVICE_ORIENTATION "Enable device orientation" DEFAULT OFF)
index 6147838..5f04f5f 100644 (file)
@@ -21,7 +21,6 @@ ADD_SUBDIRECTORY(${3RDPARTY_DIR} "${CMAKE_CURRENT_BINARY_DIR}/3rdparty")
 
 WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT OFF)
-WEBKIT_FEATURE(ENABLE_CLIENT_BASED_GEOLOCATION "Enable client based geolocation" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_DATA_TRANSFER_ITEMS "Enable data transfer items" DEFAULT OFF)
 WEBKIT_FEATURE(ENABLE_FAST_MOBILE_SCROLLING "Enable fast mobile scrolling" DEFAULT ON)
index 98db0b6..b163aa9 100644 (file)
@@ -8,7 +8,6 @@
 #cmakedefine01 ENABLE_AS_IMAGE
 #cmakedefine01 ENABLE_BLOB
 #cmakedefine01 ENABLE_CHANNEL_MESSAGING
-#cmakedefine01 ENABLE_CLIENT_BASED_GEOLOCATION
 #cmakedefine01 ENABLE_DATALIST
 #cmakedefine01 ENABLE_DATA_TRANSFER_ITEMS
 #cmakedefine01 ENABLE_DEVICE_ORIENTATION
index f50e1b9..b2d7788 100644 (file)
@@ -1,3 +1,13 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * Scripts/build-webkit:
+        * qmake/mkspecs/features/features.prf:
+
 2012-03-12  Antonio Gomes  <agomes@rim.com>
 
         Convert nodesFromRect tests to use Internals interface
index 9d14f3c..c276f75 100755 (executable)
@@ -72,7 +72,6 @@ my (
     $animationAPISupport,
     $blobSupport,
     $channelMessagingSupport,
-    $clientBasedGeolocationSupport,
     $coverageSupport,
     $cssFiltersSupport,
     $cssGridLayoutSupport,
@@ -167,9 +166,6 @@ my @features = (
     { option => "channel-messaging", desc => "Toggle MessageChannel and MessagePort support",
       define => "ENABLE_CHANNEL_MESSAGING", default => 1, value => \$channelMessagingSupport },
 
-    { option => "client-based-geolocation", desc => "Toggle client-based Geolocation support",
-      define => "ENABLE_CLIENT_BASED_GEOLOCATION", default => (isAppleWebKit() || isGtk() || isBlackBerry()), value => \$clientBasedGeolocationSupport },
-
     { option => "css-filters", desc => "Toggle CSS Filters support",
       define => "ENABLE_CSS_FILTERS", default => isAppleWebKit(), value => \$cssFiltersSupport },
 
index 59a0bd4..06da1af 100644 (file)
@@ -170,7 +170,6 @@ contains(DEFINES, WTF_USE_LIBXML2=1) {
 !contains(DEFINES, ENABLE_GEOLOCATION=.) {
     contains(MOBILITY_CONFIG, location)|contains(QT_CONFIG, location) {
        DEFINES += ENABLE_GEOLOCATION=1
-       DEFINES += ENABLE_CLIENT_BASED_GEOLOCATION=1
     }
 }
 
index beeaf66..1348c42 100644 (file)
@@ -1,3 +1,13 @@
+2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
+
+        Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
+        https://bugs.webkit.org/show_bug.cgi?id=78853
+
+        Reviewed by Adam Barth.
+
+        * win/tools/vsprops/FeatureDefines.vsprops:
+        * win/tools/vsprops/FeatureDefinesCairo.vsprops:
+
 2012-03-12  Enrica Casucci  <enrica@apple.com>
 
         WebKit2: remove NSPasteboard access for promised data from the WebProcess
index c25fb60..18e513d 100644 (file)
@@ -9,7 +9,7 @@
        >
   <Tool
                Name="VCCLCompilerTool"
-               PreprocessorDefinitions="$(ENABLE_REQUEST_ANIMATION_FRAME);$(ENABLE_3D_CANVAS);$(ENABLE_3D_RENDERING);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_BLOB);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CLIENT_BASED_GEOLOCATION);$(ENABLE_CSS_FILTERS);$(ENABLE_CSS_GRID_LAYOUT);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_REGIONS);$(ENABLE_CSS_EXCLUSIONS);$(ENABLE_SQL_DATABASE);$(ENABLE_DATAGRID);$(ENABLE_DATALIST);$(ENABLE_DATA_TRANSFER_ITEMS);$(ENABLE_DETAILS);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_FILTERS);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_JAVASCRIPT_DEBUGGER);$(ENABLE_LEGACY_NOTIFICATIONS);$(ENABLE_LINK_PREFETCH);$(ENABLE_MATHML);$(ENABLE_METER_TAG);$(ENABLE_MICRODATA);$(ENABLE_MUTATION_OBSERVERS);$(ENABLE_NOTIFICATIONS);$(ENABLE_PAGE_VISIBILITY_API);$(ENABLE_PROGRESS_TAG);$(ENABLE_QUOTA);$(ENABLE_REGISTER_PROTOCOL_HANDLER);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHADOW_DOM);$(ENABLE_SHARED_WORKERS);$(ENABLE_STYLE_SCOPED);$(ENABLE_SVG);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_WEB_SOCKETS);$(ENABLE_WEB_TIMING);$(ENABLE_WORKERS);$(ENABLE_XSLT)"
+               PreprocessorDefinitions="$(ENABLE_REQUEST_ANIMATION_FRAME);$(ENABLE_3D_CANVAS);$(ENABLE_3D_RENDERING);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_BLOB);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS_FILTERS);$(ENABLE_CSS_GRID_LAYOUT);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_REGIONS);$(ENABLE_CSS_EXCLUSIONS);$(ENABLE_SQL_DATABASE);$(ENABLE_DATAGRID);$(ENABLE_DATALIST);$(ENABLE_DATA_TRANSFER_ITEMS);$(ENABLE_DETAILS);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_FILTERS);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_JAVASCRIPT_DEBUGGER);$(ENABLE_LEGACY_NOTIFICATIONS);$(ENABLE_LINK_PREFETCH);$(ENABLE_MATHML);$(ENABLE_METER_TAG);$(ENABLE_MICRODATA);$(ENABLE_MUTATION_OBSERVERS);$(ENABLE_NOTIFICATIONS);$(ENABLE_PAGE_VISIBILITY_API);$(ENABLE_PROGRESS_TAG);$(ENABLE_QUOTA);$(ENABLE_REGISTER_PROTOCOL_HANDLER);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHADOW_DOM);$(ENABLE_SHARED_WORKERS);$(ENABLE_STYLE_SCOPED);$(ENABLE_SVG);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_WEB_SOCKETS);$(ENABLE_WEB_TIMING);$(ENABLE_WORKERS);$(ENABLE_XSLT)"
        />
   <UserMacro
                Name="ENABLE_REQUEST_ANIMATION_FRAME"
                PerformEnvironmentSet="true"
        />
   <UserMacro
-               Name="ENABLE_CLIENT_BASED_GEOLOCATION"
-               Value="ENABLE_CLIENT_BASED_GEOLOCATION"
-               PerformEnvironmentSet="true"
-       />
-  <UserMacro
                Name="ENABLE_CSS_FILTERS"
                Value="ENABLE_CSS_FILTERS"
                PerformEnvironmentSet="true"
index 3ceac18..86dc04d 100644 (file)
@@ -9,7 +9,7 @@
        >
   <Tool
                Name="VCCLCompilerTool"
-               PreprocessorDefinitions="$(ENABLE_3D_CANVAS);$(ENABLE_3D_RENDERING);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_BLOB);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CLIENT_BASED_GEOLOCATION);$(ENABLE_CSS_FILTERS);$(ENABLE_CSS_GRID_LAYOUT);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_REGIONS);$(ENABLE_CSS_EXCLUSIONS);$(ENABLE_SQL_DATABASE);$(ENABLE_DATAGRID);$(ENABLE_DATALIST);$(ENABLE_DATA_TRANSFER_ITEMS);$(ENABLE_DETAILS);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_FILTERS);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_JAVASCRIPT_DEBUGGER);$(ENABLE_LEGACY_NOTIFICATIONS);$(ENABLE_LINK_PREFETCH);$(ENABLE_MATHML);$(ENABLE_METER_TAG);$(ENABLE_MICRODATA);$(ENABLE_MUTATION_OBSERVERS);$(ENABLE_NOTIFICATIONS);$(ENABLE_PAGE_VISIBILITY_API);$(ENABLE_PROGRESS_TAG);$(ENABLE_QUOTA);$(ENABLE_REGISTER_PROTOCOL_HANDLER);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHADOW_DOM);$(ENABLE_SHARED_WORKERS);$(ENABLE_STYLE_SCOPED);$(ENABLE_SVG);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_WEB_SOCKETS);$(ENABLE_WEB_TIMING);$(ENABLE_WORKERS);$(ENABLE_XSLT)"
+               PreprocessorDefinitions="$(ENABLE_3D_CANVAS);$(ENABLE_3D_RENDERING);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_BLOB);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS_FILTERS);$(ENABLE_CSS_GRID_LAYOUT);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_REGIONS);$(ENABLE_CSS_EXCLUSIONS);$(ENABLE_SQL_DATABASE);$(ENABLE_DATAGRID);$(ENABLE_DATALIST);$(ENABLE_DATA_TRANSFER_ITEMS);$(ENABLE_DETAILS);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_FILTERS);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_JAVASCRIPT_DEBUGGER);$(ENABLE_LEGACY_NOTIFICATIONS);$(ENABLE_LINK_PREFETCH);$(ENABLE_MATHML);$(ENABLE_METER_TAG);$(ENABLE_MICRODATA);$(ENABLE_MUTATION_OBSERVERS);$(ENABLE_NOTIFICATIONS);$(ENABLE_PAGE_VISIBILITY_API);$(ENABLE_PROGRESS_TAG);$(ENABLE_QUOTA);$(ENABLE_REGISTER_PROTOCOL_HANDLER);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHADOW_DOM);$(ENABLE_SHARED_WORKERS);$(ENABLE_STYLE_SCOPED);$(ENABLE_SVG);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_WEB_SOCKETS);$(ENABLE_WEB_TIMING);$(ENABLE_WORKERS);$(ENABLE_XSLT)"
        />
   <UserMacro
                Name="ENABLE_3D_CANVAS"
                PerformEnvironmentSet="true"
        />
   <UserMacro
-               Name="ENABLE_CLIENT_BASED_GEOLOCATION"
-               Value="ENABLE_CLIENT_BASED_GEOLOCATION"
-               PerformEnvironmentSet="true"
-       />
-  <UserMacro
                Name="ENABLE_CSS_FILTERS"
                Value=""
                PerformEnvironmentSet="true"