constants.js |
Any event listener flagged with this symbol will not be considered when
the EventCollector class enumerates listeners for nodes. For example:
const someListener = () => {};
someListener[EXCLUDED_LISTENER] = true;
node.addEventListener("event", someListener);
|
631 |
css-logic.js |
About the objects defined in this file:
- CssLogic contains style information about a view context. It provides
access to 2 sets of objects: Css[Sheet|Rule|Selector] provide access to
information that does not change when the selected element changes while
Css[Property|Selector]Info provide information that is dependent on the
selected element.
Its key methods are highlight(), getPropertyInfo() and forEachSheet(), etc
- CssSheet provides a more useful API to a DOM CSSSheet for our purposes,
including shortSource and href.
- CssRule a more useful API to a DOM CSSRule including access to the group
of CssSelectors that the rule provides properties for
- CssSelector A single selector - i.e. not a selector group. In other words
a CssSelector does not contain ','. This terminology is different from the
standard DOM API, but more inline with the definition in the spec.
- CssPropertyInfo contains style information for a single property for the
highlighted element.
- CssSelectorInfo is a wrapper around CssSelector, which adds sorting with
reference to the selected element.
|
48212 |
custom-element-watcher.js |
The CustomElementWatcher can be used to be notified if a custom element definition
is created for a node.
When a custom element is defined for a monitored name, an "element-defined" event is
fired with the following Object argument:
- {String} name: name of the custom element defined
- {Set} Set of impacted node actors
|
4212 |
document-walker.js |
Wrapper for inDeepTreeWalker. Adds filtering to the traversal methods.
See inDeepTreeWalker for more information about the methods.
@param {DOMNode} node
@param {Window} rootWin
@param {Object}
- {Function} filter
A custom filter function Taking in a DOMNode and returning an Int. See
WalkerActor.nodeFilter for an example.
- {String} skipTo
Either SKIP_TO_PARENT or SKIP_TO_SIBLING. If the provided node is not
compatible with the filter function for this walker, try to find a compatible
one either in the parents or in the siblings of the node.
- {Boolean} showAnonymousContent
Pass true to let the walker return and traverse anonymous content.
When navigating host elements to which shadow DOM is attached, the light tree
will be visible only to a walker with showAnonymousContent=false. The shadow
tree will only be visible to a walker with showAnonymousContent=true.
|
5574 |
event-collector.js |
The base class that all the enent collectors should be based upon.
|
30149 |
inspector.js |
Here's the server side of the remote inspector.
The WalkerActor is the client's view of the debuggee's DOM. It's gives
the client a tree of NodeActor objects.
The walker presents the DOM tree mostly unmodified from the source DOM
tree, but with a few key differences:
- Empty text nodes are ignored. This is pretty typical of developer
tools, but maybe we should reconsider that on the server side.
- iframes with documents loaded have the loaded document as the child,
the walker provides one big tree for the whole document tree.
There are a few ways to get references to NodeActors:
- When you first get a WalkerActor reference, it comes with a free
reference to the root document's node.
- Given a node, you can ask for children, siblings, and parents.
- You can issue querySelector and querySelectorAll requests to find
other elements.
- Requests that return arbitrary nodes from the tree (like querySelector
and querySelectorAll) will also return any nodes the client hasn't
seen in order to have a complete set of parents.
Once you have a NodeFront, you should be able to answer a few questions
without further round trips, like the node's name, namespace/tagName,
attributes, etc. Other questions (like a text node's full nodeValue)
might require another round trip.
The protocol guarantees that the client will always know the parent of
any node that is returned by the server. This means that some requests
(like querySelector) will include the extra nodes needed to satisfy this
requirement. The client keeps track of this parent relationship, so the
node fronts form a tree that is a subset of the actual DOM tree.
We maintain this guarantee to support the ability to release subtrees on
the client - when a node is disconnected from the DOM tree we want to be
able to free the client objects for all the children nodes.
So to be able to answer "all the children of a given node that we have
seen on the client side", we guarantee that every time we've seen a node,
we connect it up through its parents.
|
11913 |
moz.build |
|
588 |
node-picker.js |
Find the element from the passed mouse event. If shift isn't pressed (or shiftKey is false)
this will ignore all elements who can't consume pointer events (e.g. with inert attribute
or `pointer-events: none` style).
@param {MouseEvent} event
@param {Boolean} shiftKey: If passed, will override event.shiftKey
@returns {Object} An object compatible with the disconnectedNode type.
|
16905 |
node.js |
Server side of the node actor.
|
26916 |
utils.js |
Returns the properly cased version of the node's tag name, which can be
used when displaying said name in the UI.
@param {Node} rawNode
Node for which we want the display name
@return {String}
Properly cased version of the node tag name
|
17112 |
walker.js |
We only send nodeValue up to a certain size by default. This stuff
controls that size.
|
84449 |