To make $0 autocompletion work, we need to pass the current
selectedNode actor from the frontend, so we can retrieve the
object reference later.
For $_, we need the webconsole actor reference to be able
to retrieve the last input result.
Since the list of parameters of JsPropertyProviders was
getting a bit long, we transform them in an object so it's
more legible on the consumer side.
Mochitests are added for both helpers to ensure this work
as expected.
Differential Revision: https://phabricator.services.mozilla.com/D11866
--HG--
extra : moz-landing-system : lando
This patch remove the usage of `Services.appShell.createWindowlessBrowser` from the
webextension target actor (that runs in a child process when the extension is in oop-mode).
As a fallback window (needed when an extension doesn't have an extension page yet, e.g. while
the extension is being reloaded, or when the extension doesn't have a background page), the actor
is going to search for the window related to the XUL browser element created to connect into
the extension process.
If the extension runs in the child process (e.g. as it currently happens on all platforms supported
by Firefox Desktop), the TabParent/TabChild's tabId is used to identify the fallback window.
On the contrary, when the extension runs in the parent process (e.g. as it currently happens on
Firefox for Android), the XUL browser's ownerGlobal innerWindowID is used to identify the
fallback window.
Differential Revision: https://phabricator.services.mozilla.com/D8573
--HG--
extra : moz-landing-system : lando
This was only used by test and isn't much useful.
MozReview-Commit-ID: DeIimVmMOOs
Depends on D11623
Differential Revision: https://phabricator.services.mozilla.com/D11624
--HG--
extra : moz-landing-system : lando
This patch removes the dom.webcomponents.shadowdom.enabled pref and all its
references, including the following functions:
* nsContentUtils::IsShadowDOMEnabled()
* nsIDocument::IsShadowDOMEnabled()
* nsDocument::IsShadowDOMEnabled(JSContext* aCx, JSObject* aGlobal)
* nsDocument::IsShadowDOMEnabled(const nsINode* aNode)
* nsTextNode::IsShadowDOMEnabled(JSContext* aCx, JSObject* aObject)
This function is renamed and updated to nsDocument::IsCallerChromeOrAddon():
* nsDocument::IsShadowDOMEnabledAndCallerIsChromeOrAddon(JSContext* aCx, JSObject* aObject)
I didn't change the tests that load Shadow DOM tests in an iframe, in the interest of keeping hg annotation history.
Differential Revision: https://phabricator.services.mozilla.com/D11183
--HG--
extra : moz-landing-system : lando
This patch removes the dom.webcomponents.shadowdom.enabled pref and all its
references, including the following functions:
* nsContentUtils::IsShadowDOMEnabled()
* nsIDocument::IsShadowDOMEnabled()
* nsDocument::IsShadowDOMEnabled(JSContext* aCx, JSObject* aGlobal)
* nsDocument::IsShadowDOMEnabled(const nsINode* aNode)
* nsTextNode::IsShadowDOMEnabled(JSContext* aCx, JSObject* aObject)
This function is renamed and updated to nsDocument::IsCallerChromeOrAddon():
* nsDocument::IsShadowDOMEnabledAndCallerIsChromeOrAddon(JSContext* aCx, JSObject* aObject)
I didn't change the tests that load Shadow DOM tests in an iframe, in the interest of keeping hg annotation history.
Differential Revision: https://phabricator.services.mozilla.com/D11183
--HG--
extra : moz-landing-system : lando
This was only used by test and isn't much useful.
MozReview-Commit-ID: DeIimVmMOOs
Depends on D11623
Differential Revision: https://phabricator.services.mozilla.com/D11624
--HG--
extra : moz-landing-system : lando
Depends on D11209
We need to take care when deleting a declaration. This means shifting the indexes of declarations which follow it in the CSS rule. To do this, we iterate over all tracked added/removed declarations and make sure to decrement their index if it is larger than the index of the deleted one.
The Rule view and specialized editors do not support inserting declarations at any other position other than at the end of the existing declarations list. For now, it is safe to assume all newly added declarations will not shift any tracked indexes. But we will need to handle this for other use cases, like the Style Editor or manual editing of element style attributes.
MozReview-Commit-ID: InrNbsNsqz6
Differential Revision: https://phabricator.services.mozilla.com/D11318
--HG--
extra : moz-landing-system : lando
Changes the format of the change metadata for add/remove declarations from an object with key/value pairs to an array with objects that contain the declaration's property name, value and index within its parent rule.
Differential Revision: https://phabricator.services.mozilla.com/D11208
--HG--
extra : moz-landing-system : lando
In XPCShell tests, this `console` variable ends up being null and it later triggers an assertion
that makes the test crash in debug builds. We should always pass a defined object to this constructor.
MozReview-Commit-ID: F7QRXD15lH9
Depends on D11154
Differential Revision: https://phabricator.services.mozilla.com/D11445
--HG--
extra : moz-landing-system : lando
Depends on D10586
Adds a new `type` param to the `change` object passed from server to the client to describe the change type. For changes to rules, the client marks the whole rule as either added or removed and styles it accordingly in the Changes panel.
Change types for declarations are not used at this time, but are put in for consistency and future-proofing.
Differential Revision: https://phabricator.services.mozilla.com/D11116
--HG--
extra : moz-landing-system : lando
Depends on D10585
Renames the logChange() to logDeclarationChange() to distinguish it from the newly introduced logSelectorChange() method which tracks selector rename by logging two changes: a whole rule remove using the old selector and a whole rule insertion add using the new selector.
MozReview-Commit-ID: 9VoVMHYXumE
Differential Revision: https://phabricator.services.mozilla.com/D10586
--HG--
extra : moz-landing-system : lando