diff options
author | Moonchild <moonchild@palemoon.org> | 2020-06-11 08:22:04 +0000 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-06-13 11:51:53 +0200 |
commit | 3f3d626434b2533182ca0ee90adc92a1e7db373c (patch) | |
tree | 14499eda8658719c7bd3940ed2ac30f8e4e10ad7 /dom/webidl | |
parent | a04d67dd12d4999b28e74744150770482a3c5a3d (diff) | |
download | UXP-3f3d626434b2533182ca0ee90adc92a1e7db373c.tar UXP-3f3d626434b2533182ca0ee90adc92a1e7db373c.tar.gz UXP-3f3d626434b2533182ca0ee90adc92a1e7db373c.tar.lz UXP-3f3d626434b2533182ca0ee90adc92a1e7db373c.tar.xz UXP-3f3d626434b2533182ca0ee90adc92a1e7db373c.zip |
Issue #1587 - Part 4: Implement FetchObserver
Diffstat (limited to 'dom/webidl')
-rw-r--r-- | dom/webidl/FetchObserver.webidl | 27 | ||||
-rw-r--r-- | dom/webidl/Request.webidl | 3 | ||||
-rw-r--r-- | dom/webidl/moz.build | 1 |
3 files changed, 31 insertions, 0 deletions
diff --git a/dom/webidl/FetchObserver.webidl b/dom/webidl/FetchObserver.webidl new file mode 100644 index 000000000..eecd67e66 --- /dev/null +++ b/dom/webidl/FetchObserver.webidl @@ -0,0 +1,27 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* 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/. + */ + +callback interface ObserverCallback { + void handleEvent(FetchObserver observer); +}; + +enum FetchState { + // Pending states + "requesting", "responding", + // Final states + "aborted", "errored", "complete" +}; + +[Exposed=(Window,Worker), + Func="FetchObserver::IsEnabled"] +interface FetchObserver : EventTarget { + readonly attribute FetchState state; + + // Events + attribute EventHandler onstatechange; + attribute EventHandler onrequestprogress; + attribute EventHandler onresponseprogress; +}; diff --git a/dom/webidl/Request.webidl b/dom/webidl/Request.webidl index 00497456a..8c6e33da3 100644 --- a/dom/webidl/Request.webidl +++ b/dom/webidl/Request.webidl @@ -50,6 +50,9 @@ dictionary RequestInit { [Func="FetchController::IsEnabled"] FetchSignal signal; + + [Func="FetchObserver::IsEnabled"] + ObserverCallback observe; }; // Gecko currently does not ship RequestContext, so please don't use it in IDL diff --git a/dom/webidl/moz.build b/dom/webidl/moz.build index 0843bac59..0963e3d01 100644 --- a/dom/webidl/moz.build +++ b/dom/webidl/moz.build @@ -143,6 +143,7 @@ WEBIDL_FILES = [ 'Fetch.webidl', 'FetchController.webidl', 'FetchEvent.webidl', + 'FetchObserver.webidl', 'FetchSignal.webidl', 'File.webidl', 'FileList.webidl', |