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
227 lines
6.1 KiB
C++
227 lines
6.1 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/. */
|
|
|
|
#include "mozilla/dom/Selection.h"
|
|
#include "nsCOMArray.h"
|
|
#include "nsComponentManagerUtils.h"
|
|
#include "nsEditorUtils.h"
|
|
#include "nsError.h"
|
|
#include "nsIClipboardDragDropHookList.h"
|
|
// hooks
|
|
#include "nsIClipboardDragDropHooks.h"
|
|
#include "nsIContent.h"
|
|
#include "nsIContentIterator.h"
|
|
#include "nsIDOMDocument.h"
|
|
#include "nsIDocShell.h"
|
|
#include "nsIDocument.h"
|
|
#include "nsIInterfaceRequestorUtils.h"
|
|
#include "nsINode.h"
|
|
#include "nsISimpleEnumerator.h"
|
|
|
|
class nsIDOMRange;
|
|
class nsISupports;
|
|
|
|
using namespace mozilla;
|
|
using namespace mozilla::dom;
|
|
|
|
/******************************************************************************
|
|
* nsAutoSelectionReset
|
|
*****************************************************************************/
|
|
|
|
nsAutoSelectionReset::nsAutoSelectionReset(Selection* aSel, nsEditor* aEd)
|
|
: mSel(nullptr), mEd(nullptr)
|
|
{
|
|
if (!aSel || !aEd) return; // not much we can do, bail.
|
|
if (aEd->ArePreservingSelection()) return; // we already have initted mSavedSel, so this must be nested call.
|
|
mSel = aSel;
|
|
mEd = aEd;
|
|
if (mSel)
|
|
{
|
|
mEd->PreserveSelectionAcrossActions(mSel);
|
|
}
|
|
}
|
|
|
|
nsAutoSelectionReset::~nsAutoSelectionReset()
|
|
{
|
|
NS_ASSERTION(!mSel || mEd, "mEd should be non-null when mSel is");
|
|
if (mSel && mEd->ArePreservingSelection()) // mSel will be null if this was nested call
|
|
{
|
|
mEd->RestorePreservedSelection(mSel);
|
|
}
|
|
}
|
|
|
|
void
|
|
nsAutoSelectionReset::Abort()
|
|
{
|
|
NS_ASSERTION(!mSel || mEd, "mEd should be non-null when mSel is");
|
|
if (mSel)
|
|
mEd->StopPreservingSelection();
|
|
}
|
|
|
|
|
|
/******************************************************************************
|
|
* some helper classes for iterating the dom tree
|
|
*****************************************************************************/
|
|
|
|
nsDOMIterator::nsDOMIterator() :
|
|
mIter(nullptr)
|
|
{
|
|
}
|
|
|
|
nsDOMIterator::~nsDOMIterator()
|
|
{
|
|
}
|
|
|
|
nsresult
|
|
nsDOMIterator::Init(nsIDOMRange* aRange)
|
|
{
|
|
nsresult res;
|
|
mIter = do_CreateInstance("@mozilla.org/content/post-content-iterator;1", &res);
|
|
NS_ENSURE_SUCCESS(res, res);
|
|
NS_ENSURE_TRUE(mIter, NS_ERROR_FAILURE);
|
|
return mIter->Init(aRange);
|
|
}
|
|
|
|
nsresult
|
|
nsDOMIterator::Init(nsIDOMNode* aNode)
|
|
{
|
|
nsresult res;
|
|
mIter = do_CreateInstance("@mozilla.org/content/post-content-iterator;1", &res);
|
|
NS_ENSURE_SUCCESS(res, res);
|
|
NS_ENSURE_TRUE(mIter, NS_ERROR_FAILURE);
|
|
nsCOMPtr<nsIContent> content = do_QueryInterface(aNode);
|
|
return mIter->Init(content);
|
|
}
|
|
|
|
nsresult
|
|
nsDOMIterator::AppendList(nsBoolDomIterFunctor& functor,
|
|
nsCOMArray<nsIDOMNode>& arrayOfNodes) const
|
|
{
|
|
nsCOMPtr<nsIDOMNode> node;
|
|
|
|
// iterate through dom and build list
|
|
while (!mIter->IsDone())
|
|
{
|
|
node = do_QueryInterface(mIter->GetCurrentNode());
|
|
NS_ENSURE_TRUE(node, NS_ERROR_NULL_POINTER);
|
|
|
|
if (functor(node))
|
|
{
|
|
arrayOfNodes.AppendObject(node);
|
|
}
|
|
mIter->Next();
|
|
}
|
|
return NS_OK;
|
|
}
|
|
|
|
nsDOMSubtreeIterator::nsDOMSubtreeIterator()
|
|
{
|
|
}
|
|
|
|
nsDOMSubtreeIterator::~nsDOMSubtreeIterator()
|
|
{
|
|
}
|
|
|
|
nsresult
|
|
nsDOMSubtreeIterator::Init(nsIDOMRange* aRange)
|
|
{
|
|
nsresult res;
|
|
mIter = do_CreateInstance("@mozilla.org/content/subtree-content-iterator;1", &res);
|
|
NS_ENSURE_SUCCESS(res, res);
|
|
NS_ENSURE_TRUE(mIter, NS_ERROR_FAILURE);
|
|
return mIter->Init(aRange);
|
|
}
|
|
|
|
/******************************************************************************
|
|
* some general purpose editor utils
|
|
*****************************************************************************/
|
|
|
|
bool
|
|
nsEditorUtils::IsDescendantOf(nsINode* aNode, nsINode* aParent, int32_t* aOffset)
|
|
{
|
|
MOZ_ASSERT(aNode && aParent);
|
|
if (aNode == aParent) {
|
|
return false;
|
|
}
|
|
|
|
for (nsCOMPtr<nsINode> node = aNode; node; node = node->GetParentNode()) {
|
|
if (node->GetParentNode() == aParent) {
|
|
if (aOffset) {
|
|
*aOffset = aParent->IndexOf(node);
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
bool
|
|
nsEditorUtils::IsDescendantOf(nsIDOMNode* aNode, nsIDOMNode* aParent, int32_t* aOffset)
|
|
{
|
|
nsCOMPtr<nsINode> node = do_QueryInterface(aNode);
|
|
nsCOMPtr<nsINode> parent = do_QueryInterface(aParent);
|
|
NS_ENSURE_TRUE(node && parent, false);
|
|
return IsDescendantOf(node, parent, aOffset);
|
|
}
|
|
|
|
bool
|
|
nsEditorUtils::IsLeafNode(nsIDOMNode *aNode)
|
|
{
|
|
bool hasChildren = false;
|
|
if (aNode)
|
|
aNode->HasChildNodes(&hasChildren);
|
|
return !hasChildren;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* utility methods for drag/drop/copy/paste hooks
|
|
*****************************************************************************/
|
|
|
|
nsresult
|
|
nsEditorHookUtils::GetHookEnumeratorFromDocument(nsIDOMDocument *aDoc,
|
|
nsISimpleEnumerator **aResult)
|
|
{
|
|
nsCOMPtr<nsIDocument> doc = do_QueryInterface(aDoc);
|
|
NS_ENSURE_TRUE(doc, NS_ERROR_FAILURE);
|
|
|
|
nsCOMPtr<nsIDocShell> docShell = doc->GetDocShell();
|
|
nsCOMPtr<nsIClipboardDragDropHookList> hookObj = do_GetInterface(docShell);
|
|
NS_ENSURE_TRUE(hookObj, NS_ERROR_FAILURE);
|
|
|
|
return hookObj->GetHookEnumerator(aResult);
|
|
}
|
|
|
|
bool
|
|
nsEditorHookUtils::DoInsertionHook(nsIDOMDocument *aDoc, nsIDOMEvent *aDropEvent,
|
|
nsITransferable *aTrans)
|
|
{
|
|
nsCOMPtr<nsISimpleEnumerator> enumerator;
|
|
GetHookEnumeratorFromDocument(aDoc, getter_AddRefs(enumerator));
|
|
NS_ENSURE_TRUE(enumerator, true);
|
|
|
|
bool hasMoreHooks = false;
|
|
while (NS_SUCCEEDED(enumerator->HasMoreElements(&hasMoreHooks)) && hasMoreHooks)
|
|
{
|
|
nsCOMPtr<nsISupports> isupp;
|
|
if (NS_FAILED(enumerator->GetNext(getter_AddRefs(isupp))))
|
|
break;
|
|
|
|
nsCOMPtr<nsIClipboardDragDropHooks> override = do_QueryInterface(isupp);
|
|
if (override)
|
|
{
|
|
bool doInsert = true;
|
|
#ifdef DEBUG
|
|
nsresult hookResult =
|
|
#endif
|
|
override->OnPasteOrDrop(aDropEvent, aTrans, &doInsert);
|
|
NS_ASSERTION(NS_SUCCEEDED(hookResult), "hook failure in OnPasteOrDrop");
|
|
NS_ENSURE_TRUE(doInsert, false);
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|