forked from mirrors/gecko-dev
Add a Geoclue (version 2) geolocation provider. This way Firefox can make use of multiple location sources present in the system, from GNSS provided by a cellular modem or the current network to location based on visible WiFi networks and 3G tower data, all while sharing them with other applications. This is a pure D-Bus-based implementation using a proper state machine, it does not require any additional dependencies. Differential Revision: https://phabricator.services.mozilla.com/D145838
32 lines
718 B
C++
32 lines
718 B
C++
/*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
#ifndef GeoclueLocationProvider_h
|
|
#define GeoclueLocationProvider_h
|
|
|
|
#include "mozilla/RefPtr.h"
|
|
#include "nsIGeolocationProvider.h"
|
|
|
|
namespace mozilla::dom {
|
|
|
|
class GCLocProviderPriv;
|
|
|
|
class GeoclueLocationProvider final : public nsIGeolocationProvider {
|
|
public:
|
|
NS_DECL_ISUPPORTS
|
|
NS_DECL_NSIGEOLOCATIONPROVIDER
|
|
|
|
GeoclueLocationProvider();
|
|
|
|
private:
|
|
~GeoclueLocationProvider() = default;
|
|
|
|
RefPtr<GCLocProviderPriv> mPriv;
|
|
};
|
|
|
|
} // namespace mozilla::dom
|
|
|
|
#endif /* GeoclueLocationProvider_h */
|