function AutomationRichEditableText(node) {
  AutomationEditableText.call(this, node);

  var root = this.node_.root;
  if (!root || !root.anchorObject || !root.focusObject ||
      root.anchorOffset === undefined || root.focusOffset === undefined)
    return;

  this.anchorLine_ = new editing.EditableLine(
      root.anchorObject, root.anchorOffset, root.anchorObject,
      root.anchorOffset);
  this.focusLine_ = new editing.EditableLine(
      root.focusObject, root.focusOffset, root.focusObject, root.focusOffset);

  this.line_ = new editing.EditableLine(
      root.anchorObject, root.anchorOffset, root.focusObject, root.focusOffset);

  this.updateIntraLineState_(this.line_);
}
/**
 * A |ChromeVoxEditableTextBase| that implements text editing feedback
 * for automation tree text fields using anchor and focus selection.
 * @constructor
 * @param {!AutomationNode} node
 * @extends {AutomationEditableText}
 */
A |ChromeVoxEditableTextBase| that implements text editing feedback
for automation tree text fields using anchor and focus selection.
A |ChromeVoxEditableTextBase| that implements text editing feedback for automation tree text fields using anchor and focus selection .
function AutomationRichEditableText(node) {
  AutomationEditableText.call(this, node);
  var root = this.node_.root;
  if (!root || !root.anchorObject || !root.focusObject ||
      root.anchorOffset === undefined || root.focusOffset === undefined)
    return;
  this.anchorLine_ = new editing.EditableLine(
      root.anchorObject, root.anchorOffset, root.anchorObject,
      root.anchorOffset);
  this.focusLine_ = new editing.EditableLine(
      root.focusObject, root.focusOffset, root.focusObject, root.focusOffset);
  this.line_ = new editing.EditableLine(
      root.anchorObject, root.anchorOffset, root.focusObject, root.focusOffset);
  this.updateIntraLineState_(this.line_);
}
function AutomationRichEditableText ( node ) { AutomationEditableText . call ( this , node ) ; var root = this . node_ . root ; if ( ! root || ! root . anchorObject || ! root . focusObject || root . anchorOffset === undefined || root . focusOffset === undefined ) return ; this . anchorLine_ = new editing . EditableLine ( root . anchorObject , root . anchorOffset , root . anchorObject , root . anchorOffset ) ; this . focusLine_ = new editing . EditableLine ( root . focusObject , root . focusOffset , root . focusObject , root . focusOffset ) ; this . line_ = new editing . EditableLine ( root . anchorObject , root . anchorOffset , root . focusObject , root . focusOffset ) ; this . updateIntraLineState_ ( this . line_ ) ; }
A |ChromeVoxEditableTextBase| that implements text editing feedback
 for automation tree text fields using anchor and focus selection.
A |ChromeVoxEditableTextBase| that implements text editing feedback for automation tree text fields using anchor and focus selection .