Fixes to ctrl+backspace behavior (#5013)

This commit is contained in:
Herman Stornes
2023-12-16 14:40:05 +01:00
committed by GitHub
parent 918b8ca4bd
commit b78b57b454
7 changed files with 44 additions and 4 deletions
+16
View File
@@ -113,6 +113,7 @@ void SettingsDialog::initUi()
edit->setClearButtonEnabled(true);
edit->findChild<QAbstractButton *>()->setIcon(
QPixmap(":/buttons/clearSearch.png"));
this->ui_.search->installEventFilter(this);
QObject::connect(edit.getElement(), &QLineEdit::textChanged, this,
&SettingsDialog::filterElements);
@@ -206,6 +207,21 @@ void SettingsDialog::setElementFilter(const QString &query)
this->ui_.search->setText(query);
}
bool SettingsDialog::eventFilter(QObject *object, QEvent *event)
{
if (object == this->ui_.search && event->type() == QEvent::KeyPress)
{
auto *keyEvent = dynamic_cast<QKeyEvent *>(event);
if (keyEvent == QKeySequence::DeleteStartOfWord &&
this->ui_.search->selectionLength() > 0)
{
this->ui_.search->backspace();
return true;
}
}
return false;
}
void SettingsDialog::addTabs()
{
this->ui_.tabContainer->setSpacing(0);