mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
731dbac067
Backed out changeset fdd74c065e5d (bug 1028565) Backed out changeset 5e9777d38052 (bug 1028565) Backed out changeset 3510bcdba3fc (bug 1028565) Backed out changeset 62ad3254903e (bug 1028565) Backed out changeset e7557f70acfe (bug 1028565) Backed out changeset 5b1b527abe47 (bug 1028559) --HG-- rename : editor/composer/nsIEditingSession.idl => editor/composer/public/nsIEditingSession.idl rename : editor/composer/crashtests/351236-1.html => editor/composer/src/crashtests/351236-1.html rename : editor/composer/crashtests/407062-1.html => editor/composer/src/crashtests/407062-1.html rename : editor/composer/crashtests/419563-1.xhtml => editor/composer/src/crashtests/419563-1.xhtml rename : editor/composer/crashtests/428844-1-inner.xhtml => editor/composer/src/crashtests/428844-1-inner.xhtml rename : editor/composer/crashtests/428844-1.html => editor/composer/src/crashtests/428844-1.html rename : editor/composer/crashtests/461049-1.html => editor/composer/src/crashtests/461049-1.html rename : editor/composer/crashtests/crashtests.list => editor/composer/src/crashtests/crashtests.list rename : editor/composer/crashtests/removing-editable-xslt-inner.xhtml => editor/composer/src/crashtests/removing-editable-xslt-inner.xhtml rename : editor/composer/crashtests/removing-editable-xslt.html => editor/composer/src/crashtests/removing-editable-xslt.html rename : editor/composer/nsComposeTxtSrvFilter.cpp => editor/composer/src/nsComposeTxtSrvFilter.cpp rename : editor/composer/nsComposeTxtSrvFilter.h => editor/composer/src/nsComposeTxtSrvFilter.h rename : editor/composer/nsComposerCommands.cpp => editor/composer/src/nsComposerCommands.cpp rename : editor/composer/nsComposerCommands.h => editor/composer/src/nsComposerCommands.h rename : editor/composer/nsComposerCommandsUpdater.cpp => editor/composer/src/nsComposerCommandsUpdater.cpp rename : editor/composer/nsComposerCommandsUpdater.h => editor/composer/src/nsComposerCommandsUpdater.h rename : editor/composer/nsComposerController.cpp => editor/composer/src/nsComposerController.cpp rename : editor/composer/nsComposerController.h => editor/composer/src/nsComposerController.h rename : editor/composer/nsComposerDocumentCommands.cpp => editor/composer/src/nsComposerDocumentCommands.cpp rename : editor/composer/nsComposerRegistration.cpp => editor/composer/src/nsComposerRegistration.cpp rename : editor/composer/nsEditingSession.cpp => editor/composer/src/nsEditingSession.cpp rename : editor/composer/nsEditingSession.h => editor/composer/src/nsEditingSession.h rename : editor/composer/nsEditorSpellCheck.cpp => editor/composer/src/nsEditorSpellCheck.cpp rename : editor/composer/nsEditorSpellCheck.h => editor/composer/src/nsEditorSpellCheck.h rename : editor/composer/res/EditorOverride.css => editor/composer/src/res/EditorOverride.css rename : editor/composer/res/grabber.gif => editor/composer/src/res/grabber.gif rename : editor/composer/res/table-add-column-after-active.gif => editor/composer/src/res/table-add-column-after-active.gif rename : editor/composer/res/table-add-column-after-hover.gif => editor/composer/src/res/table-add-column-after-hover.gif rename : editor/composer/res/table-add-column-after.gif => editor/composer/src/res/table-add-column-after.gif rename : editor/composer/res/table-add-column-before-active.gif => editor/composer/src/res/table-add-column-before-active.gif rename : editor/composer/res/table-add-column-before-hover.gif => editor/composer/src/res/table-add-column-before-hover.gif rename : editor/composer/res/table-add-column-before.gif => editor/composer/src/res/table-add-column-before.gif rename : editor/composer/res/table-add-row-after-active.gif => editor/composer/src/res/table-add-row-after-active.gif rename : editor/composer/res/table-add-row-after-hover.gif => editor/composer/src/res/table-add-row-after-hover.gif rename : editor/composer/res/table-add-row-after.gif => editor/composer/src/res/table-add-row-after.gif rename : editor/composer/res/table-add-row-before-active.gif => editor/composer/src/res/table-add-row-before-active.gif rename : editor/composer/res/table-add-row-before-hover.gif => editor/composer/src/res/table-add-row-before-hover.gif rename : editor/composer/res/table-add-row-before.gif => editor/composer/src/res/table-add-row-before.gif rename : editor/composer/res/table-remove-column-active.gif => editor/composer/src/res/table-remove-column-active.gif rename : editor/composer/res/table-remove-column-hover.gif => editor/composer/src/res/table-remove-column-hover.gif rename : editor/composer/res/table-remove-column.gif => editor/composer/src/res/table-remove-column.gif rename : editor/composer/res/table-remove-row-active.gif => editor/composer/src/res/table-remove-row-active.gif rename : editor/composer/res/table-remove-row-hover.gif => editor/composer/src/res/table-remove-row-hover.gif rename : editor/composer/res/table-remove-row.gif => editor/composer/src/res/table-remove-row.gif rename : editor/composer/res/text_caret.png => editor/composer/src/res/text_caret.png rename : editor/composer/res/text_caret@1.5x.png => editor/composer/src/res/text_caret@1.5x.png rename : editor/composer/res/text_caret@2.25x.png => editor/composer/src/res/text_caret@2.25x.png rename : editor/composer/res/text_caret@2x.png => editor/composer/src/res/text_caret@2x.png rename : editor/composer/res/text_caret_tilt_left.png => editor/composer/src/res/text_caret_tilt_left.png rename : editor/composer/res/text_caret_tilt_left@1.5x.png => editor/composer/src/res/text_caret_tilt_left@1.5x.png rename : editor/composer/res/text_caret_tilt_left@2.25x.png => editor/composer/src/res/text_caret_tilt_left@2.25x.png rename : editor/composer/res/text_caret_tilt_left@2x.png => editor/composer/src/res/text_caret_tilt_left@2x.png rename : editor/composer/res/text_caret_tilt_right.png => editor/composer/src/res/text_caret_tilt_right.png rename : editor/composer/res/text_caret_tilt_right@1.5x.png => editor/composer/src/res/text_caret_tilt_right@1.5x.png rename : editor/composer/res/text_caret_tilt_right@2.25x.png => editor/composer/src/res/text_caret_tilt_right@2.25x.png rename : editor/composer/res/text_caret_tilt_right@2x.png => editor/composer/src/res/text_caret_tilt_right@2x.png rename : editor/composer/res/text_selection_handle.png => editor/composer/src/res/text_selection_handle.png rename : editor/composer/res/text_selection_handle@1.5.png => editor/composer/src/res/text_selection_handle@1.5.png rename : editor/composer/res/text_selection_handle@2.png => editor/composer/src/res/text_selection_handle@2.png rename : editor/nsIContentFilter.idl => editor/idl/nsIContentFilter.idl rename : editor/nsIDocumentStateListener.idl => editor/idl/nsIDocumentStateListener.idl rename : editor/nsIEditActionListener.idl => editor/idl/nsIEditActionListener.idl rename : editor/nsIEditor.idl => editor/idl/nsIEditor.idl rename : editor/nsIEditorIMESupport.idl => editor/idl/nsIEditorIMESupport.idl rename : editor/nsIEditorMailSupport.idl => editor/idl/nsIEditorMailSupport.idl rename : editor/nsIEditorObserver.idl => editor/idl/nsIEditorObserver.idl rename : editor/nsIEditorSpellCheck.idl => editor/idl/nsIEditorSpellCheck.idl rename : editor/nsIEditorStyleSheets.idl => editor/idl/nsIEditorStyleSheets.idl rename : editor/nsIHTMLAbsPosEditor.idl => editor/idl/nsIHTMLAbsPosEditor.idl rename : editor/nsIHTMLEditor.idl => editor/idl/nsIHTMLEditor.idl rename : editor/nsIHTMLInlineTableEditor.idl => editor/idl/nsIHTMLInlineTableEditor.idl rename : editor/nsIHTMLObjectResizeListener.idl => editor/idl/nsIHTMLObjectResizeListener.idl rename : editor/nsIHTMLObjectResizer.idl => editor/idl/nsIHTMLObjectResizer.idl rename : editor/nsIPlaintextEditor.idl => editor/idl/nsIPlaintextEditor.idl rename : editor/nsITableEditor.idl => editor/idl/nsITableEditor.idl rename : editor/nsIURIRefObject.idl => editor/idl/nsIURIRefObject.idl rename : editor/nsPIEditorTransaction.idl => editor/idl/nsPIEditorTransaction.idl rename : editor/libeditor/ChangeAttributeTxn.cpp => editor/libeditor/base/ChangeAttributeTxn.cpp rename : editor/libeditor/ChangeAttributeTxn.h => editor/libeditor/base/ChangeAttributeTxn.h rename : editor/libeditor/ChangeCSSInlineStyleTxn.cpp => editor/libeditor/base/ChangeCSSInlineStyleTxn.cpp rename : editor/libeditor/ChangeCSSInlineStyleTxn.h => editor/libeditor/base/ChangeCSSInlineStyleTxn.h rename : editor/libeditor/CreateElementTxn.cpp => editor/libeditor/base/CreateElementTxn.cpp rename : editor/libeditor/CreateElementTxn.h => editor/libeditor/base/CreateElementTxn.h rename : editor/libeditor/DeleteNodeTxn.cpp => editor/libeditor/base/DeleteNodeTxn.cpp rename : editor/libeditor/DeleteNodeTxn.h => editor/libeditor/base/DeleteNodeTxn.h rename : editor/libeditor/DeleteRangeTxn.cpp => editor/libeditor/base/DeleteRangeTxn.cpp rename : editor/libeditor/DeleteRangeTxn.h => editor/libeditor/base/DeleteRangeTxn.h rename : editor/libeditor/DeleteTextTxn.cpp => editor/libeditor/base/DeleteTextTxn.cpp rename : editor/libeditor/DeleteTextTxn.h => editor/libeditor/base/DeleteTextTxn.h rename : editor/libeditor/EditActionListener.h => editor/libeditor/base/EditActionListener.h rename : editor/libeditor/EditAggregateTxn.cpp => editor/libeditor/base/EditAggregateTxn.cpp rename : editor/libeditor/EditAggregateTxn.h => editor/libeditor/base/EditAggregateTxn.h rename : editor/libeditor/EditTxn.cpp => editor/libeditor/base/EditTxn.cpp rename : editor/libeditor/EditTxn.h => editor/libeditor/base/EditTxn.h rename : editor/libeditor/IMETextTxn.cpp => editor/libeditor/base/IMETextTxn.cpp rename : editor/libeditor/IMETextTxn.h => editor/libeditor/base/IMETextTxn.h rename : editor/libeditor/InsertElementTxn.cpp => editor/libeditor/base/InsertElementTxn.cpp rename : editor/libeditor/InsertElementTxn.h => editor/libeditor/base/InsertElementTxn.h rename : editor/libeditor/InsertTextTxn.cpp => editor/libeditor/base/InsertTextTxn.cpp rename : editor/libeditor/InsertTextTxn.h => editor/libeditor/base/InsertTextTxn.h rename : editor/libeditor/JoinElementTxn.cpp => editor/libeditor/base/JoinElementTxn.cpp rename : editor/libeditor/JoinElementTxn.h => editor/libeditor/base/JoinElementTxn.h rename : editor/libeditor/PlaceholderTxn.cpp => editor/libeditor/base/PlaceholderTxn.cpp rename : editor/libeditor/PlaceholderTxn.h => editor/libeditor/base/PlaceholderTxn.h rename : editor/libeditor/SetDocTitleTxn.cpp => editor/libeditor/base/SetDocTitleTxn.cpp rename : editor/libeditor/SetDocTitleTxn.h => editor/libeditor/base/SetDocTitleTxn.h rename : editor/libeditor/SplitElementTxn.cpp => editor/libeditor/base/SplitElementTxn.cpp rename : editor/libeditor/SplitElementTxn.h => editor/libeditor/base/SplitElementTxn.h rename : editor/libeditor/crashtests/336104.html => editor/libeditor/base/crashtests/336104.html rename : editor/libeditor/crashtests/382527-1.html => editor/libeditor/base/crashtests/382527-1.html rename : editor/libeditor/crashtests/402172-1.html => editor/libeditor/base/crashtests/402172-1.html rename : editor/libeditor/crashtests/407079-1.html => editor/libeditor/base/crashtests/407079-1.html rename : editor/libeditor/crashtests/407256-1.html => editor/libeditor/base/crashtests/407256-1.html rename : editor/libeditor/crashtests/430624-1.html => editor/libeditor/base/crashtests/430624-1.html rename : editor/libeditor/crashtests/459613-iframe.html => editor/libeditor/base/crashtests/459613-iframe.html rename : editor/libeditor/crashtests/459613.html => editor/libeditor/base/crashtests/459613.html rename : editor/libeditor/crashtests/475132-1.xhtml => editor/libeditor/base/crashtests/475132-1.xhtml rename : editor/libeditor/crashtests/633709.xhtml => editor/libeditor/base/crashtests/633709.xhtml rename : editor/libeditor/crashtests/636074-1.html => editor/libeditor/base/crashtests/636074-1.html rename : editor/libeditor/crashtests/713427-1.html => editor/libeditor/base/crashtests/713427-1.html rename : editor/libeditor/crashtests/713427-2.xhtml => editor/libeditor/base/crashtests/713427-2.xhtml rename : editor/libeditor/crashtests/762183.html => editor/libeditor/base/crashtests/762183.html rename : editor/libeditor/crashtests/766360.html => editor/libeditor/base/crashtests/766360.html rename : editor/libeditor/crashtests/766413.html => editor/libeditor/base/crashtests/766413.html rename : editor/libeditor/crashtests/766845.xhtml => editor/libeditor/base/crashtests/766845.xhtml rename : editor/libeditor/crashtests/768765.html => editor/libeditor/base/crashtests/768765.html rename : editor/libeditor/crashtests/771749.html => editor/libeditor/base/crashtests/771749.html rename : editor/libeditor/crashtests/772282.html => editor/libeditor/base/crashtests/772282.html rename : editor/libeditor/crashtests/776323.html => editor/libeditor/base/crashtests/776323.html rename : editor/libeditor/crashtests/crashtests.list => editor/libeditor/base/crashtests/crashtests.list rename : editor/libeditor/nsEditProperty.h => editor/libeditor/base/nsEditProperty.h rename : editor/libeditor/nsEditPropertyAtomList.h => editor/libeditor/base/nsEditPropertyAtomList.h rename : editor/libeditor/nsEditRules.h => editor/libeditor/base/nsEditRules.h rename : editor/libeditor/nsEditor.cpp => editor/libeditor/base/nsEditor.cpp rename : editor/libeditor/nsEditor.h => editor/libeditor/base/nsEditor.h rename : editor/libeditor/nsEditorCommands.cpp => editor/libeditor/base/nsEditorCommands.cpp rename : editor/libeditor/nsEditorCommands.h => editor/libeditor/base/nsEditorCommands.h rename : editor/libeditor/nsEditorController.cpp => editor/libeditor/base/nsEditorController.cpp rename : editor/libeditor/nsEditorController.h => editor/libeditor/base/nsEditorController.h rename : editor/libeditor/nsEditorEventListener.cpp => editor/libeditor/base/nsEditorEventListener.cpp rename : editor/libeditor/nsEditorEventListener.h => editor/libeditor/base/nsEditorEventListener.h rename : editor/libeditor/nsEditorUtils.cpp => editor/libeditor/base/nsEditorUtils.cpp rename : editor/libeditor/nsEditorUtils.h => editor/libeditor/base/nsEditorUtils.h rename : editor/libeditor/nsIAbsorbingTransaction.h => editor/libeditor/base/nsIAbsorbingTransaction.h rename : editor/libeditor/nsSelectionState.cpp => editor/libeditor/base/nsSelectionState.cpp rename : editor/libeditor/nsSelectionState.h => editor/libeditor/base/nsSelectionState.h rename : editor/libeditor/nsStyleSheetTxns.cpp => editor/libeditor/base/nsStyleSheetTxns.cpp rename : editor/libeditor/nsStyleSheetTxns.h => editor/libeditor/base/nsStyleSheetTxns.h rename : editor/libeditor/tests/chrome.ini => editor/libeditor/base/tests/chrome.ini rename : editor/libeditor/tests/file_bug586662.html => editor/libeditor/base/tests/file_bug586662.html rename : editor/libeditor/tests/mochitest.ini => editor/libeditor/base/tests/mochitest.ini rename : editor/libeditor/tests/moz.build => editor/libeditor/base/tests/moz.build rename : editor/libeditor/tests/test_bug408231.html => editor/libeditor/base/tests/test_bug408231.html rename : editor/libeditor/tests/test_bug46555.html => editor/libeditor/base/tests/test_bug46555.html rename : editor/libeditor/tests/test_bug502673.html => editor/libeditor/base/tests/test_bug502673.html rename : editor/libeditor/tests/test_bug514156.html => editor/libeditor/base/tests/test_bug514156.html rename : editor/libeditor/tests/test_bug567213.html => editor/libeditor/base/tests/test_bug567213.html rename : editor/libeditor/tests/test_bug586662.html => editor/libeditor/base/tests/test_bug586662.html rename : editor/libeditor/tests/test_bug599983.html => editor/libeditor/base/tests/test_bug599983.html rename : editor/libeditor/tests/test_bug599983.xul => editor/libeditor/base/tests/test_bug599983.xul rename : editor/libeditor/tests/test_bug646194.xul => editor/libeditor/base/tests/test_bug646194.xul rename : editor/libeditor/tests/test_bug742261.html => editor/libeditor/base/tests/test_bug742261.html rename : editor/libeditor/tests/test_bug773262.html => editor/libeditor/base/tests/test_bug773262.html rename : editor/libeditor/tests/test_bug795785.html => editor/libeditor/base/tests/test_bug795785.html rename : editor/libeditor/tests/test_dragdrop.html => editor/libeditor/base/tests/test_dragdrop.html rename : editor/libeditor/tests/test_selection_move_commands.xul => editor/libeditor/base/tests/test_selection_move_commands.xul rename : editor/nsEditorCID.h => editor/public/nsEditorCID.h rename : editor/txmgr/nsITransaction.idl => editor/txmgr/idl/nsITransaction.idl rename : editor/txmgr/nsITransactionList.idl => editor/txmgr/idl/nsITransactionList.idl rename : editor/txmgr/nsITransactionListener.idl => editor/txmgr/idl/nsITransactionListener.idl rename : editor/txmgr/nsITransactionManager.idl => editor/txmgr/idl/nsITransactionManager.idl rename : editor/txmgr/nsTransactionManagerCID.h => editor/txmgr/public/nsTransactionManagerCID.h rename : editor/txmgr/nsTransactionItem.cpp => editor/txmgr/src/nsTransactionItem.cpp rename : editor/txmgr/nsTransactionItem.h => editor/txmgr/src/nsTransactionItem.h rename : editor/txmgr/nsTransactionList.cpp => editor/txmgr/src/nsTransactionList.cpp rename : editor/txmgr/nsTransactionList.h => editor/txmgr/src/nsTransactionList.h rename : editor/txmgr/nsTransactionManager.cpp => editor/txmgr/src/nsTransactionManager.cpp rename : editor/txmgr/nsTransactionManager.h => editor/txmgr/src/nsTransactionManager.h rename : editor/txmgr/nsTransactionManagerFactory.cpp => editor/txmgr/src/nsTransactionManagerFactory.cpp rename : editor/txmgr/nsTransactionStack.cpp => editor/txmgr/src/nsTransactionStack.cpp rename : editor/txmgr/nsTransactionStack.h => editor/txmgr/src/nsTransactionStack.h rename : editor/txtsvc/nsIInlineSpellChecker.idl => editor/txtsvc/public/nsIInlineSpellChecker.idl rename : editor/txtsvc/nsISpellChecker.h => editor/txtsvc/public/nsISpellChecker.h rename : editor/txtsvc/nsITextService.h => editor/txtsvc/public/nsITextService.h rename : editor/txtsvc/nsITextServicesDocument.h => editor/txtsvc/public/nsITextServicesDocument.h rename : editor/txtsvc/nsITextServicesFilter.idl => editor/txtsvc/public/nsITextServicesFilter.idl rename : editor/txtsvc/nsTextServicesCID.h => editor/txtsvc/public/nsTextServicesCID.h rename : editor/txtsvc/nsFilteredContentIterator.cpp => editor/txtsvc/src/nsFilteredContentIterator.cpp rename : editor/txtsvc/nsFilteredContentIterator.h => editor/txtsvc/src/nsFilteredContentIterator.h rename : editor/txtsvc/nsTSAtomList.h => editor/txtsvc/src/nsTSAtomList.h rename : editor/txtsvc/nsTextServicesDocument.cpp => editor/txtsvc/src/nsTextServicesDocument.cpp rename : editor/txtsvc/nsTextServicesDocument.h => editor/txtsvc/src/nsTextServicesDocument.h rename : editor/txtsvc/nsTextServicesFactory.cpp => editor/txtsvc/src/nsTextServicesFactory.cpp rename : xpcom/string/nsAString.h => xpcom/string/public/nsAString.h rename : xpcom/string/nsAlgorithm.h => xpcom/string/public/nsAlgorithm.h rename : xpcom/string/nsCharTraits.h => xpcom/string/public/nsCharTraits.h rename : xpcom/string/nsDependentString.h => xpcom/string/public/nsDependentString.h rename : xpcom/string/nsDependentSubstring.h => xpcom/string/public/nsDependentSubstring.h rename : xpcom/string/nsEmbedString.h => xpcom/string/public/nsEmbedString.h rename : xpcom/string/nsLiteralString.h => xpcom/string/public/nsLiteralString.h rename : xpcom/string/nsPrintfCString.h => xpcom/string/public/nsPrintfCString.h rename : xpcom/string/nsPromiseFlatString.h => xpcom/string/public/nsPromiseFlatString.h rename : xpcom/string/nsReadableUtils.h => xpcom/string/public/nsReadableUtils.h rename : xpcom/string/nsString.h => xpcom/string/public/nsString.h rename : xpcom/string/nsStringBuffer.h => xpcom/string/public/nsStringBuffer.h rename : xpcom/string/nsStringFwd.h => xpcom/string/public/nsStringFwd.h rename : xpcom/string/nsStringIterator.h => xpcom/string/public/nsStringIterator.h rename : xpcom/string/nsSubstring.h => xpcom/string/public/nsSubstring.h rename : xpcom/string/nsSubstringTuple.h => xpcom/string/public/nsSubstringTuple.h rename : xpcom/string/nsTDependentString.h => xpcom/string/public/nsTDependentString.h rename : xpcom/string/nsTDependentSubstring.h => xpcom/string/public/nsTDependentSubstring.h rename : xpcom/string/nsTLiteralString.h => xpcom/string/public/nsTLiteralString.h rename : xpcom/string/nsTPromiseFlatString.h => xpcom/string/public/nsTPromiseFlatString.h rename : xpcom/string/nsTString.h => xpcom/string/public/nsTString.h rename : xpcom/string/nsTSubstring.h => xpcom/string/public/nsTSubstring.h rename : xpcom/string/nsTSubstringTuple.h => xpcom/string/public/nsTSubstringTuple.h rename : xpcom/string/nsUTF8Utils.h => xpcom/string/public/nsUTF8Utils.h rename : xpcom/string/nsXPCOMStrings.h => xpcom/string/public/nsXPCOMStrings.h rename : xpcom/string/nsXPIDLString.h => xpcom/string/public/nsXPIDLString.h rename : xpcom/string/string-template-def-char.h => xpcom/string/public/string-template-def-char.h rename : xpcom/string/string-template-def-unichar.h => xpcom/string/public/string-template-def-unichar.h rename : xpcom/string/string-template-undef.h => xpcom/string/public/string-template-undef.h rename : xpcom/string/nsDependentString.cpp => xpcom/string/src/nsDependentString.cpp rename : xpcom/string/nsDependentSubstring.cpp => xpcom/string/src/nsDependentSubstring.cpp rename : xpcom/string/nsPromiseFlatString.cpp => xpcom/string/src/nsPromiseFlatString.cpp rename : xpcom/string/nsReadableUtils.cpp => xpcom/string/src/nsReadableUtils.cpp rename : xpcom/string/nsString.cpp => xpcom/string/src/nsString.cpp rename : xpcom/string/nsStringComparator.cpp => xpcom/string/src/nsStringComparator.cpp rename : xpcom/string/nsStringObsolete.cpp => xpcom/string/src/nsStringObsolete.cpp rename : xpcom/string/nsSubstring.cpp => xpcom/string/src/nsSubstring.cpp rename : xpcom/string/nsSubstringTuple.cpp => xpcom/string/src/nsSubstringTuple.cpp rename : xpcom/string/nsTDependentString.cpp => xpcom/string/src/nsTDependentString.cpp rename : xpcom/string/nsTDependentSubstring.cpp => xpcom/string/src/nsTDependentSubstring.cpp rename : xpcom/string/nsTPromiseFlatString.cpp => xpcom/string/src/nsTPromiseFlatString.cpp rename : xpcom/string/nsTString.cpp => xpcom/string/src/nsTString.cpp rename : xpcom/string/nsTStringComparator.cpp => xpcom/string/src/nsTStringComparator.cpp rename : xpcom/string/nsTStringObsolete.cpp => xpcom/string/src/nsTStringObsolete.cpp rename : xpcom/string/nsTSubstring.cpp => xpcom/string/src/nsTSubstring.cpp rename : xpcom/string/nsTSubstringTuple.cpp => xpcom/string/src/nsTSubstringTuple.cpp rename : xpcom/string/nsUTF8UtilsSSE2.cpp => xpcom/string/src/nsUTF8UtilsSSE2.cpp
256 lines
6.5 KiB
C++
256 lines
6.5 KiB
C++
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* 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/. */
|
|
|
|
|
|
#ifndef nsEditorUtils_h__
|
|
#define nsEditorUtils_h__
|
|
|
|
|
|
#include "nsCOMPtr.h"
|
|
#include "nsDebug.h"
|
|
#include "nsEditor.h"
|
|
#include "nsIDOMNode.h"
|
|
#include "nsIEditor.h"
|
|
#include "nscore.h"
|
|
|
|
class nsIAtom;
|
|
class nsIContentIterator;
|
|
class nsIDOMDocument;
|
|
class nsIDOMRange;
|
|
class nsISelection;
|
|
template <class E> class nsCOMArray;
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for batching a collection of txns inside a
|
|
* placeholder txn.
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoPlaceHolderBatch
|
|
{
|
|
private:
|
|
nsCOMPtr<nsIEditor> mEd;
|
|
public:
|
|
nsAutoPlaceHolderBatch( nsIEditor *aEd, nsIAtom *atom) : mEd(do_QueryInterface(aEd))
|
|
{ if (mEd) mEd->BeginPlaceHolderTransaction(atom); }
|
|
~nsAutoPlaceHolderBatch() { if (mEd) mEd->EndPlaceHolderTransaction(); }
|
|
};
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for batching a collection of txns.
|
|
* Note: I changed this to use placeholder batching so that we get
|
|
* proper selection save/restore across undo/redo.
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoEditBatch : public nsAutoPlaceHolderBatch
|
|
{
|
|
public:
|
|
nsAutoEditBatch( nsIEditor *aEd) : nsAutoPlaceHolderBatch(aEd,nullptr) {}
|
|
~nsAutoEditBatch() {}
|
|
};
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for saving/restoring selection. Note that this
|
|
* assumes that the nodes involved are still around afterwards!
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoSelectionReset
|
|
{
|
|
private:
|
|
/** ref-counted reference to the selection that we are supposed to restore */
|
|
nsRefPtr<mozilla::dom::Selection> mSel;
|
|
nsEditor *mEd; // non-owning ref to nsEditor
|
|
|
|
public:
|
|
/** constructor responsible for remembering all state needed to restore aSel */
|
|
nsAutoSelectionReset(mozilla::dom::Selection* aSel, nsEditor* aEd);
|
|
|
|
/** destructor restores mSel to its former state */
|
|
~nsAutoSelectionReset();
|
|
|
|
/** Abort: cancel selection saver */
|
|
void Abort();
|
|
};
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for StartOperation()/EndOperation() sandwich
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoRules
|
|
{
|
|
public:
|
|
|
|
nsAutoRules(nsEditor *ed, EditAction action,
|
|
nsIEditor::EDirection aDirection) :
|
|
mEd(ed), mDoNothing(false)
|
|
{
|
|
if (mEd && !mEd->mAction) // mAction will already be set if this is nested call
|
|
{
|
|
mEd->StartOperation(action, aDirection);
|
|
}
|
|
else mDoNothing = true; // nested calls will end up here
|
|
}
|
|
~nsAutoRules()
|
|
{
|
|
if (mEd && !mDoNothing)
|
|
{
|
|
mEd->EndOperation();
|
|
}
|
|
}
|
|
|
|
protected:
|
|
nsEditor *mEd;
|
|
bool mDoNothing;
|
|
};
|
|
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for turning off active selection adjustment
|
|
* by low level transactions
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoTxnsConserveSelection
|
|
{
|
|
public:
|
|
|
|
nsAutoTxnsConserveSelection(nsEditor *ed) : mEd(ed), mOldState(true)
|
|
{
|
|
if (mEd)
|
|
{
|
|
mOldState = mEd->GetShouldTxnSetSelection();
|
|
mEd->SetShouldTxnSetSelection(false);
|
|
}
|
|
}
|
|
|
|
~nsAutoTxnsConserveSelection()
|
|
{
|
|
if (mEd)
|
|
{
|
|
mEd->SetShouldTxnSetSelection(mOldState);
|
|
}
|
|
}
|
|
|
|
protected:
|
|
nsEditor *mEd;
|
|
bool mOldState;
|
|
};
|
|
|
|
/***************************************************************************
|
|
* stack based helper class for batching reflow and paint requests.
|
|
*/
|
|
class MOZ_STACK_CLASS nsAutoUpdateViewBatch
|
|
{
|
|
public:
|
|
|
|
nsAutoUpdateViewBatch(nsEditor *ed) : mEd(ed)
|
|
{
|
|
NS_ASSERTION(mEd, "null mEd pointer!");
|
|
|
|
if (mEd)
|
|
mEd->BeginUpdateViewBatch();
|
|
}
|
|
|
|
~nsAutoUpdateViewBatch()
|
|
{
|
|
if (mEd)
|
|
mEd->EndUpdateViewBatch();
|
|
}
|
|
|
|
protected:
|
|
nsEditor *mEd;
|
|
};
|
|
|
|
/******************************************************************************
|
|
* some helper classes for iterating the dom tree
|
|
*****************************************************************************/
|
|
|
|
class nsBoolDomIterFunctor
|
|
{
|
|
public:
|
|
virtual bool operator()(nsIDOMNode* aNode)=0;
|
|
};
|
|
|
|
class MOZ_STACK_CLASS nsDOMIterator
|
|
{
|
|
public:
|
|
nsDOMIterator();
|
|
virtual ~nsDOMIterator();
|
|
|
|
nsresult Init(nsIDOMRange* aRange);
|
|
nsresult Init(nsIDOMNode* aNode);
|
|
nsresult AppendList(nsBoolDomIterFunctor& functor,
|
|
nsCOMArray<nsIDOMNode>& arrayOfNodes) const;
|
|
protected:
|
|
nsCOMPtr<nsIContentIterator> mIter;
|
|
};
|
|
|
|
class MOZ_STACK_CLASS nsDOMSubtreeIterator : public nsDOMIterator
|
|
{
|
|
public:
|
|
nsDOMSubtreeIterator();
|
|
virtual ~nsDOMSubtreeIterator();
|
|
|
|
nsresult Init(nsIDOMRange* aRange);
|
|
};
|
|
|
|
class nsTrivialFunctor : public nsBoolDomIterFunctor
|
|
{
|
|
public:
|
|
virtual bool operator()(nsIDOMNode* aNode) // used to build list of all nodes iterator covers
|
|
{
|
|
return true;
|
|
}
|
|
};
|
|
|
|
|
|
/******************************************************************************
|
|
* general dom point utility struct
|
|
*****************************************************************************/
|
|
struct MOZ_STACK_CLASS DOMPoint
|
|
{
|
|
nsCOMPtr<nsINode> node;
|
|
int32_t offset;
|
|
|
|
DOMPoint(nsINode* aNode, int32_t aOffset)
|
|
: node(aNode)
|
|
, offset(aOffset)
|
|
{}
|
|
DOMPoint(nsIDOMNode* aNode, int32_t aOffset)
|
|
: node(do_QueryInterface(aNode))
|
|
, offset(aOffset)
|
|
{}
|
|
|
|
void SetPoint(nsINode* aNode, int32_t aOffset)
|
|
{
|
|
node = aNode;
|
|
offset = aOffset;
|
|
}
|
|
void SetPoint(nsIDOMNode* aNode, int32_t aOffset)
|
|
{
|
|
node = do_QueryInterface(aNode);
|
|
offset = aOffset;
|
|
}
|
|
};
|
|
|
|
|
|
class nsEditorUtils
|
|
{
|
|
public:
|
|
static bool IsDescendantOf(nsINode* aNode, nsINode* aParent, int32_t* aOffset = 0);
|
|
static bool IsDescendantOf(nsIDOMNode *aNode, nsIDOMNode *aParent, int32_t *aOffset = 0);
|
|
static bool IsLeafNode(nsIDOMNode *aNode);
|
|
};
|
|
|
|
|
|
class nsIDOMEvent;
|
|
class nsISimpleEnumerator;
|
|
class nsITransferable;
|
|
|
|
class nsEditorHookUtils
|
|
{
|
|
public:
|
|
static bool DoInsertionHook(nsIDOMDocument *aDoc, nsIDOMEvent *aEvent,
|
|
nsITransferable *aTrans);
|
|
private:
|
|
static nsresult GetHookEnumeratorFromDocument(nsIDOMDocument *aDoc,
|
|
nsISimpleEnumerator **aEnumerator);
|
|
};
|
|
|
|
#endif // nsEditorUtils_h__
|