tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

UseCountersWorker.conf (3841B)


      1 // This Source Code Form is subject to the terms of the Mozilla Public
      2 // License, v. 2.0. If a copy of the MPL was not distributed with this
      3 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
      4 
      5 // This file defines a list of use counters, which are things that can
      6 // record usage of Web platform features and then report this information
      7 // through Telemetry.
      8 //
      9 // The format of this file is very strict.  Each line can be:
     10 //
     11 //   (a) a blank line
     12 //
     13 //   (b) a comment, which is a line that begins with "//"
     14 //
     15 //   (c) one of four possible use counter declarations:
     16 //
     17 //         method <IDL interface name>.<IDL operation name>
     18 //         attribute <IDL interface name>.<IDL attribute name>
     19 //         custom <any valid identifier> <description>
     20 //
     21 // The <description> for custom counters will be appended to "Whether a
     22 // dedicated worker " or "Whether a shared worker" or "Whether a service worker
     23 //  ", so phrase it appropriately.  For instance, "constructs a
     24 // Foo object" or "calls Bar.baz('some value')". It may contain any character
     25 // (including whitespace).
     26 //
     27 // To actually cause use counters to be incremented, DOM methods
     28 // and attributes must have a [UseCounter] extended attribute and be exposed to
     29 // workers in the Web IDL file.
     30 // Custom counters are incremented when
     31 // SetUseCounter(UseCounterWoker::Custom_MyName) is called on a WorkerPrivate
     32 // object.
     33 //
     34 // You might reasonably ask why we have this file and we require
     35 // annotating things with [UseCounter] in the relevant WebIDL file as
     36 // well.  Generating things from bindings codegen and ensuring all the
     37 // dependencies were correct would have been rather difficult.
     38 
     39 // Push API
     40 method PushManager.subscribe
     41 method PushSubscription.unsubscribe
     42 
     43 // Console API
     44 method console.assert
     45 method console.clear
     46 method console.count
     47 method console.countReset
     48 method console.debug
     49 method console.error
     50 method console.info
     51 method console.log
     52 method console.table
     53 method console.trace
     54 method console.warn
     55 method console.dir
     56 method console.dirxml
     57 method console.group
     58 method console.groupCollapsed
     59 method console.groupEnd
     60 method console.time
     61 method console.timeLog
     62 method console.timeEnd
     63 method console.exception
     64 method console.timeStamp
     65 method console.profile
     66 method console.profileEnd
     67 
     68 // CookieStore API
     69 method CookieStore.get
     70 method CookieStore.getAll
     71 method CookieStore.set
     72 method CookieStore.delete
     73 
     74 // Non-standard Messaging Layer Security
     75 method MLS.stateDelete
     76 method MLS.stateDeleteGroup
     77 method MLS.generateSignatureKeypair
     78 method MLS.generateCredentialBasic
     79 method MLS.generateKeyPackage
     80 method MLS.groupCreate
     81 method MLS.groupJoin
     82 method MLS.groupAdd
     83 method MLS.groupProposeAdd
     84 method MLS.groupRemove
     85 method MLS.groupProposeRemove
     86 method MLS.groupClose
     87 method MLS.groupMembers
     88 method MLS.receive
     89 method MLS.send
     90 method MLS.deriveExporter
     91 
     92 // Unsupported web APIs in Private Browsing Mode
     93 custom PrivateBrowsingIDBFactoryOpen calls indexedDB.open in Private Browsing Mode
     94 custom PrivateBrowsingIDBFactoryDeleteDatabase calls indexedDB.deleteDatabase in Private Browsing Mode
     95 custom PrivateBrowsingCachesMatch calls caches.match in Private Browsing Mode
     96 custom PrivateBrowsingCachesHas calls caches.has in Private Browsing Mode
     97 custom PrivateBrowsingCachesOpen calls caches.open in Private Browsing Mode
     98 custom PrivateBrowsingCachesDelete calls caches.delete in Private Browsing Mode
     99 custom PrivateBrowsingCachesKeys calls caches.keys in Private Browsing Mode
    100 
    101 method Scheduler.postTask
    102 
    103 // WebGPU
    104 custom WebgpuRequestAdapter requests a WebGPU adapter
    105 
    106 method NotificationOptions.navigate
    107 method NotificationOptions.image
    108 method NotificationOptions.badge
    109 method NotificationOptions.vibrate
    110 method NotificationOptions.timestamp
    111 method NotificationOptions.renotify
    112 method NotificationOptions.requireInteraction
    113 method NotificationOptions.actions