+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
+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.
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;
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);
#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
platform/FileIconLoader.cpp
platform/FileSystem.cpp
platform/ClockGeneric.cpp
- platform/GeolocationService.cpp
platform/HistogramSupport.cpp
platform/KURL.cpp
platform/KillRingNone.cpp
platform/mock/DeviceOrientationClientMock.cpp
platform/mock/GeolocationClientMock.cpp
- platform/mock/GeolocationServiceMock.cpp
platform/mock/ScrollbarThemeMock.cpp
platform/network/AuthenticationChallengeBase.cpp
+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
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;
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);
# ----
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
# ----
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 \
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 \
#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 {
static const int firstAvailableWatchId = 1;
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
static PassRefPtr<Geoposition> createGeoposition(GeolocationPosition* position)
{
if (!position)
return PositionError::create(code, error->message());
}
-#endif
Geolocation::GeoNotifier::GeoNotifier(Geolocation* geolocation, PassRefPtr<PositionCallback> successCallback, PassRefPtr<PositionErrorCallback> errorCallback, PassRefPtr<PositionOptions> options)
: m_geolocation(geolocation)
Geolocation::Geolocation(ScriptExecutionContext* context)
: ActiveDOMObject(context, this)
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
- , m_service(GeolocationService::create(this))
-#endif
, m_allowGeolocation(Unknown)
{
}
// 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();
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();
}
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()
stopUpdating();
}
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
void Geolocation::positionChanged()
{
positionChangedInternal();
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)
#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)
#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*);
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();
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*);
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
No
} m_allowGeolocation;
-#if ENABLE(GEOLOCATION)
RefPtr<Geoposition> m_cachedPosition;
-#endif
GeoNotifierSet m_requestsAwaitingCachedPosition;
};
} // namespace WebCore
+#endif // ENABLE(GEOLOCATION)
+
#endif // Geolocation_h
#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 {
} // namespace WebCore
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#ifndef GeolocationController_h
#define GeolocationController_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
#include "Geolocation.h"
#include <wtf/HashSet.h>
} // namespace WebCore
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#endif // GeolocationController_h
#ifndef GeolocationError_h
#define GeolocationError_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
#include "PlatformString.h"
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
} // namespace WebCore
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
#endif // GeolocationError_h
#ifndef GeolocationPosition_h
#define GeolocationPosition_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
#include <wtf/RefPtr.h>
} // namespace WebCore
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
#endif // GeolocationPosition_h
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 \
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 \
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 \
__ZN7WebCore11FrameLoader4loadERKNS_15ResourceRequestEb
__ZN7WebCore11FrameLoader6reloadEb
__ZN7WebCore11FrameLoader9setOpenerEPNS_5FrameE
-__ZN7WebCore11Geolocation12setIsAllowedEb
-__ZN7WebCore11GeolocationD1Ev
__ZN7WebCore11HistoryItem10targetItemEv
__ZN7WebCore11HistoryItem11setReferrerERKN3WTF6StringE
__ZN7WebCore11HistoryItem12addChildItemEN3WTF10PassRefPtrIS0_EE
__ZN7WebCore20makeRGBA32FromFloatsEffff
__ZN7WebCore20protocolIsJavaScriptERKN3WTF6StringE
__ZN7WebCore21BackForwardController11itemAtIndexEi
-__ZN7WebCore21GeolocationClientMock13setPermissionEb
__ZN7WebCore21MemoryPressureHandler7installEv
__ZN7WebCore21PlatformKeyboardEvent24disambiguateKeyDownEventENS_13PlatformEvent4TypeEb
__ZN7WebCore21ResourceLoadScheduler20servePendingRequestsENS_20ResourceLoadPriorityE
__ZNK7WebCore11FrameLoader20activeDocumentLoaderEv
__ZNK7WebCore11FrameLoader27numPendingOrLoadingRequestsEb
__ZNK7WebCore11FrameLoader8loadTypeEv
-__ZNK7WebCore11Geolocation5frameEv
__ZNK7WebCore11HistoryItem10visitCountEv
__ZNK7WebCore11HistoryItem11hasChildrenEv
__ZNK7WebCore11HistoryItem11originalURLEv
#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)
'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',
>
</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>
#include "JSPositionErrorCallback.h"
#include "PositionOptions.h"
-#if !ENABLE(CLIENT_BASED_GEOLOCATION)
-#include "GeolocationService.h"
-#endif
-
using namespace JSC;
using namespace std;
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() {}
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
#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;
#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)
#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)
#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)
+++ /dev/null
-/*
- * 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
+++ /dev/null
-/*
- * 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
-
#include "config.h"
#include "GeolocationClientMock.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
#include "GeolocationController.h"
#include "GeolocationError.h"
} // WebCore
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#ifndef GeolocationClientMock_h
#define GeolocationClientMock_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
#include "GeolocationClient.h"
#include "PlatformString.h"
#include "Timer.h"
}
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
#endif
+++ /dev/null
-/*
- * 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
+++ /dev/null
-/*
- * 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
#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"
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"))
pageClients.geolocationClient = m_geolocationClient = new GeolocationControllerClientBlackBerry(this);
#else
pageClients.geolocationClient = m_geolocationClient;
-#endif
pageClients.deviceMotionClient = new DeviceMotionClientBlackBerry(this);
pageClients.deviceOrientationClient = new DeviceOrientationClientBlackBerry(this);
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());
+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
BLOB
BRANCH_COMPACTION
CHANNEL_MESSAGING
-CLIENT_BASED_GEOLOCATION
CODEBLOCK_SAMPLING
COMPARE_AND_SWAP
COMPUTED_GOTO_INTERPRETER
#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;
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&);
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()
{
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:
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)
+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
'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',
#include "FrameLoadRequest.h"
#include "FrameView.h"
#include "Geolocation.h"
-#include "GeolocationService.h"
#include "GraphicsLayer.h"
#include "HTMLNames.h"
#include "HitTestResult.h"
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)
{
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
+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.
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();
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);
+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
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;
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();
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
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
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;
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;
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
}
#include "config.h"
#include "GeolocationClientGtk.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
#include "Chrome.h"
#include "ChromeClient.h"
#include "GeolocationController.h"
#include "GeolocationError.h"
#include "GeolocationPosition.h"
+#include "webkitgeolocationpolicydecisionprivate.h"
+#include "webkitwebframeprivate.h"
#include "webkitwebviewprivate.h"
#include <glib/gi18n-lib.h>
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)
}
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#ifndef GeolocationClientGtk_h
#define GeolocationClientGtk_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
#include "GRefPtr.h"
#include "GeolocationClient.h"
bool m_enableHighAccuracy;
bool m_isUpdating;
};
+
} // namespace WebKit
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#endif // GeolocationClientGtk_h
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
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.
+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
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;
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);
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;
#import "WebGeolocationClient.h"
+#if ENABLE(GEOLOCATION)
+
#import "WebDelegateImplementationCaching.h"
#import "WebFrameInternal.h"
#import "WebGeolocationPositionInternal.h"
GeolocationPosition* WebGeolocationClient::lastPosition()
{
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
return core([[m_webView _geolocationProvider] lastPosition]);
-#else
- return 0;
-#endif
}
@implementation WebGeolocationPolicyListener
@end
+#endif // ENABLE(GEOLOCATION)
#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];
_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;
}
#import "WebGeolocationPosition.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
namespace WebCore {
class GeolocationPosition;
}
WebCore::GeolocationPosition* core(WebGeolocationPosition *);
-#endif
#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
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);
- (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
#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"
, inspectorIsInternalOnly(false)
, m_lastDropAction(Qt::IgnoreAction)
{
-#if ENABLE(DEVICE_ORIENTATION) || ENABLE(CLIENT_BASED_GEOLOCATION)
bool useMock = QWebPagePrivate::drtRun;
-#endif
WebCore::initializeWebCoreQt();
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)
// 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()));
+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
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;
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)
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;
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)
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
+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.
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*);
GeolocationPosition* WebGeolocationClient::lastPosition()
{
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
COMPtr<IWebGeolocationProvider> provider;
if (FAILED(m_webView->geolocationProvider(&provider)))
return 0;
if (FAILED(provider->lastPosition(&position)))
return 0;
return core(position.get());
-#else
- return 0;
-#endif
}
void WebGeolocationClient::requestPermission(Geolocation* geolocation)
#include "WebGeolocationPosition.h"
#include <WebCore/COMPtr.h>
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
#include <WebCore/GeolocationPosition.h>
using namespace WebCore;
-#endif
COMPtr<WebGeolocationPosition> WebGeolocationPosition::createInstance()
{
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)
return webGeolocationPosition->impl();
}
-#endif
// 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
#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
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;
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)
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)
+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
notImplemented();
}
-void ChromeClientWinCE::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
- notImplemented();
-}
-
-void ChromeClientWinCE::cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*)
-{
- notImplemented();
-}
-
bool ChromeClientWinCE::selectItemWritingDirectionIsNatural()
{
return false;
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*);
+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
m_webView->SetCursor(*cursor.impl());
}
-void ChromeClientWx::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
-{
- // See the comment in WebCore/page/ChromeClient.h
- notImplemented();
-}
-
bool ChromeClientWx::selectItemWritingDirectionIsNatural()
{
return false;
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;
+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
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;
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);
#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;
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();
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(""));
if (page->corePage())
page->corePage()->geolocationController()->errorOccurred(error.get());
}
-#endif
+#endif // ENABLE(GEOLOCATION)
}
} // namespace WebKit
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)
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())
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;
#include "config.h"
#include "WebGeolocationClient.h"
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
+#if ENABLE(GEOLOCATION)
#include "WebGeolocationManager.h"
#include "WebPage.h"
} // namespace WebKit
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
+#endif // ENABLE(GEOLOCATION)
#ifndef WebGeolocationClient_h
#define WebGeolocationClient_h
-#if ENABLE(CLIENT_BASED_GEOLOCATION)
-
#include <WebCore/GeolocationClient.h>
namespace WebKit {
} // namespace WebKit
-#endif // ENABLE(CLIENT_BASED_GEOLOCATION)
-
#endif // WebGeolocationClient_h
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)
__ZN7CoreIPC13handleMessageIN8Messages12WebPageProxy36RequestGeolocationPermissionForFrameEN6WebKit12WebPageProxyEMS5_FvyyN3WTF6StringEEEEvPNS_15ArgumentDecoderEPT0_T1_
__ZN7CoreIPC10Arguments3IyyN3WTF6StringEE6decodeEPNS_15ArgumentDecoderERS3_
__ZN7CoreIPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvyyN3WTF6StringEEyyS4_EEvRKNS_10Arguments3IT1_T2_T3_EEPT_T0_
-__ZN6WebKit12WebPageProxy36requestGeolocationPermissionForFrameEyyN3WTF6StringE
__ZN6WebKit17WebSecurityOrigin6createERKN3WTF6StringE
__ZN6WebKit40GeolocationPermissionRequestManagerProxy13createRequestEy
__ZN6WebKit33GeolocationPermissionRequestProxyC1EPNS_40GeolocationPermissionRequestManagerProxyEy
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)
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)
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)
#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
+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
$animationAPISupport,
$blobSupport,
$channelMessagingSupport,
- $clientBasedGeolocationSupport,
$coverageSupport,
$cssFiltersSupport,
$cssGridLayoutSupport,
{ 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 },
!contains(DEFINES, ENABLE_GEOLOCATION=.) {
contains(MOBILITY_CONFIG, location)|contains(QT_CONFIG, location) {
DEFINES += ENABLE_GEOLOCATION=1
- DEFINES += ENABLE_CLIENT_BASED_GEOLOCATION=1
}
}
+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
>
<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"
>
<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"