/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* vim: set sw=2 ts=8 et ft=cpp : */ /* 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 http://mozilla.org/MPL/2.0/. */ include protocol PWindowsUtils; [RefCounted] using class nsIDOMGeoPosition from "nsGeoPositionIPCSerialiser.h"; namespace mozilla { namespace dom { // Proxies geolocation functions to a utility process so that we // can safely handle crashes in the ILocation API. Messages to the child // are proxies for the ILocation COM object. Messages to the parent // are proxied nsIGeolocationUpdate callbacks. protocol PWindowsLocation { manager PWindowsUtils; child: async Startup(); async RegisterForReport(); async UnregisterForReport(); async SetHighAccuracy(bool aEnable); async __delete__(); parent: // Update geolocation with new position information. async Update(nullable nsIDOMGeoPosition aPosition); // The geolocation API has reported an error. async Failed(uint16_t aError); }; } // namespace dom } // namespace mozilla