summaryrefslogtreecommitdiff
path: root/StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2020-08-31 23:07:20 +0200
committerJules Laplace <julescarbon@gmail.com>2020-08-31 23:07:20 +0200
commit22721a013bdd10d5eb395ba18453585f5f3f1f7f (patch)
tree5a920e31d6026ed5dc55265e5fd057febccc50e3 /StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu
parentd22d51a1ae49680015326857360eb699f31efced (diff)
rebuild the ios platform and the plugins
Diffstat (limited to 'StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu')
-rw-r--r--StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.cpp133
-rw-r--r--StoneIsland/plugins/cordova-plugin-geolocation/src/ubuntu/geolocation.h69
2 files changed, 0 insertions, 202 deletions
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