From 583a9dcea1008d86e3bb33dd735136024b0df0bd Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Tue, 14 Nov 2023 11:27:12 +0100 Subject: [PATCH] Add Line/Column indicator to Markdown editor And make the LineColumnButton independent of IEditor for that (since the IEditor for the Markdown editor is not a TextEditor. Change-Id: I52d378ec46d86b1c7928d18f7d39f9726bb6ad23 Reviewed-by: David Schulz Reviewed-by: Qt CI Bot --- src/plugins/texteditor/markdowneditor.cpp | 5 +++++ src/plugins/texteditor/texteditor.cpp | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/plugins/texteditor/markdowneditor.cpp b/src/plugins/texteditor/markdowneditor.cpp index 935d215f321..3532b6a4fa0 100644 --- a/src/plugins/texteditor/markdowneditor.cpp +++ b/src/plugins/texteditor/markdowneditor.cpp @@ -83,6 +83,7 @@ public: context->setWidget(m_textEditorWidget); context->setContext(Context(MARKDOWNVIEWER_TEXT_CONTEXT)); ICore::addContextObject(context); + m_lineColumnButton = new LineColumnButton(m_textEditorWidget); m_splitter->addWidget(m_textEditorWidget); // sets splitter->focusWidget() on non-Windows m_splitter->addWidget(m_previewWidget); @@ -115,6 +116,7 @@ public: m_toggleEditorVisible->setCheckable(true); m_toggleEditorVisible->setChecked(showEditor); m_textEditorWidget->setVisible(showEditor); + m_lineColumnButton->setVisible(showEditor); auto button = new CommandButton(EMPHASIS_ACTION); button->setText("i"); @@ -150,6 +152,7 @@ public: for (auto button : m_markDownButtons) m_toolbarLayout->addWidget(button); m_toolbarLayout->addStretch(); + m_toolbarLayout->addWidget(m_lineColumnButton); m_toolbarLayout->addWidget(m_togglePreviewVisible); m_toolbarLayout->addWidget(m_toggleEditorVisible); m_toolbarLayout->addWidget(m_swapViews); @@ -210,6 +213,7 @@ public: m_togglePreviewVisible); for (auto button : m_markDownButtons) button->setVisible(visible); + m_lineColumnButton->setVisible(visible); saveViewSettings(); }); connect(m_togglePreviewVisible, @@ -443,6 +447,7 @@ private: QWidget m_toolbar; QHBoxLayout *m_toolbarLayout; QList m_markDownButtons; + LineColumnButton *m_lineColumnButton; CommandButton *m_toggleEditorVisible; CommandButton *m_togglePreviewVisible; CommandButton *m_swapViews; diff --git a/src/plugins/texteditor/texteditor.cpp b/src/plugins/texteditor/texteditor.cpp index bb71933e0e7..653bd310ebb 100644 --- a/src/plugins/texteditor/texteditor.cpp +++ b/src/plugins/texteditor/texteditor.cpp @@ -164,7 +164,7 @@ LineColumnButton::LineColumnButton(TextEditorWidget *parent) m_d->m_editor = parent; connect(m_d->m_editor, &QPlainTextEdit::cursorPositionChanged, this, &LineColumnButton::update); connect(this, &QToolButton::clicked, ActionManager::instance(), [this] { - emit m_d->m_editor->activateEditor(EditorManager::IgnoreNavigationHistory); + m_d->m_editor->setFocus(); QMetaObject::invokeMethod( ActionManager::instance(), [] {