2015-02-05 01:00:00 +03:00
|
|
|
// 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/.
|
|
|
|
|
|
|
|
// This file defines a list of use counters, which are things that can
|
|
|
|
// record usage of Web platform features and then report this information
|
|
|
|
// through Telemetry.
|
|
|
|
//
|
|
|
|
// The format of this file is very strict. Each line can be:
|
|
|
|
//
|
|
|
|
// (a) a blank line
|
|
|
|
//
|
|
|
|
// (b) a comment, which is a line that begins with "//"
|
|
|
|
//
|
2017-08-08 17:01:27 +03:00
|
|
|
// (c) one of four possible use counter declarations:
|
2015-02-05 01:00:00 +03:00
|
|
|
//
|
|
|
|
// method <IDL interface name>.<IDL operation name>
|
|
|
|
// attribute <IDL interface name>.<IDL attribute name>
|
2017-08-08 17:01:27 +03:00
|
|
|
// custom <any valid identifier> <description>
|
2015-06-03 22:21:24 +03:00
|
|
|
//
|
2017-08-08 17:01:27 +03:00
|
|
|
// The <description> for custom counters will be appended to "When a document "
|
|
|
|
// or "When a page ", so phrase it appropriately. For instance, "constructs a
|
|
|
|
// Foo object" or "calls Document.bar('some value')". It may contain any
|
2017-08-17 20:45:41 +03:00
|
|
|
// character (including whitespace).
|
2017-08-08 17:01:27 +03:00
|
|
|
//
|
2015-02-05 01:00:00 +03:00
|
|
|
// To actually cause use counters to be incremented, DOM methods
|
|
|
|
// and attributes must have a [UseCounter] extended attribute in
|
2019-09-19 03:20:35 +03:00
|
|
|
// the Web IDL file.
|
|
|
|
// Custom counters are incremented when
|
2019-09-05 02:36:21 +03:00
|
|
|
// SetUseCounter(eUseCounter_custom_MyName) is called on a Document object.
|
2015-02-05 01:00:00 +03:00
|
|
|
//
|
|
|
|
// You might reasonably ask why we have this file and we require
|
|
|
|
// annotating things with [UseCounter] in the relevant WebIDL file as
|
|
|
|
// well. Generating things from bindings codegen and ensuring all the
|
2019-09-19 03:20:35 +03:00
|
|
|
// dependencies were correct would have been rather difficult.
|
2015-06-05 21:07:25 +03:00
|
|
|
|
|
|
|
method SVGSVGElement.getElementById
|
|
|
|
attribute SVGSVGElement.currentScale
|
2015-09-04 03:54:59 +03:00
|
|
|
|
|
|
|
// Push API
|
|
|
|
method PushManager.subscribe
|
|
|
|
method PushSubscription.unsubscribe
|
2015-09-23 13:05:37 +03:00
|
|
|
|
2018-01-05 02:53:59 +03:00
|
|
|
// window.sidebar
|
2015-09-23 13:05:37 +03:00
|
|
|
attribute Window.sidebar
|
2016-05-06 20:02:50 +03:00
|
|
|
|
|
|
|
// AppCache API
|
|
|
|
method OfflineResourceList.swapCache
|
|
|
|
method OfflineResourceList.update
|
|
|
|
attribute OfflineResourceList.status
|
2016-05-11 19:29:29 +03:00
|
|
|
attribute OfflineResourceList.onchecking
|
|
|
|
attribute OfflineResourceList.onerror
|
|
|
|
attribute OfflineResourceList.onnoupdate
|
|
|
|
attribute OfflineResourceList.ondownloading
|
|
|
|
attribute OfflineResourceList.onprogress
|
|
|
|
attribute OfflineResourceList.onupdateready
|
|
|
|
attribute OfflineResourceList.oncached
|
|
|
|
attribute OfflineResourceList.onobsolete
|
2017-02-08 19:43:59 +03:00
|
|
|
|
2017-02-08 03:57:00 +03:00
|
|
|
// Non-standard IndexedDB API
|
|
|
|
method IDBDatabase.createMutableFile
|
|
|
|
method IDBDatabase.mozCreateFileHandle
|
|
|
|
method IDBMutableFile.open
|
|
|
|
method IDBMutableFile.getFile
|
|
|
|
|
2017-02-08 19:43:59 +03:00
|
|
|
// DataTransfer API (gecko-only methods)
|
|
|
|
method DataTransfer.addElement
|
|
|
|
attribute DataTransfer.mozItemCount
|
|
|
|
attribute DataTransfer.mozCursor
|
|
|
|
method DataTransfer.mozTypesAt
|
|
|
|
method DataTransfer.mozClearDataAt
|
|
|
|
method DataTransfer.mozSetDataAt
|
|
|
|
method DataTransfer.mozGetDataAt
|
|
|
|
attribute DataTransfer.mozUserCancelled
|
|
|
|
attribute DataTransfer.mozSourceNode
|
2017-08-18 16:48:49 +03:00
|
|
|
|
2018-07-24 01:45:26 +03:00
|
|
|
// Marquee events
|
|
|
|
custom onstart sets a <marquee> onstart event listener
|
|
|
|
custom onbounce sets a <marquee> onbounce event listener
|
|
|
|
custom onfinish sets a <marquee> onfinish event listener
|
|
|
|
|
2017-08-18 16:48:49 +03:00
|
|
|
// JavaScript feature usage
|
|
|
|
custom JS_asmjs uses asm.js
|
|
|
|
custom JS_wasm uses WebAssembly
|
2018-02-24 03:11:16 +03:00
|
|
|
|
|
|
|
// Console API
|
|
|
|
method console.assert
|
|
|
|
method console.clear
|
|
|
|
method console.count
|
2018-05-22 12:34:41 +03:00
|
|
|
method console.countReset
|
2018-02-24 03:11:16 +03:00
|
|
|
method console.debug
|
|
|
|
method console.error
|
|
|
|
method console.info
|
|
|
|
method console.log
|
|
|
|
method console.table
|
|
|
|
method console.trace
|
|
|
|
method console.warn
|
|
|
|
method console.dir
|
|
|
|
method console.dirxml
|
|
|
|
method console.group
|
|
|
|
method console.groupCollapsed
|
|
|
|
method console.groupEnd
|
|
|
|
method console.time
|
2018-05-15 14:00:49 +03:00
|
|
|
method console.timeLog
|
2018-02-24 03:11:16 +03:00
|
|
|
method console.timeEnd
|
|
|
|
method console.exception
|
|
|
|
method console.timeStamp
|
|
|
|
method console.profile
|
|
|
|
method console.profileEnd
|
2018-07-04 00:48:53 +03:00
|
|
|
|
|
|
|
// document.open information
|
|
|
|
custom DocumentOpen calls document.open in a way that creates a new Window object
|
2018-08-09 07:30:39 +03:00
|
|
|
|
2019-07-24 04:22:39 +03:00
|
|
|
// HTMLDocument named getter
|
|
|
|
custom HTMLDocumentNamedGetterHit calls to the named getter on HTMLDocument that find something via the name lookup
|
|
|
|
|
2018-08-09 07:30:39 +03:00
|
|
|
custom FilteredCrossOriginIFrame cross-origin <iframe> within a CSS/SVG filter
|
2018-11-26 19:59:55 +03:00
|
|
|
|
|
|
|
// Custom Elements
|
|
|
|
method CustomElementRegistry.define
|
2018-11-28 18:11:38 +03:00
|
|
|
|
|
|
|
// Shadow DOM
|
|
|
|
method Element.attachShadow
|
2019-05-04 02:50:22 +03:00
|
|
|
|
|
|
|
// Media Device Access
|
|
|
|
method MediaDevices.enumerateDevices
|
|
|
|
custom EnumerateDevicesInsec calls MediaDevices.enumerateDevices from an insecure context
|
|
|
|
custom EnumerateDevicesUnfocused calls MediaDevices.enumerateDevices from a unfocused document
|
|
|
|
method MediaDevices.getUserMedia
|
|
|
|
method Navigator.mozGetUserMedia
|
|
|
|
custom GetUserMediaUnfocused calls MediaDevices.getUserMedia from an unfocused document
|
|
|
|
custom GetUserMediaInsec calls MediaDevices.getUserMedia from an insecure context
|
|
|
|
custom MozGetUserMediaInsec calls Navigator.mozGetUserMedia from an insecure context
|
|
|
|
custom GetUserMediaXOrigin calls MediaDevices.getUserMedia from a cross origin context
|
|
|
|
custom MozGetUserMediaXOrigin calls Navigator.mozGetUserMedia from a cross origin context
|
|
|
|
method MediaDevices.getDisplayMedia
|
|
|
|
custom GetDisplayMediaXOrigin calls MediaDevices.getDisplayMedia from a cross origin context
|
2019-10-11 19:56:36 +03:00
|
|
|
|
|
|
|
// Missing-property use counters. We claim these are "method" use
|
|
|
|
// counters, because we don't need a separate description string for
|
|
|
|
// them and we only need one use counter, not a getter/setter pair.
|
|
|
|
method HTMLDocument.adoptedStyleSheets
|
|
|
|
method HTMLDocument.caretRangeFromPoint
|
|
|
|
method HTMLDocument.clear
|
|
|
|
method HTMLDocument.exitPictureInPicture
|
|
|
|
method HTMLDocument.featurePolicy
|
|
|
|
method HTMLDocument.onbeforecopy
|
|
|
|
method HTMLDocument.onbeforecut
|
|
|
|
method HTMLDocument.onbeforepaste
|
|
|
|
method HTMLDocument.oncancel
|
|
|
|
method HTMLDocument.onfreeze
|
|
|
|
method HTMLDocument.onmousewheel
|
|
|
|
method HTMLDocument.onresume
|
|
|
|
method HTMLDocument.onsearch
|
|
|
|
method HTMLDocument.onsecuritypolicyviolation
|
|
|
|
method HTMLDocument.onwebkitfullscreenchange
|
|
|
|
method HTMLDocument.onwebkitfullscreenerror
|
|
|
|
method HTMLDocument.pictureInPictureElement
|
|
|
|
method HTMLDocument.pictureInPictureEnabled
|
|
|
|
method HTMLDocument.registerElement
|
|
|
|
method HTMLDocument.wasDiscarded
|
|
|
|
method HTMLDocument.webkitCancelFullScreen
|
|
|
|
method HTMLDocument.webkitCurrentFullScreenElement
|
|
|
|
method HTMLDocument.webkitExitFullscreen
|
|
|
|
method HTMLDocument.webkitFullscreenElement
|
|
|
|
method HTMLDocument.webkitFullscreenEnabled
|
|
|
|
method HTMLDocument.webkitHidden
|
|
|
|
method HTMLDocument.webkitIsFullScreen
|
|
|
|
method HTMLDocument.webkitVisibilityState
|
|
|
|
method HTMLDocument.xmlEncoding
|
|
|
|
method HTMLDocument.xmlStandalone
|
|
|
|
method HTMLDocument.xmlVersion
|
|
|
|
|