QmlDesigner: Deactivate integrated text editor in detach

We delete the integrated text editor and set the original
text editor as the current one.

Change-Id: I2dd6c7421d4d3078dda8ca9dae8fb04553723240
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Thomas Hartmann
2017-03-16 10:52:27 +01:00
parent 149039edf4
commit bfb2248f39
2 changed files with 19 additions and 12 deletions

View File

@@ -114,6 +114,10 @@ void TextEditorView::modelAttached(Model *model)
void TextEditorView::modelAboutToBeDetached(Model *model)
{
AbstractView::modelAboutToBeDetached(model);
m_widget->setTextEditor(0);
QmlDesignerPlugin::instance()->emitCurrentTextEditorChanged(QmlDesignerPlugin::instance()->currentDesignDocument()->textEditor());
}
void TextEditorView::importsChanged(const QList<Import> &/*addedImports*/, const QList<Import> &/*removedImports*/)

View File

@@ -68,6 +68,8 @@ void TextEditorWidget::setTextEditor(TextEditor::BaseTextEditor *textEditor)
{
TextEditor::BaseTextEditor *oldEditor = m_textEditor.release();
m_textEditor.reset(textEditor);
if (textEditor) {
layout()->removeWidget(m_statusBar);
layout()->addWidget(textEditor->editorWidget());
layout()->addWidget(m_statusBar);
@@ -83,6 +85,7 @@ void TextEditorWidget::setTextEditor(TextEditor::BaseTextEditor *textEditor)
});
textEditor->editorWidget()->installEventFilter(this);
}
if (oldEditor)
oldEditor->deleteLater();