Given the evolution of WebIDL, the following changes would better match
NavigatorGeolocation
interface would be better expressed as a partial interface;PositionOptions
would be better written as a dictionary with default values matching the prose description of 5.2; the said prose can then be reducedProposed correction:
NavigatorGeolocation
should be rewritten as:
partial interface Navigator { readonly attribute Geolocation geolocation; };
The WebIDL declaration of PositionOptions should be changed to:
dictionary PositionOptions { boolean enableHighAccuracy = false; [Clamp] unsigned long timeout; [Clamp] unsigned long maximumAge = 0; };
In 5.1, the pre-processing steps of getCurrentPosition
and “watch process” are removed. In 5.2, the text describing the default values of enableHighAccuracy
, timeout
and maximumAge
(paragraphs 5, 7 and 10 in that section) are removed.
timeout
and maxAge
options in getCurrentPosition
and watchPosition
allude to infinite values, which are not compatible with the long
typeProposed correction:
getCurrentPosition
as follows: “If timeout is present, start a timer that will fire after the number of milliseconds denoted by the value of the timeout variable. When the timer fires, cancel any ongoing location acquisition operations associated with this instance of the steps, invoke the errorCallback (if present) with a new PositionError object whose code attribute is set to TIMEOUT, and exit this set of steps.”Infinity
in the specNavigator
interface” is redundant with WebIDL and can be removed;getCurrentPosition
and “watch process” algorithms are indicated as “should execute the following set of steps”; the steps in the algoritms are in fact mandatory.Proposed corrections:
getCurrentPosition
and “watch process” algorithmsThis document is a place-holder for errata to be published on the W3C Geolocation API dated of October 24 2013.