diff options
Diffstat (limited to 'devtools/shared/fronts/highlighters.js')
-rw-r--r-- | devtools/shared/fronts/highlighters.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/devtools/shared/fronts/highlighters.js b/devtools/shared/fronts/highlighters.js new file mode 100644 index 000000000..ca39ed526 --- /dev/null +++ b/devtools/shared/fronts/highlighters.js @@ -0,0 +1,34 @@ +/* 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, custom } = require("devtools/shared/protocol"); +const { + customHighlighterSpec, + highlighterSpec +} = require("devtools/shared/specs/highlighters"); + +const HighlighterFront = FrontClassWithSpec(highlighterSpec, { + // Update the object given a form representation off the wire. + form: function (json) { + this.actorID = json.actor; + // FF42+ HighlighterActors starts exposing custom form, with traits object + this.traits = json.traits || {}; + }, + + pick: custom(function (doFocus) { + if (doFocus && this.pickAndFocus) { + return this.pickAndFocus(); + } + return this._pick(); + }, { + impl: "_pick" + }) +}); + +exports.HighlighterFront = HighlighterFront; + +const CustomHighlighterFront = FrontClassWithSpec(customHighlighterSpec, {}); + +exports.CustomHighlighterFront = CustomHighlighterFront; |