Merge pull request #6333 from Morph1984/swkbd-confirm-text

applets/swkbd: Send the correct text string on TextCheck::Confirm
This commit is contained in:
bunnei 2021-05-20 22:42:54 -07:00 committed by GitHub
commit 136e8e829f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -404,12 +404,16 @@ void QtSoftwareKeyboardDialog::ShowTextCheckDialog(
OverlayDialog dialog(this, system, QString{}, QString::fromStdU16String(text_check_message), OverlayDialog dialog(this, system, QString{}, QString::fromStdU16String(text_check_message),
tr("Cancel"), tr("OK"), Qt::AlignCenter); tr("Cancel"), tr("OK"), Qt::AlignCenter);
if (dialog.exec() == QDialog::Accepted) { if (dialog.exec() != QDialog::Accepted) {
emit SubmitNormalText(SwkbdResult::Ok, current_text); StartInputThread();
break; break;
} }
StartInputThread(); auto text = ui->topOSK->currentIndex() == 1
? ui->text_edit_osk->toPlainText().toStdU16String()
: ui->line_edit_osk->text().toStdU16String();
emit SubmitNormalText(SwkbdResult::Ok, std::move(text));
break; break;
} }
} }
@ -480,11 +484,7 @@ void QtSoftwareKeyboardDialog::open() {
void QtSoftwareKeyboardDialog::reject() { void QtSoftwareKeyboardDialog::reject() {
// Pressing the ESC key in a dialog calls QDialog::reject(). // Pressing the ESC key in a dialog calls QDialog::reject().
// We will override this behavior to the "Cancel" action on the software keyboard. // We will override this behavior to the "Cancel" action on the software keyboard.
if (is_inline) { TranslateButtonPress(HIDButton::X);
emit SubmitInlineText(SwkbdReplyType::DecidedCancel, current_text, cursor_position);
} else {
emit SubmitNormalText(SwkbdResult::Cancel, current_text);
}
} }
void QtSoftwareKeyboardDialog::keyPressEvent(QKeyEvent* event) { void QtSoftwareKeyboardDialog::keyPressEvent(QKeyEvent* event) {