From 9bedece067a2298899e5a9c61c62bce82d0c54a7 Mon Sep 17 00:00:00 2001 From: Raul Metsma Date: Wed, 21 Sep 2022 10:16:08 +0300 Subject: [PATCH] Add accessible texts to UI elements (#1086) IB-7305 Signed-off-by: Raul Metsma Signed-off-by: Raul Metsma --- client/Application.cpp | 8 + client/MainWindow.cpp | 7 +- client/MainWindow.ui | 1260 ++++++++++++++--------------- client/dialogs/SettingsDialog.cpp | 1 - client/dialogs/SettingsDialog.ui | 8 +- client/images/Logo_small.svg | 7 +- client/translations/en.ts | 4 + client/translations/et.ts | 4 + client/translations/ru.ts | 4 + 9 files changed, 636 insertions(+), 667 deletions(-) diff --git a/client/Application.cpp b/client/Application.cpp index cc0f46f61..2ec7bae17 100644 --- a/client/Application.cpp +++ b/client/Application.cpp @@ -64,6 +64,7 @@ class MacMenuBar {}; #include #include #include +#include #include #include #include @@ -337,6 +338,13 @@ Application::Application( int &argc, char **argv ) QDesktopServices::setUrlHandler(QStringLiteral("browse"), this, "browse"); QDesktopServices::setUrlHandler(QStringLiteral("mailto"), this, "mailTo"); + QAccessible::installFactory([](const QString &classname, QObject *object) { + QAccessibleInterface *interface = nullptr; + if (classname == QLatin1String("QSvgWidget") && object && object->isWidgetType()) + interface = new QAccessibleWidget(static_cast(object), QAccessible::StaticText); + return interface; + }); + installTranslator( &d->appTranslator ); installTranslator( &d->commonTranslator ); diff --git a/client/MainWindow.cpp b/client/MainWindow.cpp index 5ea8260c1..eb6f1c68d 100644 --- a/client/MainWindow.cpp +++ b/client/MainWindow.cpp @@ -92,12 +92,7 @@ MainWindow::MainWindow( QWidget *parent ) ui->version->setText(QStringLiteral("%1%2").arg(tr("Ver. "), qApp->applicationVersion())); connect(ui->version, &QPushButton::clicked, this, [this] {showSettings(SettingsDialog::DiagnosticsSettings);}); - QSvgWidget* coatOfArms = new QSvgWidget(ui->logo); - coatOfArms->setStyleSheet(QStringLiteral("border: none;")); - coatOfArms->load(QStringLiteral(":/images/Logo_small.svg")); - coatOfArms->resize( 80, 32 ); - coatOfArms->move( 15, 17 ); - + ui->coatOfArms->load(QStringLiteral(":/images/Logo_small.svg")); ui->signature->init( Pages::SignIntro, ui->signatureShadow, true ); ui->crypto->init( Pages::CryptoIntro, ui->cryptoShadow, false ); ui->myEid->init( Pages::MyEid, ui->myEidShadow, false ); diff --git a/client/MainWindow.ui b/client/MainWindow.ui index 4e663bb05..2de44128c 100644 --- a/client/MainWindow.ui +++ b/client/MainWindow.ui @@ -25,10 +25,7 @@ color: #000000 } - - - 0 - + 0 @@ -41,7 +38,208 @@ 0 - + + 0 + + + + + + 110 + 520 + + + + + 110 + 16777215 + + + + border: none; +background-color: #023664; + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + 0 + 0 + 110 + 65 + + + + border-bottom: 1px solid rgba(255, 255, 255, 0.1) + + + + + 15 + 17 + 80 + 32 + + + + Qt::TabFocus + + + DigiDoc + + + border: none + + + + + + + 0 + 65 + 110 + 110 + + + + PointingHandCursor + + + Select signature page + + + border: none; + + + + + + 0 + 175 + 110 + 110 + + + + PointingHandCursor + + + Select crypto page + + + border: none; + + + + + + 0 + 285 + 110 + 110 + + + + PointingHandCursor + + + Select my EID page + + + border: none; + + + + + + 105 + 0 + 5 + 4000 + + + + background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0, stop: 0 rgba(0,0,0,0.0), stop: 1 rgba(0,0,0,0.65)); + + + + + + + 0 + 395 + 110 + 5 + + + + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); + + + + + + 0 + 285 + 110 + 5 + + + + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); + + + + + + 0 + 175 + 110 + 5 + + + + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); + + + + + + 5 + 571 + 100 + 16 + + + + + Roboto + 12 + true + + + + PointingHandCursor + + + Qt::NoContextMenu + + + color: #006EB5; + + + version + + + + + @@ -58,7 +256,7 @@ background-color: #FFFFFF; - + 0 @@ -74,43 +272,6 @@ 0 - - - - - 0 - 0 - - - - - 110 - 65 - - - - PointingHandCursor - - - background-color: #023565; -border: solid rgba(255, 255, 255, 0.1); border-width: 0px 0px 1px 0px - - - - - 105 - 0 - 5 - 65 - - - - background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0, stop: 0 rgba(0,0,0,0.0), stop: 1 rgba(0,0,0,0.65)); - - - - - @@ -273,383 +434,172 @@ QToolButton:hover { - - - - 0 + + + + + 0 + 65 + - - - - - 110 - 520 - - - - - 97 - 16777215 - - - - border: none; -background-color: #023664; - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - 0 - 0 - 110 - 110 - + + #page{ + background-color: #023565; + border: none; +} + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 1 + 0 + - 110 - 110 + 914 + 4 - - PointingHandCursor - - - Select signature page - - - border: none; - - - - - - 0 - 110 - 110 - 110 - - - + - 110 - 110 + 16777215 + 4 - - PointingHandCursor - - - Select crypto page - - border: none; + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #c8c8c8, stop: 1 #F4F5F6); +border: none; - - - - 0 - 220 - 110 - 110 - - + + + - 110 - 110 + 914 + 350 - - PointingHandCursor - - - Select my EID page - - - border: none; - - - - - - 105 - 0 - 5 - 4000 - - - - - 0 - 0 - - - + - 0 - 4000 + 16777215 + 16777215 - background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0, stop: 0 rgba(0,0,0,0.0), stop: 1 rgba(0,0,0,0.65)); - - - - - - true - - - - 0 - 330 - 110 - 5 - - - - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); - - - - - true - - - - 0 - 220 - 110 - 5 - - - - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); - - - - - true - - - - 0 - 110 - 110 - 5 - - - - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 rgba(0,0,0,0.65), stop: 1 rgba(0,0,0,0.0)); - - - - - - 5 - 506 - 100 - 16 - - - - - Roboto - 12 - true - - - - PointingHandCursor - - - Qt::NoContextMenu - - - color: #006EB5; - - - version - - - - - - - - - 0 - 65 - - - - #page{ - background-color: #023565; - border: none; + #startScreen{ + border:none; + background-color: #ffffff; } - - - - 0 - - 0 - - - 0 + + QFrame::StyledPanel - - 0 + + QFrame::Raised - + 0 - - - - - 1 - 0 - - - - - 914 - 4 - - - - - 16777215 - 4 - - - - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #c8c8c8, stop: 1 #F4F5F6); -border: none; - - - - - - - - 914 - 350 - - - - - 16777215 - 16777215 - - - - #startScreen{ - border:none; - background-color: #ffffff; -} - - - QFrame::StyledPanel - - - QFrame::Raised - - - 0 - - - - QWidget#signPage { background-image: url(:/images/bg_lovid.svg); + + + QWidget#signPage { background-image: url(:/images/bg_lovid.svg); background-repeat: repeat-x; background-position: bottom; } - - - - - - Qt::Vertical - - - - 20 - 60 - - - - - - - - - 0 - 128 - - - - - - - - 20 - 75 - true - - - - border: none; + + + + + + Qt::Vertical + + + + 20 + 60 + + + + + + + + + 0 + 128 + + + + + + + + 20 + true + + + + border: none; color: #041E42; - - - 0 - - - Drag file here for signing ... - - - Qt::AlignCenter - - - - - - - - 240 - 45 - - - - - 240 - 45 - - - - - 14 - false - false - - - - PointingHandCursor - - - Open file for signing or verifying - - - QPushButton { + + + 0 + + + Drag file here for signing ... + + + Qt::AlignCenter + + + + + + + + 240 + 45 + + + + + 240 + 45 + + + + + 14 + false + false + + + + PointingHandCursor + + + Open file for signing or verifying + + + QPushButton { padding: 6px 10px; border-radius: 2px; background-color: #006eb5; @@ -666,91 +616,91 @@ QPushButton:hover:!pressed { QPushButton:disabled { background-color: #BEDBED; } - - - Open file for signing or verifying - - - - - - - - - - Qt::Vertical - - - - 20 - 230 - - - - - - - - - - QWidget#cryptoPage { + + + Open file for signing or verifying + + + + + + + + + + Qt::Vertical + + + + 20 + 230 + + + + + + + + + + QWidget#cryptoPage { background-image: url(:/images/bg_lovid.svg); background-repeat: repeat-x; background-position: bottom; } - - - - - - Qt::Vertical - - - - 20 - 60 - - - - - - - - - 0 - 128 - - - - - - - - 240 - 45 - - - - - 240 - 45 - - - - - 14 - false - false - - - - PointingHandCursor - - - Open file for encryption or decryption - - - QPushButton { + + + + + + Qt::Vertical + + + + 20 + 60 + + + + + + + + + 0 + 128 + + + + + + + + 240 + 45 + + + + + 240 + 45 + + + + + 14 + false + false + + + + PointingHandCursor + + + Open file for encryption or decryption + + + QPushButton { padding: 6px 10px; border-radius: 2px; background-color: #006eb5; @@ -767,202 +717,204 @@ QPushButton:hover:!pressed { QPushButton:disabled { background-color: #BEDBED; } - - - Open file for encryption or decryption - - - - - - - - 20 - 75 - true - - - - border: none; + + + Open file for encryption or decryption + + + + + + + + 20 + true + + + + border: none; color: #041E42; - - - 0 - - - Drag file here for encryption ... - - - Qt::AlignCenter - - - - - - - - - - Qt::Vertical - - - - 20 - 230 - - - - - - - - - - - 3 + + + 0 + + + Drag file here for encryption ... + + + Qt::AlignCenter + + + + + + + + + + Qt::Vertical - - 0 + + + 20 + 230 + - - 0 + + + + + + + + + 3 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 172 + - - 0 + + + 16777215 + 186 + - - 0 + + border: none; - - - - - 0 - 172 - - - - - 16777215 - 186 - - - - border: none; - - - - - - - - - - QWidget#noReaderInfo { + + + + + + + + + QWidget#noReaderInfo { background-image: url(:/images/bg_lovid.svg); background-repeat: repeat-x; background-position: bottom; } - - - - - - Qt::Vertical - - - - 20 - 52 - - - - - - - - - 0 - 128 - - - - - - - - 16777215 - 45 - - - - - 20 - 75 - true - - - - Qt::TabFocus - - - color: #041E42; - - - Connect the card reader to your computer and insert your ID card into the reader - - - Qt::AlignCenter - - - - - - - - 0 - 45 - - - - - 16777215 - 45 - - - - - - - - - - - Qt::Vertical - - - - 20 - 230 - - - - - - - - - - - - - - - + + + + + + Qt::Vertical + + + + 20 + 52 + + + + + + + + + 0 + 128 + + + + + + + + 16777215 + 45 + + + + + 20 + true + + + + Qt::TabFocus + + + color: #041E42; + + + Connect the card reader to your computer and insert your ID card into the reader + + + Qt::AlignCenter + + + + + + + + 0 + 45 + + + + + 16777215 + 45 + + + + + + + + + + + Qt::Vertical + + + + 20 + 230 + + + + + + + + + + + + + + + QSvgWidget + QWidget +
QSvgWidget.h
+ 1 +
CardWidget QWidget diff --git a/client/dialogs/SettingsDialog.cpp b/client/dialogs/SettingsDialog.cpp index b26d3ae7a..56baf2152 100644 --- a/client/dialogs/SettingsDialog.cpp +++ b/client/dialogs/SettingsDialog.cpp @@ -147,7 +147,6 @@ SettingsDialog::SettingsDialog(QWidget *parent) // pageDiagnostics ui->structureFunds->load(QStringLiteral(":/images/Struktuurifondid.svg")); - ui->pageInfoLayout->setAlignment(ui->structureFunds, Qt::AlignCenter); ui->contact->setFont(regularFont); ui->txtDiagnostics->setFont(regularFont); diff --git a/client/dialogs/SettingsDialog.ui b/client/dialogs/SettingsDialog.ui index c0de446aa..24e5f82a3 100644 --- a/client/dialogs/SettingsDialog.ui +++ b/client/dialogs/SettingsDialog.ui @@ -1036,7 +1036,7 @@ QScrollBar::sub-line:vertical { 10 - + @@ -1050,6 +1050,12 @@ QScrollBar::sub-line:vertical { 61 + + Qt::TabFocus + + + The project is supported by the European Regional Development Fund + diff --git a/client/images/Logo_small.svg b/client/images/Logo_small.svg index 250d43b53..768799a72 100644 --- a/client/images/Logo_small.svg +++ b/client/images/Logo_small.svg @@ -1,12 +1,9 @@ - Logo - Väike - Created with Sketch. - - - + + diff --git a/client/translations/en.ts b/client/translations/en.ts index 89cc7140f..3f89690ab 100644 --- a/client/translations/en.ts +++ b/client/translations/en.ts @@ -2753,6 +2753,10 @@ Additional licenses and components Restart DigiDoc4 Client to activate logging. Read more <a href="https://www.id.ee/en/article/log-file-generation-in-digidoc4-client/">here</a>. Restart DigiDoc4 Client to activate logging. Read more <a href="https://www.id.ee/en/article/log-file-generation-in-digidoc4-client/">here</a>. + + The project is supported by the European Regional Development Fund + The project is supported by the European Regional Development Fund + SignatureDialog diff --git a/client/translations/et.ts b/client/translations/et.ts index f648eeda1..fff9b3513 100644 --- a/client/translations/et.ts +++ b/client/translations/et.ts @@ -2753,6 +2753,10 @@ Täiendavad litsentsid ja komponendid Restart DigiDoc4 Client to activate logging. Read more <a href="https://www.id.ee/en/article/log-file-generation-in-digidoc4-client/">here</a>. Logimise aktiveerimiseks taaskäivita DigiDoc4 klient. Loe täpsemalt <a href="https://www.id.ee/artikkel/logifaili-genereerimine-digidoc4-kliendis/">siit</a>. + + The project is supported by the European Regional Development Fund + Projekti on toetatud Euroopa Liidu Regionaalarengu Fondist + SignatureDialog diff --git a/client/translations/ru.ts b/client/translations/ru.ts index c6ea665a3..c029c05e0 100644 --- a/client/translations/ru.ts +++ b/client/translations/ru.ts @@ -2756,6 +2756,10 @@ Additional licenses and components Restart DigiDoc4 Client to activate logging. Read more <a href="https://www.id.ee/en/article/log-file-generation-in-digidoc4-client/">here</a>. Перезапустите клиент DigiDoc4, чтобы активировать ведение журнала. Подробнее читайте <a href="https://www.id.ee/ru/artikkel/generirovanie-log-fajla-v-kliente-digidoc4/">здесь</a>. + + The project is supported by the European Regional Development Fund + Проект поддерживается Европейским фондом регионального развития + SignatureDialog