diff options
Diffstat (limited to 'StoneIsland/plugins/cordova-plugin-geolocation/src')
6 files changed, 103 insertions, 398 deletions
diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/firefoxos/GeolocationProxy.js b/StoneIsland/plugins/cordova-plugin-geolocation/src/firefoxos/GeolocationProxy.js deleted file mode 100644 index e4b40529..00000000 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/firefoxos/GeolocationProxy.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * -*/ - -// latest geolocation spec can be found here: http://www.w3.org/TR/geolocation-API/ - -var idsMap = {}; - -module.exports = { - getLocation: function(success, error, args) { - var geo = cordova.require('cordova/modulemapper').getOriginalSymbol(window, 'navigator.geolocation'); - function successCallback(position) { - // Cordova is creating Position object using just coords - success(position.coords); - } - geo.getCurrentPosition(successCallback, error, { - enableHighAccuracy: args[0], - maximumAge: args[1] - }); - }, - - addWatch: function(success, error, args) { - var geo = cordova.require('cordova/modulemapper').getOriginalSymbol(window, 'navigator.geolocation'); - var id = args[0]; - function successCallback(position) { - success(position.coords); - } - var nativeId = geo.watchPosition(successCallback, error, { - enableHighAccuracy: args[1] - }); - - idsMap[id] = nativeId; - }, - - clearWatch: function(success, error, args) { - var geo = cordova.require('cordova/modulemapper').getOriginalSymbol(window, 'navigator.geolocation'); - var id = args[0]; - - if(id in idsMap) { - geo.clearWatch(idsMap[id]); - delete idsMap[id]; - } - - if(success) { - success(); - } - } -}; - -require("cordova/exec/proxy").add("Geolocation", module.exports); diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/ios/CDVLocation.m b/StoneIsland/plugins/cordova-plugin-geolocation/src/ios/CDVLocation.m index e4b34a11..d07a8e9c 100644 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/ios/CDVLocation.m +++ b/StoneIsland/plugins/cordova-plugin-geolocation/src/ios/CDVLocation.m @@ -6,9 +6,9 @@ to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - + http://www.apache.org/licenses/LICENSE-2.0 - + Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -65,7 +65,7 @@ - (BOOL)isAuthorized { BOOL authorizationStatusClassPropertyAvailable = [CLLocationManager respondsToSelector:@selector(authorizationStatus)]; // iOS 4.2+ - + if (authorizationStatusClassPropertyAvailable) { NSUInteger authStatus = [CLLocationManager authorizationStatus]; #ifdef __IPHONE_8_0 @@ -73,9 +73,9 @@ return (authStatus == kCLAuthorizationStatusAuthorizedWhenInUse) || (authStatus == kCLAuthorizationStatusAuthorizedAlways) || (authStatus == kCLAuthorizationStatusNotDetermined); } #endif - return (authStatus == kCLAuthorizationStatusAuthorized) || (authStatus == kCLAuthorizationStatusNotDetermined); + return (authStatus == kCLAuthorizationStatusAuthorizedAlways) || (authStatus == kCLAuthorizationStatusNotDetermined); } - + // by default, assume YES (for iOS < 4.2) return YES; } @@ -84,11 +84,9 @@ { BOOL locationServicesEnabledInstancePropertyAvailable = [self.locationManager respondsToSelector:@selector(locationServicesEnabled)]; // iOS 3.x BOOL locationServicesEnabledClassPropertyAvailable = [CLLocationManager respondsToSelector:@selector(locationServicesEnabled)]; // iOS 4.x - + if (locationServicesEnabledClassPropertyAvailable) { // iOS 4.x return [CLLocationManager locationServicesEnabled]; - } else if (locationServicesEnabledInstancePropertyAvailable) { // iOS 2.x, iOS 3.x - return [(id)self.locationManager locationServicesEnabled]; } else { return NO; } @@ -114,10 +112,10 @@ } // PERMISSIONDENIED is only PositionError that makes sense when authorization denied [self returnLocationError:PERMISSIONDENIED withMessage:message]; - + return; } - + #ifdef __IPHONE_8_0 NSUInteger code = [CLLocationManager authorizationStatus]; if (code == kCLAuthorizationStatusNotDetermined && ([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)] || [self.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)])) { //iOS8+ @@ -132,7 +130,7 @@ return; } #endif - + // Tell the location manager to start notifying us of location updates. We // first stop, and then start the updating to ensure we get at least one // update, even if our location did not change. @@ -159,7 +157,7 @@ if (![self isLocationServicesEnabled]) { return; } - + [self.locationManager stopUpdatingLocation]; __locationStarted = NO; __highAccuracyEnabled = NO; @@ -171,14 +169,16 @@ fromLocation:(CLLocation*)oldLocation { CDVLocationData* cData = self.locationData; - + cData.locationInfo = newLocation; - if (self.locationData.locationCallbacks.count > 0) { - for (NSString* callbackId in self.locationData.locationCallbacks) { - [self returnLocationInfo:callbackId andKeepCallback:NO]; + @synchronized (self.locationData.locationCallbacks) { + if (self.locationData.locationCallbacks.count > 0) { + for (NSString* callbackId in self.locationData.locationCallbacks) { + [self returnLocationInfo:callbackId andKeepCallback:NO]; + } + + [self.locationData.locationCallbacks removeAllObjects]; } - - [self.locationData.locationCallbacks removeAllObjects]; } if (self.locationData.watchCallbacks.count > 0) { for (NSString* timerId in self.locationData.watchCallbacks) { @@ -195,7 +195,7 @@ [self.commandDelegate runInBackground:^{ NSString* callbackId = command.callbackId; BOOL enableHighAccuracy = [[command argumentAtIndex:0] boolValue]; - + if ([self isLocationServicesEnabled] == NO) { NSMutableDictionary* posError = [NSMutableDictionary dictionaryWithCapacity:2]; [posError setObject:[NSNumber numberWithInt:PERMISSIONDENIED] forKey:@"code"]; @@ -207,14 +207,18 @@ self.locationData = [[CDVLocationData alloc] init]; } CDVLocationData* lData = self.locationData; - if (!lData.locationCallbacks) { - lData.locationCallbacks = [NSMutableArray arrayWithCapacity:1]; + @synchronized (self.locationData.locationCallbacks) { + if (!lData.locationCallbacks) { + lData.locationCallbacks = [NSMutableArray arrayWithCapacity:1]; + } } - + if (!__locationStarted || (__highAccuracyEnabled != enableHighAccuracy)) { // add the callbackId into the array so we can call back when get data - if (callbackId != nil) { - [lData.locationCallbacks addObject:callbackId]; + @synchronized (self.locationData.locationCallbacks) { + if (callbackId != nil) { + [lData.locationCallbacks addObject:callbackId]; + } } // Tell the location manager to start notifying us of heading updates [self startLocation:enableHighAccuracy]; @@ -230,19 +234,19 @@ NSString* callbackId = command.callbackId; NSString* timerId = [command argumentAtIndex:0]; BOOL enableHighAccuracy = [[command argumentAtIndex:1] boolValue]; - + if (!self.locationData) { self.locationData = [[CDVLocationData alloc] init]; } CDVLocationData* lData = self.locationData; - + if (!lData.watchCallbacks) { lData.watchCallbacks = [NSMutableDictionary dictionaryWithCapacity:1]; } - + // add the callbackId into the dictionary so we can call back whenever get data [lData.watchCallbacks setObject:callbackId forKey:timerId]; - + if ([self isLocationServicesEnabled] == NO) { NSMutableDictionary* posError = [NSMutableDictionary dictionaryWithCapacity:2]; [posError setObject:[NSNumber numberWithInt:PERMISSIONDENIED] forKey:@"code"]; @@ -260,7 +264,7 @@ - (void)clearWatch:(CDVInvokedUrlCommand*)command { NSString* timerId = [command argumentAtIndex:0]; - + if (self.locationData && self.locationData.watchCallbacks && [self.locationData.watchCallbacks objectForKey:timerId]) { [self.locationData.watchCallbacks removeObjectForKey:timerId]; if([self.locationData.watchCallbacks count] == 0) { @@ -278,7 +282,7 @@ { CDVPluginResult* result = nil; CDVLocationData* lData = self.locationData; - + if (lData && !lData.locationInfo) { // return error result = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageToErrorObject:POSITIONUNAVAILABLE]; @@ -294,7 +298,7 @@ [returnInfo setObject:[NSNumber numberWithDouble:lInfo.altitude] forKey:@"altitude"]; [returnInfo setObject:[NSNumber numberWithDouble:lInfo.coordinate.latitude] forKey:@"latitude"]; [returnInfo setObject:[NSNumber numberWithDouble:lInfo.coordinate.longitude] forKey:@"longitude"]; - + result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:returnInfo]; [result setKeepCallbackAsBool:keepCallback]; } @@ -306,17 +310,20 @@ - (void)returnLocationError:(NSUInteger)errorCode withMessage:(NSString*)message { NSMutableDictionary* posError = [NSMutableDictionary dictionaryWithCapacity:2]; - + [posError setObject:[NSNumber numberWithUnsignedInteger:errorCode] forKey:@"code"]; [posError setObject:message ? message:@"" forKey:@"message"]; CDVPluginResult* result = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsDictionary:posError]; - - for (NSString* callbackId in self.locationData.locationCallbacks) { - [self.commandDelegate sendPluginResult:result callbackId:callbackId]; + + + @synchronized (self.locationData.locationCallbacks) { + for (NSString* callbackId in self.locationData.locationCallbacks) { + [self.commandDelegate sendPluginResult:result callbackId:callbackId]; + } + + [self.locationData.locationCallbacks removeAllObjects]; } - - [self.locationData.locationCallbacks removeAllObjects]; - + for (NSString* callbackId in self.locationData.watchCallbacks) { [self.commandDelegate sendPluginResult:result callbackId:callbackId]; } @@ -325,7 +332,7 @@ - (void)locationManager:(CLLocationManager*)manager didFailWithError:(NSError*)error { NSLog(@"locationManager::didFailWithError %@", [error localizedFailureReason]); - + CDVLocationData* lData = self.locationData; if (lData && __locationStarted) { // TODO: probably have to once over the various error codes and return one of: @@ -338,10 +345,10 @@ } [self returnLocationError:positionError withMessage:[error localizedDescription]]; } - + if (error.code != kCLErrorLocationUnknown) { - [self.locationManager stopUpdatingLocation]; - __locationStarted = NO; + [self.locationManager stopUpdatingLocation]; + __locationStarted = NO; } } diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.cpp b/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.cpp deleted file mode 100644 index 3d40ab4c..00000000 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.cpp +++ /dev/null @@ -1,133 +0,0 @@ -/* - * - * Copyright 2013-2016 Canonical Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * -*/ - -#include <QUuid> - -#include "geolocation.h" - -Geolocation::Geolocation(Cordova *cordova) - : CPlugin(cordova), - _geoPositionInfoSource(QGeoPositionInfoSource::createDefaultSource(this)) { - if (_geoPositionInfoSource.data() != 0) { - QObject::connect(_geoPositionInfoSource.data(), - SIGNAL(positionUpdated(QGeoPositionInfo)), - this, - SLOT(positionUpdated(QGeoPositionInfo))); - - QObject::connect(_geoPositionInfoSource.data(), - SIGNAL(updateTimeout()), - this, - SLOT(updateTimeout())); - } -} - -void Geolocation::addWatch(int scId, int ecId, const QString &id, bool enableHighAccuracy) { - Q_UNUSED(enableHighAccuracy); - - assert(_id2sc.find(id) == _id2sc.end()); - - if (!_geoPositionInfoSource.data()) { - QVariantMap err; - err.insert("code", POSITION_UNAVAILABLE); - err.insert("message", "unavailable"); - - this->cb(ecId, err); - return; - } - - _id2sc[id] = scId; - _id2ec[id] = ecId; -} - -void Geolocation::clearWatch(int scId, int ecId, const QString &id) { - _id2sc.remove(id); - _id2ec.remove(id); -} - -void Geolocation::getLocation(int scId, int ecId, bool enableHighAccuracy, qint64 maximumAge) { - Q_UNUSED(maximumAge); - Q_UNUSED(enableHighAccuracy); - - if (!_geoPositionInfoSource.data()) { - QVariantMap err; - err.insert("code", POSITION_UNAVAILABLE); - err.insert("message", "unavailable"); - - this->cb(ecId, err); - return; - } - - _geoPositionInfoSource->requestUpdate(); - - QString id = QString("_INTERNAL_") + QUuid::createUuid().toString(); - - _id2sc[id] = scId; - _id2ec[id] = ecId; - _singleUpdate.insert(id); -} - -void Geolocation::positionUpdated(const QGeoPositionInfo &update) { - QGeoCoordinate coordinate = update.coordinate(); - - QVariantMap p; - - p.insert("latitude", coordinate.latitude()); - p.insert("longitude", coordinate.longitude()); - - if (coordinate.type() == QGeoCoordinate::Coordinate3D) - p.insert("altitude", coordinate.altitude()); - - if (update.hasAttribute(QGeoPositionInfo::HorizontalAccuracy)) - p.insert("accuracy", update.attribute(QGeoPositionInfo::HorizontalAccuracy)); - - if (update.hasAttribute(QGeoPositionInfo::Direction)) - p.insert("heading", update.attribute(QGeoPositionInfo::Direction)); - - if (update.hasAttribute(QGeoPositionInfo::GroundSpeed)) - p.insert("velocity", update.attribute(QGeoPositionInfo::GroundSpeed)); - - if (update.hasAttribute(QGeoPositionInfo::VerticalAccuracy)) - p.insert("altitudeAccuracy", update.attribute(QGeoPositionInfo::VerticalAccuracy)); - - p.insert("timestamp", update.timestamp().toMSecsSinceEpoch()); - - for (const QString &id: _id2sc.keys()) { - int scId = _id2sc[id]; - this->cb(scId, p); - if (_singleUpdate.contains(id)) { - _singleUpdate.remove(id); - _id2sc.remove(id); - _id2ec.remove(id); - } - } -} - -void Geolocation::updateTimeout() { - QVariantMap err; - err.insert("code", TIMEOUT); - err.insert("message", "timeout"); - - for (int ecId: _id2ec) { - this->cb(ecId, err); - } - - _id2ec.clear(); - _id2sc.clear(); - _singleUpdate.clear(); -} diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.h b/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.h deleted file mode 100644 index 7345bec9..00000000 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * - * Copyright 2013 Canonical Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * -*/ - -#ifndef GEOLOCATION_H_SVO2013 -#define GEOLOCATION_H_SVO2013 - -#include <QGeoPositionInfoSource> -#include <QGeoPositionInfo> -#include <QtCore> -#include <cassert> - -#include <cplugin.h> - -class Geolocation: public CPlugin { - Q_OBJECT -public: - explicit Geolocation(Cordova *cordova); - - virtual const QString fullName() override { - return Geolocation::fullID(); - } - - virtual const QString shortName() override { - return "Geolocation"; - } - - static const QString fullID() { - return "Geolocation"; - } - -public slots: - void getLocation(int scId, int ecId, bool enableHighAccuracy, qint64 maximumAge); - void addWatch(int scId, int ecId, const QString &id, bool enableHighAccuracy); - void clearWatch(int scId, int ecId, const QString &id); - -protected slots: - void positionUpdated(const QGeoPositionInfo &update); - void updateTimeout(); - -private: - QMap<QString, int> _id2sc; - QMap<QString, int> _id2ec; - QSet<QString> _singleUpdate; - QSharedPointer<QGeoPositionInfoSource> _geoPositionInfoSource; - - enum PositionError { - PERMISSION_DENIED = 1, - POSITION_UNAVAILABLE = 2, - TIMEOUT = 3 - }; -}; - -#endif diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/windows/GeolocationProxy.js b/StoneIsland/plugins/cordova-plugin-geolocation/src/windows/GeolocationProxy.js index 03ed4950..f792b912 100644 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/windows/GeolocationProxy.js +++ b/StoneIsland/plugins/cordova-plugin-geolocation/src/windows/GeolocationProxy.js @@ -16,14 +16,14 @@ /* global Windows, WinJS */ -var PositionError = require('./PositionError'); -var callbacks = {}; -var locs = {}; +var PositionError = require('./PositionError'); +var callbacks = {}; +var locs = {}; // constants var FALLBACK_EPSILON = 0.001; -function ensureAndCreateLocator() { +function ensureAndCreateLocator () { var deferral; var loc = new Windows.Devices.Geolocation.Geolocator(); @@ -46,30 +46,32 @@ function ensureAndCreateLocator() { return deferral; } -function createErrorCode(loc) { +function createErrorCode (loc) { + /* eslint-disable no-fallthrough */ switch (loc.locationStatus) { - case Windows.Devices.Geolocation.PositionStatus.initializing: - // This status indicates that a location device is still initializing - case Windows.Devices.Geolocation.PositionStatus.noData: - // No location data is currently available - case Windows.Devices.Geolocation.PositionStatus.notInitialized: - // This status indicates that the app has not yet requested - // location data by calling GetGeolocationAsync() or - // registering an event handler for the positionChanged event. - case Windows.Devices.Geolocation.PositionStatus.notAvailable: - // Location is not available on this version of Windows - return PositionError.POSITION_UNAVAILABLE; + case Windows.Devices.Geolocation.PositionStatus.initializing: + // This status indicates that a location device is still initializing + case Windows.Devices.Geolocation.PositionStatus.noData: + // No location data is currently available + case Windows.Devices.Geolocation.PositionStatus.notInitialized: + // This status indicates that the app has not yet requested + // location data by calling GetGeolocationAsync() or + // registering an event handler for the positionChanged event. + case Windows.Devices.Geolocation.PositionStatus.notAvailable: + // Location is not available on this version of Windows + return PositionError.POSITION_UNAVAILABLE; - case Windows.Devices.Geolocation.PositionStatus.disabled: - // The app doesn't have permission to access location, - // either because location has been turned off. - return PositionError.PERMISSION_DENIED; + case Windows.Devices.Geolocation.PositionStatus.disabled: + // The app doesn't have permission to access location, + // either because location has been turned off. + return PositionError.PERMISSION_DENIED; - default: - break; + default: + break; } } -function createResult(pos) { +/* eslint-enable no-fallthrough */ +function createResult (pos) { var res = { accuracy: pos.coordinate.accuracy, heading: pos.coordinate.heading, @@ -95,14 +97,14 @@ module.exports = { getLocation: function (success, fail, args, env) { ensureAndCreateLocator().done(function (loc) { if (loc) { - var highAccuracy = args[0], - maxAge = args[1]; + var highAccuracy = args[0]; + var maxAge = args[1]; loc.desiredAccuracy = highAccuracy ? Windows.Devices.Geolocation.PositionAccuracy.high : Windows.Devices.Geolocation.PositionAccuracy.default; - loc.reportInterval = maxAge ? maxAge : 0; + loc.reportInterval = maxAge || 0; loc.getGeopositionAsync().then( function (pos) { @@ -115,11 +117,10 @@ module.exports = { }); } ); - } - else { + } else { fail({ code: PositionError.POSITION_UNAVAILABLE, - message: "You do not have the required location services present on your system." + message: 'You do not have the required location services present on your system.' }); } }, fail); @@ -136,33 +137,33 @@ module.exports = { var onStatusChanged = function (e) { switch (e.status) { - case Windows.Devices.Geolocation.PositionStatus.noData: - case Windows.Devices.Geolocation.PositionStatus.notAvailable: - fail({ - code: PositionError.POSITION_UNAVAILABLE, - message: "Data from location services is currently unavailable or you do not have the required location services present on your system." - }); - break; + case Windows.Devices.Geolocation.PositionStatus.noData: + case Windows.Devices.Geolocation.PositionStatus.notAvailable: + fail({ + code: PositionError.POSITION_UNAVAILABLE, + message: 'Data from location services is currently unavailable or you do not have the required location services present on your system.' + }); + break; - case Windows.Devices.Geolocation.PositionStatus.disabled: - fail({ - code: PositionError.PERMISSION_DENIED, - message: "Your location is currently turned off." - }); - break; + case Windows.Devices.Geolocation.PositionStatus.disabled: + fail({ + code: PositionError.PERMISSION_DENIED, + message: 'Your location is currently turned off.' + }); + break; // case Windows.Devices.Geolocation.PositionStatus.initializing: // case Windows.Devices.Geolocation.PositionStatus.ready: - default: - break; + default: + break; } }; loc.desiredAccuracy = highAccuracy ? - Windows.Devices.Geolocation.PositionAccuracy.high : - Windows.Devices.Geolocation.PositionAccuracy.default; + Windows.Devices.Geolocation.PositionAccuracy.high : + Windows.Devices.Geolocation.PositionAccuracy.default; - if (cordova.platformId == 'windows') { + if (cordova.platformId === 'windows') { // eslint-disable-line no-undef // 'positionchanged' event fails with error below if movementThreshold is not set // JavaScript runtime error: Operation aborted // You must set the MovementThreshold property or the ReportInterval property before adding event handlers. @@ -174,8 +175,8 @@ module.exports = { } } - loc.addEventListener("positionchanged", onPositionChanged); - loc.addEventListener("statuschanged", onStatusChanged); + loc.addEventListener('positionchanged', onPositionChanged); + loc.addEventListener('statuschanged', onStatusChanged); callbacks[clientId] = { pos: onPositionChanged, status: onStatusChanged }; locs[clientId] = loc; @@ -185,11 +186,11 @@ module.exports = { clearWatch: function (success, fail, args, env) { var clientId = args[0]; var callback = callbacks[clientId]; - var loc = locs[clientId]; + var loc = locs[clientId]; if (callback && loc) { - loc.removeEventListener("positionchanged", callback.pos); - loc.removeEventListener("statuschanged", callback.status); + loc.removeEventListener('positionchanged', callback.pos); + loc.removeEventListener('statuschanged', callback.status); delete callbacks[clientId]; delete locs[clientId]; @@ -199,4 +200,4 @@ module.exports = { } }; -require("cordova/exec/proxy").add("Geolocation", module.exports); +require('cordova/exec/proxy').add('Geolocation', module.exports); diff --git a/StoneIsland/plugins/cordova-plugin-geolocation/src/wp/GeoLocation.cs b/StoneIsland/plugins/cordova-plugin-geolocation/src/wp/GeoLocation.cs deleted file mode 100644 index 42af72de..00000000 --- a/StoneIsland/plugins/cordova-plugin-geolocation/src/wp/GeoLocation.cs +++ /dev/null @@ -1,34 +0,0 @@ -/* - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -using System; -using System.Collections.Generic; -using System.Runtime.Serialization; -using System.Threading; -using System.Device.Location; - -namespace WPCordovaClassLib.Cordova.Commands -{ - /// <summary> - /// This is a command stub, the browser provides the correct implementation. We use this to trigger the static analyzer that we require this permission - /// </summary> - public class Geolocation - { - /* Unreachable code, by design -jm */ - private void triggerGeoInclusion() - { - new GeoCoordinateWatcher(); - } - } -} |
