Loading editor/libeditor/EditorBase.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -174,7 +174,12 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(EditorBase) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEditorObservers) NS_IMPL_CYCLE_COLLECTION_UNLINK(mDocStateListeners) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEventTarget) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEventListener) if (tmp->mEventListener) { tmp->mEventListener->Disconnect(); tmp->mEventListener = nullptr; } NS_IMPL_CYCLE_COLLECTION_UNLINK(mPlaceholderTransaction) NS_IMPL_CYCLE_COLLECTION_UNLINK(mSavedSel); NS_IMPL_CYCLE_COLLECTION_UNLINK(mRangeUpdater); Loading Loading @@ -330,9 +335,7 @@ EditorBase::PostCreate() // If the text control gets reframed during focus, Focus() would not be // called, so take a chance here to see if we need to spell check the text // control. EditorEventListener* listener = reinterpret_cast<EditorEventListener*>(mEventListener.get()); listener->SpellCheckIfNeeded(); mEventListener->SpellCheckIfNeeded(); IMEState newState; rv = GetPreferredIMEState(&newState); Loading Loading @@ -386,9 +389,7 @@ EditorBase::InstallEventListeners() mEventTarget = do_QueryInterface(rootContent->GetParent()); NS_ENSURE_TRUE(mEventTarget, NS_ERROR_NOT_AVAILABLE); EditorEventListener* listener = reinterpret_cast<EditorEventListener*>(mEventListener.get()); nsresult rv = listener->Connect(this); nsresult rv = mEventListener->Connect(this); if (mComposition) { // Restart to handle composition with new editor contents. mComposition->StartHandlingComposition(this); Loading @@ -402,7 +403,7 @@ EditorBase::RemoveEventListeners() if (!IsInitialized() || !mEventListener) { return; } reinterpret_cast<EditorEventListener*>(mEventListener.get())->Disconnect(); mEventListener->Disconnect(); if (mComposition) { // Even if this is called, don't release mComposition because this is // may be reused after reframing. Loading editor/libeditor/EditorBase.h +2 −2 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ class nsAtom; class nsIContent; class nsIDOMDocument; class nsIDOMEvent; class nsIDOMEventListener; class nsIDOMEventTarget; class nsIDOMNode; class nsIDocumentStateListener; Loading @@ -65,6 +64,7 @@ class CreateElementTransaction; class DeleteNodeTransaction; class DeleteTextTransaction; class EditAggregateTransaction; class EditorEventListener; class EditTransactionBase; class ErrorResult; class HTMLEditor; Loading Loading @@ -1503,7 +1503,7 @@ protected: nsCOMPtr<Element> mRootElement; // The form field as an event receiver. nsCOMPtr<dom::EventTarget> mEventTarget; nsCOMPtr<nsIDOMEventListener> mEventListener; RefPtr<EditorEventListener> mEventListener; // Strong reference to placeholder for begin/end batch purposes. RefPtr<PlaceholderTransaction> mPlaceholderTransaction; // Name of placeholder transaction. Loading Loading
editor/libeditor/EditorBase.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -174,7 +174,12 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(EditorBase) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEditorObservers) NS_IMPL_CYCLE_COLLECTION_UNLINK(mDocStateListeners) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEventTarget) NS_IMPL_CYCLE_COLLECTION_UNLINK(mEventListener) if (tmp->mEventListener) { tmp->mEventListener->Disconnect(); tmp->mEventListener = nullptr; } NS_IMPL_CYCLE_COLLECTION_UNLINK(mPlaceholderTransaction) NS_IMPL_CYCLE_COLLECTION_UNLINK(mSavedSel); NS_IMPL_CYCLE_COLLECTION_UNLINK(mRangeUpdater); Loading Loading @@ -330,9 +335,7 @@ EditorBase::PostCreate() // If the text control gets reframed during focus, Focus() would not be // called, so take a chance here to see if we need to spell check the text // control. EditorEventListener* listener = reinterpret_cast<EditorEventListener*>(mEventListener.get()); listener->SpellCheckIfNeeded(); mEventListener->SpellCheckIfNeeded(); IMEState newState; rv = GetPreferredIMEState(&newState); Loading Loading @@ -386,9 +389,7 @@ EditorBase::InstallEventListeners() mEventTarget = do_QueryInterface(rootContent->GetParent()); NS_ENSURE_TRUE(mEventTarget, NS_ERROR_NOT_AVAILABLE); EditorEventListener* listener = reinterpret_cast<EditorEventListener*>(mEventListener.get()); nsresult rv = listener->Connect(this); nsresult rv = mEventListener->Connect(this); if (mComposition) { // Restart to handle composition with new editor contents. mComposition->StartHandlingComposition(this); Loading @@ -402,7 +403,7 @@ EditorBase::RemoveEventListeners() if (!IsInitialized() || !mEventListener) { return; } reinterpret_cast<EditorEventListener*>(mEventListener.get())->Disconnect(); mEventListener->Disconnect(); if (mComposition) { // Even if this is called, don't release mComposition because this is // may be reused after reframing. Loading
editor/libeditor/EditorBase.h +2 −2 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ class nsAtom; class nsIContent; class nsIDOMDocument; class nsIDOMEvent; class nsIDOMEventListener; class nsIDOMEventTarget; class nsIDOMNode; class nsIDocumentStateListener; Loading @@ -65,6 +64,7 @@ class CreateElementTransaction; class DeleteNodeTransaction; class DeleteTextTransaction; class EditAggregateTransaction; class EditorEventListener; class EditTransactionBase; class ErrorResult; class HTMLEditor; Loading Loading @@ -1503,7 +1503,7 @@ protected: nsCOMPtr<Element> mRootElement; // The form field as an event receiver. nsCOMPtr<dom::EventTarget> mEventTarget; nsCOMPtr<nsIDOMEventListener> mEventListener; RefPtr<EditorEventListener> mEventListener; // Strong reference to placeholder for begin/end batch purposes. RefPtr<PlaceholderTransaction> mPlaceholderTransaction; // Name of placeholder transaction. Loading