gecko-dev/devtools/shared/fronts/changes.js
Alexandre Poirot 9a08694477 Bug 1515862 - Set global and target scope front IDs from getFront helper. r=jdescottes
Ideally, formAttributeName would be a field on the prototype of each front,
but unfortunately, Firefox doesn't support ES Class's fields yet. So it is
put as an instance attribute instead.

This patch streamline the manually set actorID and the retrieval of actor ID
from root or target front's form into `getFront` helper method.
So that all the specific related to the lazy actor is now inside of this helper.
It also moves the special "this.manage(this)" to this helper.
We might be able to followup on this one and finally have only the root front
being self managed. But the initialize method makes it hard.

Note the special tweak made to devtools/client/responsive.html/manager.js
Hopefully this can be removed once the target classes are merged.

Depends on D15832

Differential Revision: https://phabricator.services.mozilla.com/D17615

--HG--
extra : moz-landing-system : lando
2019-01-28 18:42:50 +00:00

23 lines
743 B
JavaScript

/* 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/. */
"use strict";
const { FrontClassWithSpec, registerFront } = require("devtools/shared/protocol");
const {changesSpec} = require("devtools/shared/specs/changes");
/**
* ChangesFront, the front object for the ChangesActor
*/
class ChangesFront extends FrontClassWithSpec(changesSpec) {
constructor(client) {
super(client);
// Attribute name from which to retrieve the actorID out of the target actor's form
this.formAttributeName = "changesActor";
}
}
exports.ChangesFront = ChangesFront;
registerFront(ChangesFront);