diff --git a/assets/l10n/app_en.arb b/assets/l10n/app_en.arb index b0b3523746..d3cf351d8a 100644 --- a/assets/l10n/app_en.arb +++ b/assets/l10n/app_en.arb @@ -763,6 +763,10 @@ "@loginMethodDivider": { "description": "Text on the divider between the username/password form and the third-party login options. Uppercase (for languages with letter case)." }, + "loginMethodDividerSemanticLabel": "Log-in alternatives", + "@loginMethodDividerSemanticLabel": { + "description": "Semantic label for OrDivider in login page." + }, "signInWithFoo": "Sign in with {method}", "@signInWithFoo": { "description": "Button to use {method} to sign in to the app.", diff --git a/lib/generated/l10n/zulip_localizations.dart b/lib/generated/l10n/zulip_localizations.dart index e76f70ca2b..21aaf2ac6b 100644 --- a/lib/generated/l10n/zulip_localizations.dart +++ b/lib/generated/l10n/zulip_localizations.dart @@ -1179,6 +1179,12 @@ abstract class ZulipLocalizations { /// **'OR'** String get loginMethodDivider; + /// Semantic label for OrDivider in login page. + /// + /// In en, this message translates to: + /// **'Log-in alternatives'** + String get loginMethodDividerSemanticLabel; + /// Button to use {method} to sign in to the app. /// /// In en, this message translates to: diff --git a/lib/generated/l10n/zulip_localizations_ar.dart b/lib/generated/l10n/zulip_localizations_ar.dart index 8bbaefedb2..7b438c9b49 100644 --- a/lib/generated/l10n/zulip_localizations_ar.dart +++ b/lib/generated/l10n/zulip_localizations_ar.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsAr extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_de.dart b/lib/generated/l10n/zulip_localizations_de.dart index 2e5d76a19d..943c03961b 100644 --- a/lib/generated/l10n/zulip_localizations_de.dart +++ b/lib/generated/l10n/zulip_localizations_de.dart @@ -647,6 +647,9 @@ class ZulipLocalizationsDe extends ZulipLocalizations { @override String get loginMethodDivider => 'ODER'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Anmelden mit $method'; diff --git a/lib/generated/l10n/zulip_localizations_el.dart b/lib/generated/l10n/zulip_localizations_el.dart index 546d67c58a..8f56b5cf4e 100644 --- a/lib/generated/l10n/zulip_localizations_el.dart +++ b/lib/generated/l10n/zulip_localizations_el.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsEl extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_en.dart b/lib/generated/l10n/zulip_localizations_en.dart index f7797e261b..7ee48c65c2 100644 --- a/lib/generated/l10n/zulip_localizations_en.dart +++ b/lib/generated/l10n/zulip_localizations_en.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsEn extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_es.dart b/lib/generated/l10n/zulip_localizations_es.dart index c9bb85e3f4..224765bf8f 100644 --- a/lib/generated/l10n/zulip_localizations_es.dart +++ b/lib/generated/l10n/zulip_localizations_es.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsEs extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_fr.dart b/lib/generated/l10n/zulip_localizations_fr.dart index a56381bc5f..5ffd89f56d 100644 --- a/lib/generated/l10n/zulip_localizations_fr.dart +++ b/lib/generated/l10n/zulip_localizations_fr.dart @@ -644,6 +644,9 @@ class ZulipLocalizationsFr extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_he.dart b/lib/generated/l10n/zulip_localizations_he.dart index 6d58801b0e..0d1df7446e 100644 --- a/lib/generated/l10n/zulip_localizations_he.dart +++ b/lib/generated/l10n/zulip_localizations_he.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsHe extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_hu.dart b/lib/generated/l10n/zulip_localizations_hu.dart index 942d73b6de..37c7f353b5 100644 --- a/lib/generated/l10n/zulip_localizations_hu.dart +++ b/lib/generated/l10n/zulip_localizations_hu.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsHu extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_it.dart b/lib/generated/l10n/zulip_localizations_it.dart index eb0bea54f2..62b19de451 100644 --- a/lib/generated/l10n/zulip_localizations_it.dart +++ b/lib/generated/l10n/zulip_localizations_it.dart @@ -641,6 +641,9 @@ class ZulipLocalizationsIt extends ZulipLocalizations { @override String get loginMethodDivider => 'O'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Accedi con $method'; diff --git a/lib/generated/l10n/zulip_localizations_ja.dart b/lib/generated/l10n/zulip_localizations_ja.dart index db0e7a0780..5347f076ad 100644 --- a/lib/generated/l10n/zulip_localizations_ja.dart +++ b/lib/generated/l10n/zulip_localizations_ja.dart @@ -614,6 +614,9 @@ class ZulipLocalizationsJa extends ZulipLocalizations { @override String get loginMethodDivider => 'または'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return '$methodでログイン'; diff --git a/lib/generated/l10n/zulip_localizations_nb.dart b/lib/generated/l10n/zulip_localizations_nb.dart index 60b9739d88..15d0541060 100644 --- a/lib/generated/l10n/zulip_localizations_nb.dart +++ b/lib/generated/l10n/zulip_localizations_nb.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsNb extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/generated/l10n/zulip_localizations_pl.dart b/lib/generated/l10n/zulip_localizations_pl.dart index bf31ba7d86..98da3d6d57 100644 --- a/lib/generated/l10n/zulip_localizations_pl.dart +++ b/lib/generated/l10n/zulip_localizations_pl.dart @@ -641,6 +641,9 @@ class ZulipLocalizationsPl extends ZulipLocalizations { @override String get loginMethodDivider => 'LUB'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Logowanie z $method'; diff --git a/lib/generated/l10n/zulip_localizations_ru.dart b/lib/generated/l10n/zulip_localizations_ru.dart index 3673e97924..046d93efea 100644 --- a/lib/generated/l10n/zulip_localizations_ru.dart +++ b/lib/generated/l10n/zulip_localizations_ru.dart @@ -642,6 +642,9 @@ class ZulipLocalizationsRu extends ZulipLocalizations { @override String get loginMethodDivider => 'ИЛИ'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Войти с помощью $method'; diff --git a/lib/generated/l10n/zulip_localizations_sk.dart b/lib/generated/l10n/zulip_localizations_sk.dart index a927a4d27d..db88ac909b 100644 --- a/lib/generated/l10n/zulip_localizations_sk.dart +++ b/lib/generated/l10n/zulip_localizations_sk.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsSk extends ZulipLocalizations { @override String get loginMethodDivider => 'alebo'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Prihlásiť sa pomocou $method'; diff --git a/lib/generated/l10n/zulip_localizations_sl.dart b/lib/generated/l10n/zulip_localizations_sl.dart index d58235e92e..5d2f0b041f 100644 --- a/lib/generated/l10n/zulip_localizations_sl.dart +++ b/lib/generated/l10n/zulip_localizations_sl.dart @@ -653,6 +653,9 @@ class ZulipLocalizationsSl extends ZulipLocalizations { @override String get loginMethodDivider => 'ALI'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Prijava z $method'; diff --git a/lib/generated/l10n/zulip_localizations_uk.dart b/lib/generated/l10n/zulip_localizations_uk.dart index e83f72029d..7af082ba39 100644 --- a/lib/generated/l10n/zulip_localizations_uk.dart +++ b/lib/generated/l10n/zulip_localizations_uk.dart @@ -642,6 +642,9 @@ class ZulipLocalizationsUk extends ZulipLocalizations { @override String get loginMethodDivider => 'АБО'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Увійти з $method'; diff --git a/lib/generated/l10n/zulip_localizations_zh.dart b/lib/generated/l10n/zulip_localizations_zh.dart index 267df9335e..76afabe471 100644 --- a/lib/generated/l10n/zulip_localizations_zh.dart +++ b/lib/generated/l10n/zulip_localizations_zh.dart @@ -628,6 +628,9 @@ class ZulipLocalizationsZh extends ZulipLocalizations { @override String get loginMethodDivider => 'OR'; + @override + String get loginMethodDividerSemanticLabel => 'Log-in alternatives'; + @override String signInWithFoo(String method) { return 'Sign in with $method'; diff --git a/lib/widgets/login.dart b/lib/widgets/login.dart index 664a24509a..f480fa52a0 100644 --- a/lib/widgets/login.dart +++ b/lib/widgets/login.dart @@ -677,17 +677,20 @@ class OrDivider extends StatelessWidget { return Padding( padding: const EdgeInsets.symmetric(vertical: 10), - child: Row(crossAxisAlignment: CrossAxisAlignment.center, children: [ - divider, - Padding( - padding: const EdgeInsets.symmetric(horizontal: 5), - child: Text(zulipLocalizations.loginMethodDivider, - textAlign: TextAlign.center, - style: TextStyle( - color: designVariables.loginOrDividerText, - height: 1.5, - ).merge(weightVariableTextStyle(context, wght: 600)))), - divider, - ])); + child: Semantics( + excludeSemantics: true, + label: zulipLocalizations.loginMethodDividerSemanticLabel, + child: Row(crossAxisAlignment: CrossAxisAlignment.center, children: [ + divider, + Padding( + padding: const EdgeInsets.symmetric(horizontal: 5), + child: Text(zulipLocalizations.loginMethodDivider, + textAlign: TextAlign.center, + style: TextStyle( + color: designVariables.loginOrDividerText, + height: 1.5, + ).merge(weightVariableTextStyle(context, wght: 600)))), + divider, + ]))); } }