Source code

Revision control

Copy as Markdown

Other Tools

/* 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 nodeConstants = require("resource://devtools/shared/dom-node-constants.js");
const TextEditor = require("resource://devtools/client/inspector/markup/views/text-editor.js");
const MarkupContainer = require("resource://devtools/client/inspector/markup/views/markup-container.js");
/**
* An implementation of MarkupContainer for text node and comment nodes.
* Allows basic text editing in a textarea.
*/
class MarkupTextContainer extends MarkupContainer {
/**
* @param {MarkupView} markupView
* The markup view that owns this container.
* @param {NodeFront} node
* The node to display.
*/
constructor(markupView, node) {
super();
this.initialize(markupView, node, "textcontainer");
if (node.nodeType == nodeConstants.TEXT_NODE) {
this.editor = new TextEditor(this, node, "text");
} else if (node.nodeType == nodeConstants.COMMENT_NODE) {
this.editor = new TextEditor(this, node, "comment");
} else {
throw new Error("Invalid node for MarkupTextContainer");
}
this.tagLine.appendChild(this.editor.elt);
}
}
module.exports = MarkupTextContainer;