diff --git a/CHANGELOG.md b/CHANGELOG.md index e54af04f..5846bec4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - Bugfix: Don't create native messaging manifest file if browser directory doesn't exist. (#6116) - Bugfix: Make reply-cancel button less coarse-grained. (#6106) - Bugfix: Fixed missing BetterTTV live updates of emotes. (#6132) +- Bugfix: Handle CMD + BACKSPACE behavior explicitly in main chat dialog input for macOS. (#6111) - Dev: Conan will no longer generate a `CMakeUserPresets.json` file. (#6117) - Dev: Pass `--force-openssl` when installing from CMake in Qt 6.8+. (#6129) diff --git a/src/widgets/helper/ResizingTextEdit.cpp b/src/widgets/helper/ResizingTextEdit.cpp index 0ac7e0e8..cb373e99 100644 --- a/src/widgets/helper/ResizingTextEdit.cpp +++ b/src/widgets/helper/ResizingTextEdit.cpp @@ -131,6 +131,18 @@ bool ResizingTextEdit::eventFilter(QObject *obj, QEvent *event) } void ResizingTextEdit::keyPressEvent(QKeyEvent *event) { +#ifdef Q_OS_MACOS + if ((event->modifiers() == Qt::ControlModifier) && + (event->key() == Qt::Key_Backspace)) + { + QTextCursor cursor = this->textCursor(); + cursor.movePosition(QTextCursor::StartOfLine, QTextCursor::KeepAnchor); + cursor.removeSelectedText(); + this->setTextCursor(cursor); + return; + } +#endif + event->ignore(); this->keyPressed.invoke(event);