aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/lua/luaplugin.cpp
diff options
context:
space:
mode:
authorMarcus Tillmanns <[email protected]>2024-08-06 13:05:26 +0200
committerMarcus Tillmanns <[email protected]>2025-10-30 13:58:27 +0000
commit67bdbc7cd484a0547e85947811e026cc794766e3 (patch)
treeff5ced24daaceee67bcee84cff154302d9008494 /src/plugins/lua/luaplugin.cpp
parent00b8518575983866287fb9c0443fb832932a0bc1 (diff)
Lua: Fix REPL input field history
Change-Id: I939ccd72fe8107a098d6dae66f3c240dfd50a88a Reviewed-by: Christian Stenger <[email protected]>
Diffstat (limited to 'src/plugins/lua/luaplugin.cpp')
-rw-r--r--src/plugins/lua/luaplugin.cpp20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/plugins/lua/luaplugin.cpp b/src/plugins/lua/luaplugin.cpp
index 347d4b53d25..c0048e259d6 100644
--- a/src/plugins/lua/luaplugin.cpp
+++ b/src/plugins/lua/luaplugin.cpp
@@ -240,12 +240,20 @@ public:
inputEdit->setReadOnly(true);
inputEdit->setHistoryCompleter(Utils::Key("LuaREPL.InputHistory"), false, 200);
- connect(inputEdit, &QLineEdit::returnPressed, this, [this, inputEdit] {
- inputEdit->setReadOnly(true);
- m_terminal->handleRequestResult(inputEdit->text());
- inputEdit->onEditingFinished();
- inputEdit->clear();
- });
+ // We need to use a QueuedConnection here so that we don't interfere with the history
+ // completer. Otherwise it will get out of sync between selecting an item and copying
+ // it into the text input field.
+ connect(
+ inputEdit,
+ &QLineEdit::returnPressed,
+ this,
+ [this, inputEdit] {
+ inputEdit->setReadOnly(true);
+ m_terminal->handleRequestResult(inputEdit->text());
+ inputEdit->clear();
+ },
+ Qt::QueuedConnection);
+
connect(
m_terminal,
&LuaReplView::inputRequested,