Editor module structure

This document explains the structure of the editor module and overview of classes.

Introduction

This module implements the builtin editors of editable elements or documents, and this does not implement the interface with DOM API and visual feedback of the editing UI. In other words, this module implements DOM tree editors.

Directories

composer

Previously, this directory contained “Composer” UI related code. However, currently, this directory contains nsEditingSession and ComposerCommandsUpdater.

libeditor

This is the main directory which contains “core” implementation of editors.

spellchecker

Despite of the directory name, implementation of the spellchecker is not here. This directory contains only a bridge between editor classes and the spellchecker and serialized text of editable content for spellchecking.

txmgr

This directory contains transaction items and transaction classes. They were designed for generic use cases, e.g., managing undo/redo of bookmarks/history of browser, etc, but they are used only by the editor.

Main classes

EditorBase