fake_location_provider.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. // Copyright (c) 2018 GitHub, Inc.
  2. // Use of this source code is governed by the MIT license that can be
  3. // found in the LICENSE file.
  4. #ifndef ATOM_BROWSER_FAKE_LOCATION_PROVIDER_H_
  5. #define ATOM_BROWSER_FAKE_LOCATION_PROVIDER_H_
  6. #include "base/macros.h"
  7. #include "services/device/public/cpp/geolocation/location_provider.h"
  8. #include "services/device/public/mojom/geoposition.mojom.h"
  9. namespace atom {
  10. class FakeLocationProvider : public device::LocationProvider {
  11. public:
  12. FakeLocationProvider();
  13. ~FakeLocationProvider() override;
  14. // LocationProvider Implementation:
  15. void SetUpdateCallback(
  16. const LocationProviderUpdateCallback& callback) override;
  17. void StartProvider(bool high_accuracy) override;
  18. void StopProvider() override;
  19. const device::mojom::Geoposition& GetPosition() override;
  20. void OnPermissionGranted() override;
  21. private:
  22. device::mojom::Geoposition position_;
  23. LocationProviderUpdateCallback callback_;
  24. DISALLOW_COPY_AND_ASSIGN(FakeLocationProvider);
  25. };
  26. } // namespace atom
  27. #endif // ATOM_BROWSER_FAKE_LOCATION_PROVIDER_H_