diff options
| author | Jonas Schnelli <[email protected]> | 2015-03-13 21:51:27 +0100 |
|---|---|---|
| committer | Luke Dashjr <[email protected]> | 2016-12-29 11:43:28 +0000 |
| commit | fc95daa97f324f6a8b3643a3d3c5e8f909d46c35 (patch) | |
| tree | dae2701c86e23ddf50969084b3c28cb9597f7a87 /src | |
| parent | Merge #9436: test: Include tx data in EXTRA_DIST (diff) | |
| download | discoin-fc95daa97f324f6a8b3643a3d3c5e8f909d46c35.tar.xz discoin-fc95daa97f324f6a8b3643a3d3c5e8f909d46c35.zip | |
Qt/RPCConsole: Save current command entry when browsing history
Shell-like, but doesn't store changed history commands until executing it.
Diffstat (limited to 'src')
| -rw-r--r-- | src/qt/rpcconsole.cpp | 10 | ||||
| -rw-r--r-- | src/qt/rpcconsole.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp index cfe197de2..5610e8b6c 100644 --- a/src/qt/rpcconsole.cpp +++ b/src/qt/rpcconsole.cpp @@ -751,6 +751,8 @@ void RPCConsole::on_lineEdit_returnPressed() if(!cmd.isEmpty()) { + cmdBeforeBrowsing = QString(); + message(CMD_REQUEST, cmd); Q_EMIT cmdRequest(cmd); // Remove command, if already in history @@ -769,6 +771,11 @@ void RPCConsole::on_lineEdit_returnPressed() void RPCConsole::browseHistory(int offset) { + // store current text when start browsing through the history + if (historyPtr == history.size()) { + cmdBeforeBrowsing = ui->lineEdit->text(); + } + historyPtr += offset; if(historyPtr < 0) historyPtr = 0; @@ -777,6 +784,9 @@ void RPCConsole::browseHistory(int offset) QString cmd; if(historyPtr < history.size()) cmd = history.at(historyPtr); + else if (!cmdBeforeBrowsing.isNull()) { + cmd = cmdBeforeBrowsing; + } ui->lineEdit->setText(cmd); } diff --git a/src/qt/rpcconsole.h b/src/qt/rpcconsole.h index ab8c3dc91..e1698711d 100644 --- a/src/qt/rpcconsole.h +++ b/src/qt/rpcconsole.h @@ -140,6 +140,7 @@ private: ClientModel *clientModel; QStringList history; int historyPtr; + QString cmdBeforeBrowsing; QList<NodeId> cachedNodeids; const PlatformStyle *platformStyle; RPCTimerInterface *rpcTimerInterface; |