Changeset 37840 in webkit for trunk/JavaScriptCore/wtf/Platform.h


Ignore:
Timestamp:
Oct 23, 2008, 10:05:47 PM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

2008-10-23 Greg Bolsinga <[email protected]>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=21475


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

  • wtf/Platform.h: ENABLE_GEOLOCATION defaults to 0

WebCore:

2008-10-23 Greg Bolsinga <[email protected]>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=21475


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

Test: geolocation/geolocation-not-implemented.html

  • DerivedSources.make:
  • GNUmakefile.am: Added Geolocation support
  • WebCore.pro: Added Geolocation support
  • WebCore.vcproj/WebCore.vcproj: Added Geolocation support
  • WebCore.xcodeproj/project.pbxproj: Added Geolocation support
  • WebCoreSources.bkl: Added Geolocation support
  • bindings/js/JSCustomPositionCallback.cpp: Added. (WebCore::JSCustomPositionCallback::JSCustomPositionCallback): (WebCore::JSCustomPositionCallback::handleEvent):
  • bindings/js/JSCustomPositionCallback.h: Added. (WebCore::JSCustomPositionCallback::create):
  • bindings/js/JSCustomPositionErrorCallback.cpp: Added. (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback): (WebCore::JSCustomPositionErrorCallback::handleEvent):
  • bindings/js/JSCustomPositionErrorCallback.h: Added. (WebCore::JSCustomPositionErrorCallback::create):
  • bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom (WebCore::markDOMObjectWrapper):
  • bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
  • bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
  • bindings/js/JSGeolocationCustom.cpp: Added. (WebCore::JSGeolocation::getCurrentPosition): (WebCore::JSGeolocation::watchPosition):
  • bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation (WebCore::JSNavigator::mark):
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h: (WebCore::Document::setUsingGeolocation): (WebCore::Document::usingGeolocation):
  • loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation (WebCore::FrameLoader::canCachePage):
  • page/Geolocation.cpp: Added. (WebCore::Geolocation::GeoNotifier::GeoNotifier): (WebCore::Geolocation::GeoNotifier::timerFired): (WebCore::Geolocation::Geolocation): (WebCore::Geolocation::disconnectFrame): (WebCore::Geolocation::getCurrentPosition): (WebCore::Geolocation::watchPosition): (WebCore::Geolocation::clearWatch): (WebCore::Geolocation::stopUpdatingIfEmpty): (WebCore::Geolocation::sendErrorToOneShots): (WebCore::Geolocation::sendErrorToWatchers): (WebCore::Geolocation::sendPositionToOneShots): (WebCore::Geolocation::sendPositionToWatchers): (WebCore::Geolocation::handleError): (WebCore::Geolocation::geolocationServicePositionChanged): (WebCore::Geolocation::geolocationServiceErrorOccurred):
  • page/Geolocation.h: Added. (WebCore::Geolocation::create): (WebCore::Geolocation::~Geolocation): (WebCore::Geolocation::lastPosition): (WebCore::Geolocation::GeoNotifier::create):
  • page/Geolocation.idl: Added.
  • page/Geoposition.cpp: Added. (WebCore::Geoposition::toString):
  • page/Geoposition.h: Added. (WebCore::Geoposition::create): (WebCore::Geoposition::latitude): (WebCore::Geoposition::longitude): (WebCore::Geoposition::altitude): (WebCore::Geoposition::accuracy): (WebCore::Geoposition::altitudeAccuracy): (WebCore::Geoposition::heading): (WebCore::Geoposition::velocity): (WebCore::Geoposition::timestamp): (WebCore::Geoposition::Geoposition):
  • page/Geoposition.idl: Added.
  • page/Navigator.cpp: (WebCore::Navigator::disconnectFrame): disconnect Geolocation (WebCore::Navigator::geolocation): accessor for Geolocation
  • page/Navigator.h: (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
  • page/Navigator.idl: accessor for Geolocation
  • page/PositionCallback.h: Added. (WebCore::PositionCallback::~PositionCallback):
  • page/PositionCallback.idl: Added.
  • page/PositionError.h: Added. (WebCore::PositionError::): (WebCore::PositionError::create): (WebCore::PositionError::code): (WebCore::PositionError::message): (WebCore::PositionError::PositionError):
  • page/PositionError.idl: Added.
  • page/PositionErrorCallback.h: Added. (WebCore::PositionErrorCallback::~PositionErrorCallback):
  • page/PositionErrorCallback.idl: Added.
  • page/PositionOptions.h: Added. (WebCore::PositionOptions::create): (WebCore::PositionOptions::enableHighAccuracy): (WebCore::PositionOptions::setEnableHighAccuracy): (WebCore::PositionOptions::timeout): (WebCore::PositionOptions::setTimeout): (WebCore::PositionOptions::PositionOptions):
  • page/PositionOptions.idl: Added.
  • platform/GeolocationService.cpp: Added. (WebCore::GeolocationService::GeolocationService): (WebCore::GeolocationService::positionChanged): (WebCore::GeolocationService::errorOccurred):
  • platform/GeolocationService.h: Added. (WebCore::GeolocationServiceClient::~GeolocationServiceClient): (WebCore::GeolocationServiceClient::geolocationServicePositionChanged): (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred): (WebCore::GeolocationService::~GeolocationService):

LayoutTests:

2008-10-23 Greg Bolsinga <[email protected]>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=21475


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

Tests to verify Geolocation isn't implemented (so that it didn't leak into
WebCore for platforms that do not support it).

  • geolocation: Added.
  • geolocation/geolocation-not-implemented-expected.txt: Added.
  • geolocation/geolocation-not-implemented.html: Added.
  • geolocation/geolocation-test.js: Added. (reset): (hanged): (watchPositionAndEnd): (watchPosition._positionCallback): (watchPosition): (watchPositionTestAndEnd): (watchPositionAndFail): (watchPositionAndTest._positionCallback): (watchPositionAndTest): (getCurrentPositionAndEnd): (getCurrentPosition._positionCallback): (getCurrentPosition): (getCurrentPositionTestAndEnd): (getCurrentPositionAndFail): (getCurrentPositionAndTest._positionCallback): (getCurrentPositionAndTest): (endTest): (relativeURL):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/wtf/Platform.h

    r37820 r37840  
    352352#endif
    353353
     354#if !defined(ENABLE_GEOLOCATION)
     355#define ENABLE_GEOLOCATION 0
     356#endif
     357
    354358// CTI only supports x86 at the moment, and has only been tested on Mac and Windows.
    355359#if !defined(ENABLE_CTI) && PLATFORM(X86) && (PLATFORM(MAC) || PLATFORM(WIN))
Note: See TracChangeset for help on using the changeset viewer.