mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 09:45:41 +00:00
a1f13e5b38
EditorBase::Undo() and EditorBase::Redo() implement only undo/redo function. TextEditor::Undo() and TextEditor::Redo() call them with calling some notification methods. However, this causes redundant AutoRules instance creation and doesn't make sense to separate them under current design. Therefore this patch merges them into TextEditor. Unfortunately, they are XPCOM methods but we cannot implement proper overloads of non-virtual since they are already minimized design. Fortunately, reducing only one virtual call per undo/redo isn't so effective. So, let's keep simpler design. Additionally, this patch makes them stop committing composition because Chrome does not commit composition even if "undo"/"redo" is requested with execCommand() during composition and it doesn't make sense to try to undo/redo after committing composition since first undoable transaction becomes the committing composition and committing composition causes removing all transactions from redo transaction queue. MozReview-Commit-ID: 78qlV2I9Lzk --HG-- extra : rebase_source : 545c787d47fe02bf7e085be9d3ae028816750e69 |
||
---|---|---|
.. | ||
composer | ||
libeditor | ||
reftests | ||
spellchecker | ||
txmgr | ||
AsyncSpellCheckTestHelper.jsm | ||
moz.build | ||
nsEditorCID.h | ||
nsIDocumentStateListener.idl | ||
nsIEditActionListener.idl | ||
nsIEditor.idl | ||
nsIEditorMailSupport.idl | ||
nsIEditorObserver.idl | ||
nsIEditorSpellCheck.idl | ||
nsIEditorStyleSheets.idl | ||
nsIEditorUtils.idl | ||
nsIHTMLAbsPosEditor.idl | ||
nsIHTMLEditor.idl | ||
nsIHTMLInlineTableEditor.idl | ||
nsIHTMLObjectResizer.idl | ||
nsIPlaintextEditor.idl | ||
nsITableEditor.idl | ||
nsIURIRefObject.idl |