mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-03-20 12:39:47 +01:00
Merge bitcoin-core/gui#271: Don't clear console prompt when font resizing
7962e0dde8qt: Do not clear console prompt when font resizing (Hennadii Stepanov)d2cc339005qt, refactor: Drop redundant history cleaning in RPC console (Hennadii Stepanov)4f0ae472e2qt: Untie irrelevant signal-slot parameters (Hennadii Stepanov) Pull request description: On master, a console resize event will clear the prompt. To fix this, we store the content of the prompt and re-set it upon a resize. This preserves the prompt text throughout resizes. The text will still clear when you click the clear button, as it should. **Master** | Before Resize | After Resize | | ----------------- | ------------ | |  |  | **PR** | Before Resize | After Resize | | ----------------- | ------------ | |  |  | Closes #269 ACKs for top commit: laanwj: Code review ACK7962e0dde8hebasto: ACK7962e0dde8Talkless: tACK7962e0dde8, tested on Debian Sid with Qt 5.15.2 Tree-SHA512: a6f19d3f80e2e47725cff5d6e15862b6cb793a65dfcaded15f23bba051088cd3317f068f93290c9b09d0a90f5fcac1c5a4610cc417cc5961ba6d005fe5049ab0
This commit is contained in:
@@ -503,7 +503,7 @@ RPCConsole::RPCConsole(interfaces::Node& node, const PlatformStyle *_platformSty
|
||||
ui->lineEdit->setMaxLength(16 * 1024 * 1024);
|
||||
ui->messagesWidget->installEventFilter(this);
|
||||
|
||||
connect(ui->clearButton, &QPushButton::clicked, this, &RPCConsole::clear);
|
||||
connect(ui->clearButton, &QPushButton::clicked, [this] { clear(); });
|
||||
connect(ui->fontBiggerButton, &QPushButton::clicked, this, &RPCConsole::fontBigger);
|
||||
connect(ui->fontSmallerButton, &QPushButton::clicked, this, &RPCConsole::fontSmaller);
|
||||
connect(ui->btnClearTrafficGraph, &QPushButton::clicked, ui->trafficGraph, &TrafficGraphWidget::clear);
|
||||
@@ -771,20 +771,15 @@ void RPCConsole::setFontSize(int newSize)
|
||||
|
||||
// clear console (reset icon sizes, default stylesheet) and re-add the content
|
||||
float oldPosFactor = 1.0 / ui->messagesWidget->verticalScrollBar()->maximum() * ui->messagesWidget->verticalScrollBar()->value();
|
||||
clear(false);
|
||||
clear(/* keep_prompt */ true);
|
||||
ui->messagesWidget->setHtml(str);
|
||||
ui->messagesWidget->verticalScrollBar()->setValue(oldPosFactor * ui->messagesWidget->verticalScrollBar()->maximum());
|
||||
}
|
||||
|
||||
void RPCConsole::clear(bool clearHistory)
|
||||
void RPCConsole::clear(bool keep_prompt)
|
||||
{
|
||||
ui->messagesWidget->clear();
|
||||
if(clearHistory)
|
||||
{
|
||||
history.clear();
|
||||
historyPtr = 0;
|
||||
}
|
||||
ui->lineEdit->clear();
|
||||
if (!keep_prompt) ui->lineEdit->clear();
|
||||
ui->lineEdit->setFocus();
|
||||
|
||||
// Add smoothly scaled icon images.
|
||||
|
||||
@@ -99,7 +99,7 @@ private Q_SLOTS:
|
||||
void updateDetailWidget();
|
||||
|
||||
public Q_SLOTS:
|
||||
void clear(bool clearHistory = true);
|
||||
void clear(bool keep_prompt = false);
|
||||
void fontBigger();
|
||||
void fontSmaller();
|
||||
void setFontSize(int newSize);
|
||||
|
||||
Reference in New Issue
Block a user