mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 991757 - add BrowserUITelemetry documentation, r=bsmedberg,jaws, DONTBUILD because docs-only
--HG-- extra : rebase_source : 19f0f6dadc53e769647a0a1103e6567048ca211b
This commit is contained in:
parent
269a4a1e3f
commit
6baae66011
107
browser/docs/UITelemetry.rst
Normal file
107
browser/docs/UITelemetry.rst
Normal file
@ -0,0 +1,107 @@
|
||||
=======================
|
||||
UITelemetry data format
|
||||
=======================
|
||||
|
||||
UI Telemetry sends its data as a JSON blob. This document describes the different parts
|
||||
of the JSON blob.
|
||||
|
||||
``toolbars``
|
||||
------------
|
||||
|
||||
This tracks the state of the user's UI customizations. It has the following properties:
|
||||
|
||||
- ``sizemode`` - string indicating whether the window is in maximized, normal (restored) or
|
||||
fullscreen mode;
|
||||
- ``bookmarksBarEnabled`` - boolean indicating whether the bookmarks bar is visible;
|
||||
- ``menuBarEnabled`` - boolean indicating whether the menu bar is visible (always false on OS X);
|
||||
- ``titleBarEnabled`` - boolean indicating whether the (real) titlebar is visible (rather than
|
||||
having tabs in the titlebar);
|
||||
- ``defaultKept`` - list of strings identifying toolbar buttons and items that are still in their
|
||||
default position. Only the IDs of builtin widgets are sent (ie not add-on widgets);
|
||||
- ``defaultMoved`` - list of strings identifying toolbar buttons and items that are no longer in
|
||||
their default position, but have not been removed to the palette. Only the IDs of builtin widgets
|
||||
are sent (ie not add-on widgets);
|
||||
- ``nondefaultAdded`` - list of strings identifying toolbar buttons and items that have been added
|
||||
from the palette. Only the IDs of builtin widgets are sent (ie not add-on widgets);
|
||||
- ``defaultRemoved`` - list of strings identifying toolbar buttons and items that are in the
|
||||
palette that are elsewhere by default. Only the IDs of builtin widgets are sent
|
||||
(ie not add-on widgets);
|
||||
- ``addonToolbars`` - the number of non-default toolbars that are customizable. 1 by default
|
||||
because it counts the add-on bar shim;
|
||||
- ``visibleTabs`` - array of the number of visible tabs per window;
|
||||
- ``hiddenTabs`` - array of the number of hidden tabs per window (ie tabs in panorama groups which
|
||||
are not the current group);
|
||||
- ``countableEvents`` - please refer to the next section.
|
||||
- ``durations`` - an object mapping descriptions to duration records, which records the amount of
|
||||
time a user spent doing something. Currently only has one property:
|
||||
- ``customization`` - how long a user spent customizing the browser. This is an array of
|
||||
objects, where each object has a ``duration`` property indicating the time in milliseconds,
|
||||
and a ``bucket`` property indicating a bucket in which the duration info falls.
|
||||
|
||||
``countableEvents``
|
||||
-------------------
|
||||
|
||||
Countable events are stored under the ``toolbars`` section. They count the number of times certain
|
||||
events happen. No timing or other correlating information is stored - purely the number of times
|
||||
things happen.
|
||||
|
||||
``countableEvents`` is an object with properties representing buckets. In each bucket, there is an
|
||||
object with the following properties:
|
||||
|
||||
- ``click-builtin-item`` is an object tracking clicks on builtin customizable toolbar items, keyed
|
||||
off the item IDs, with an object for each item with keys ``left``, ``middle`` and ``right`` each
|
||||
storing a number indicating how often the respective type of click has happened.
|
||||
- ``click-menu-button`` is the same, except the item ID is always 'button'.
|
||||
- ``click-bookmarks-bar`` is the same, with the item IDs being replaced by either ``container`` for
|
||||
clicks on bookmark or livemark folders, and ``item`` for individual bookmarks.
|
||||
- ``click-menubar`` is similar, with the item IDs being replaced by one of ``menu``, ``menuitem``
|
||||
or ``other``, depending on the kind of item clicked. Note that this is not tracked on OS X, where
|
||||
we can't listen for these events because of the global menubar.
|
||||
- ``click-bookmarks-menu-button`` is also similar, with the item IDs being replaced by:
|
||||
- ``menu`` for clicks on the 'menu' part of the item;
|
||||
- ``add`` for clicks that add a bookmark;
|
||||
- ``edit`` for clicks that open the panel to edit an existing bookmark;
|
||||
- ``in-panel`` for clicks when the button is in the menu panel, and clicking it does none of the
|
||||
above;
|
||||
- ``customize`` tracks different types of customization events without the ``left``, ``middle`` and
|
||||
``right`` distinctions. The different events are the following, with each storing a count of the
|
||||
number of times they occurred:
|
||||
- ``start`` counts the number of times the user starts customizing;
|
||||
- ``add`` counts the number of times an item is added somewhere from the palette;
|
||||
- ``move`` counts the number of times an item is moved somewhere else (but not to the palette);
|
||||
- ``remove`` counts the number of times an item is removed to the palette;
|
||||
- ``reset`` counts the number of times the 'restore defaults' button is used;
|
||||
|
||||
|
||||
``UITour``
|
||||
----------
|
||||
The UI Tour has its own section in the UI Telemetry output, outside of the ``toolbars`` section.
|
||||
It has a single property ``seenPageIDs`` which tracks which UI Tour pages have been run.
|
||||
|
||||
``contextmenu``
|
||||
---------------
|
||||
We track context menu interactions to figure out which ones are most often used and/or how
|
||||
effective they are. In the ``contextmenu`` object, we first store things per-bucket. Next, we
|
||||
divide the following different context menu situations:
|
||||
|
||||
- ``selection`` if there is content on the page that's selected on which the user clicks;
|
||||
- ``link`` if the user opened the context menu for a link
|
||||
- ``image-link`` if the user opened the context menu on an image or canvas that's a link;
|
||||
- ``image`` if the user opened the context menu on an image (that isn't a link);
|
||||
- ``canvas`` if the user opened the context menu on a canvas (that isn't a link);
|
||||
- ``media`` if the user opened the context menu on an HTML video or audio element;
|
||||
- ``input`` if the user opened the context menu on a text input element;
|
||||
- ``social`` if the user opened the context menu inside a social frame;
|
||||
- ``other`` for all other openings of the content menu;
|
||||
|
||||
Each of these objects (if they exist) then gets a "withcustom" and/or a "withoutcustom" property
|
||||
for context menus opened with custom page-created items and without them, and each of those
|
||||
properties holds an object with IDs corresponding to a count of how often an item with that ID was
|
||||
activated in the context menu. Only builtin context menu items are tracked, and besides those items
|
||||
there are four special items which get counts:
|
||||
|
||||
- ``close-without-interaction`` is incremented when the user closes the context menu without interacting with it;
|
||||
- ``custom-page-item`` is incremented when the user clicks an item that was created by the page;
|
||||
- ``unknown`` is incremented when an item without an ID was clicked;
|
||||
- ``other-item`` is incremented when an add-on-provided menuitem is clicked.
|
||||
|
9
browser/docs/index.rst
Normal file
9
browser/docs/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
=======
|
||||
Firefox
|
||||
=======
|
||||
|
||||
This is the nascent documentation of the Firefox front-end code.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
@ -6,6 +6,8 @@
|
||||
|
||||
CONFIGURE_SUBST_FILES += ['installer/Makefile']
|
||||
|
||||
SPHINX_TREES['browser'] = 'docs'
|
||||
|
||||
DIRS += [
|
||||
'base',
|
||||
'components',
|
||||
|
Loading…
Reference in New Issue
Block a user