Fix Ctrl+Backspace bug after Select All in chat search popup (#4536)

This commit is contained in:
Van Huynh 2023-05-07 17:10:22 -04:00 committed by GitHub
parent caa0220ce6
commit 68f14d3425
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 19 additions and 0 deletions

View file

@ -9,6 +9,7 @@
- Bugfix: Fixed link tooltips not showing unless the thumbnail setting was enabled. (#4597)
- Bugfix: Domains starting with `http` are now parsed as links again. (#4598)
- Bugfix: Fixed click effects on buttons not being antialiased. (#4473)
- Bugfix: Fixed Ctrl+Backspace not working after Select All in chat search popup. (#4461)
- Dev: Added the ability to control the `followRedirect` mode for requests. (#4594)
## 2.4.3

View file

@ -185,6 +185,22 @@ void SearchPopup::showEvent(QShowEvent *)
this->search();
}
bool SearchPopup::eventFilter(QObject *object, QEvent *event)
{
if (object == this->searchInput_ && event->type() == QEvent::KeyPress)
{
QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
if (keyEvent->key() == Qt::Key_Backspace &&
keyEvent->modifiers() == Qt::ControlModifier &&
this->searchInput_->text() == this->searchInput_->selectedText())
{
this->searchInput_->clear();
return true;
}
}
return false;
}
void SearchPopup::search()
{
if (this->snapshot_.size() == 0)
@ -279,6 +295,7 @@ void SearchPopup::initLayout()
QPixmap(":/buttons/clearSearch.png"));
QObject::connect(this->searchInput_, &QLineEdit::textChanged,
this, &SearchPopup::search);
this->searchInput_->installEventFilter(this);
}
layout1->addLayout(layout2);

View file

@ -31,6 +31,7 @@ public:
protected:
virtual void updateWindowTitle();
void showEvent(QShowEvent *event) override;
bool eventFilter(QObject *object, QEvent *event) override;
private:
void initLayout();