mirror of
https://github.com/servo/servo
synced 2026-04-26 01:25:32 +02:00
Support `errorCallback` in geolocation position request functions and throw the necessary errors. Testing: Passes 3 more WPT tests Fixes: Partially #38903 Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
48 lines
1.5 KiB
Plaintext
48 lines
1.5 KiB
Plaintext
/* 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 https://mozilla.org/MPL/2.0/. */
|
|
|
|
/*
|
|
* The origin of this IDL file is
|
|
* https://www.w3.org/TR/geolocation/#geolocation_interface
|
|
*/
|
|
|
|
partial interface Navigator {
|
|
[SameObject, Pref="dom_geolocation_enabled"] readonly attribute Geolocation geolocation;
|
|
};
|
|
|
|
// https://www.w3.org/TR/geolocation/#geolocation_interface
|
|
[Pref="dom_geolocation_enabled", Exposed=Window]
|
|
interface Geolocation {
|
|
[Throws] undefined getCurrentPosition (
|
|
PositionCallback successCallback,
|
|
// FIXME: PositionErrorCallback breaks codegen (#39616)
|
|
optional /* PositionErrorCallback? */any errorCallback = null,
|
|
optional PositionOptions options = {}
|
|
);
|
|
|
|
[Throws] long watchPosition (
|
|
PositionCallback successCallback,
|
|
// FIXME: PositionErrorCallback breaks codegen (#39616)
|
|
optional /* PositionErrorCallback? */any errorCallback = null,
|
|
optional PositionOptions options = {}
|
|
);
|
|
|
|
undefined clearWatch (long watchId);
|
|
};
|
|
|
|
callback PositionCallback = undefined (
|
|
GeolocationPosition position
|
|
);
|
|
|
|
callback PositionErrorCallback = undefined (
|
|
GeolocationPositionError positionError
|
|
);
|
|
|
|
// https://www.w3.org/TR/geolocation/#position_options_interface
|
|
dictionary PositionOptions {
|
|
boolean enableHighAccuracy = false;
|
|
[Clamp] unsigned long timeout = 0xFFFFFFFF;
|
|
[Clamp] unsigned long maximumAge = 0;
|
|
};
|