| // Copyright 2014 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module device.mojom; |
| |
| import "services/device/public/mojom/geoposition.mojom"; |
| |
| // Geolocation provides updates on the device's location. By default, it |
| // provides updates with low accuracy, but |SetHighAccuracy()| may be called |
| // to change this. |
| interface Geolocation { |
| // Select between high and low accuracy, if supported by the implementation. |
| // Ignored if unsupported. |
| SetHighAccuracy(bool high_accuracy); |
| |
| // Use this method to get notified of future position updates, by calling |
| // QueryNextPosition once, and then calling it again when/if it returns. |
| // |
| // When first called: |
| // Returns the latest known Geoposition. |
| // When subsequently called: |
| // Issues a request for a single position update, which the implementation |
| // may fulfill at its discretion (e.g. when the next geoposition change is |
| // detected). |
| // |
| // Overlapping calls to this method are prohibited and will be treated as a |
| // connection error. Position updates may be throttled by the service. |
| QueryNextPosition() => (GeopositionResult result); |
| }; |