have key validation tolerate whitespace (fixes #1168)

Signed-off-by: Lenny McLennington <lenny@sneed.church>
This commit is contained in:
jdp_ 2022-11-04 22:01:50 -04:00 committed by Lenny McLennington
parent 21db985b54
commit c2a703b3d6
No known key found for this signature in database
GPG Key ID: F0467078ECA45FCB
2 changed files with 23 additions and 8 deletions

View File

@ -40,10 +40,8 @@
#include <QMessageBox>
#include <QFileDialog>
#include <QRegularExpression>
#include <QStandardPaths>
#include <QTabBar>
#include <QValidator>
#include <QVariant>
#include "settings/SettingsObject.h"
@ -82,9 +80,9 @@ APIPage::APIPage(QWidget *parent) :
connect(ui->pasteTypeComboBox, currentIndexChangedSignal, this, &APIPage::updateBaseURLPlaceholder);
// This function needs to be called even when the ComboBox's index is still in its default state.
updateBaseURLPlaceholder(ui->pasteTypeComboBox->currentIndex());
ui->baseURLEntry->setValidator(new QRegularExpressionValidator(validUrlRegExp, ui->baseURLEntry));
ui->msaClientID->setValidator(new QRegularExpressionValidator(validMSAClientID, ui->msaClientID));
ui->flameKey->setValidator(new QRegularExpressionValidator(validFlameKey, ui->flameKey));
ui->baseURLEntry->setValidator(new PMCKeyValidator(validUrlRegExp, ui->baseURLEntry));
ui->msaClientID->setValidator(new PMCKeyValidator(validMSAClientID, ui->msaClientID));
ui->flameKey->setValidator(new PMCKeyValidator(validFlameKey, ui->flameKey));
ui->metaURL->setPlaceholderText(BuildConfig.META_URL);
ui->userAgentLineEdit->setPlaceholderText(BuildConfig.USER_AGENT);

View File

@ -38,13 +38,30 @@
#pragma once
#include <QWidget>
#include <QValidator>
#include <QRegularExpression>
#include <QRegularExpressionValidator>
#include "ui/pages/BasePage.h"
#include <Application.h>
namespace Ui {
class APIPage;
}
namespace Ui
{
class APIPage;
class PMCKeyValidator;
};
class PMCKeyValidator : public QRegularExpressionValidator
{
using QRegularExpressionValidator::QRegularExpressionValidator;
virtual QValidator::State validate(QString& input, int& npos) const override
{
QString trimmed_input = input.trimmed();
input = trimmed_input;
return QRegularExpressionValidator::validate(trimmed_input, npos);
}
};
class APIPage : public QWidget, public BasePage
{