Mario Andhika
08/25/2025, 8:08 AMVidmantas Kerbelis
08/25/2025, 8:23 AMnavigator exposed by kotlinx.browser, you should write up your own external, here's a snippet from my source, feel free to use that:
@JsName("navigator")
external val myNavigator: Navigator
external interface Navigator : JsAny {
val geolocation: Geolocation
}
external interface Geolocation : JsAny {
fun getCurrentPosition(
successCallback: (position: Position) -> Unit,
errorCallback: ((PositionError) -> Unit)? = definedExternally,
options: PositionOptions? = definedExternally
)
}
external interface Position : JsAny {
val coords: Coordinates
val timestamp: Double
}
external interface Coordinates : JsAny {
val latitude: Double
val longitude: Double
val accuracy: Double
val altitude: Double?
val altitudeAccuracy: Double?
val heading: Double?
val speed: Double?
}
external interface PositionError : JsAny {
val code: Short
val message: String
}
external interface PositionOptions : JsAny {
var enableHighAccuracy: Boolean?
var timeout: Int?
var maximumAge: Int?
}Mario Andhika
08/25/2025, 8:29 AMMichael Paus
08/25/2025, 11:07 AMturansky
08/25/2025, 4:04 PMkotlin-browser 😉turansky
08/25/2025, 4:08 PM