From 533928a4f13840018446895d1c656b1ce775a7ea Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 12 Sep 2022 10:58:58 -0600 Subject: [PATCH 01/11] Bump version to 2022.9.0 (#2068) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- src/Android/Properties/AndroidManifest.xml | 2 +- src/iOS.Autofill/Info.plist | 2 +- src/iOS.Extension/Info.plist | 2 +- src/iOS.ShareExtension/Info.plist | 2 +- src/iOS/Info.plist | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Android/Properties/AndroidManifest.xml b/src/Android/Properties/AndroidManifest.xml index 6dd07923a..c33860139 100644 --- a/src/Android/Properties/AndroidManifest.xml +++ b/src/Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@  - + diff --git a/src/iOS.Autofill/Info.plist b/src/iOS.Autofill/Info.plist index c8be55d62..fb30b5a6a 100644 --- a/src/iOS.Autofill/Info.plist +++ b/src/iOS.Autofill/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.autofill CFBundleShortVersionString - 2022.8.1 + 2022.9.0 CFBundleVersion 1 CFBundleLocalizations diff --git a/src/iOS.Extension/Info.plist b/src/iOS.Extension/Info.plist index 1d86d855c..2a16dfec1 100644 --- a/src/iOS.Extension/Info.plist +++ b/src/iOS.Extension/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.find-login-action-extension CFBundleShortVersionString - 2022.8.1 + 2022.9.0 CFBundleLocalizations en diff --git a/src/iOS.ShareExtension/Info.plist b/src/iOS.ShareExtension/Info.plist index a071e69b9..2ebd10a03 100644 --- a/src/iOS.ShareExtension/Info.plist +++ b/src/iOS.ShareExtension/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 2022.8.1 + 2022.9.0 CFBundleVersion 1 MinimumOSVersion diff --git a/src/iOS/Info.plist b/src/iOS/Info.plist index 2e00b2f5f..5442d50aa 100644 --- a/src/iOS/Info.plist +++ b/src/iOS/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden CFBundleShortVersionString - 2022.8.1 + 2022.9.0 CFBundleVersion 1 CFBundleIconName From 3f8e00985c8f003ed10bd5f3c8065ae3b246891e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 12 Sep 2022 11:47:52 -0600 Subject: [PATCH 02/11] Bump version to 2022.9.1 (#2069) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- src/Android/Properties/AndroidManifest.xml | 2 +- src/iOS.Autofill/Info.plist | 2 +- src/iOS.Extension/Info.plist | 2 +- src/iOS.ShareExtension/Info.plist | 2 +- src/iOS/Info.plist | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Android/Properties/AndroidManifest.xml b/src/Android/Properties/AndroidManifest.xml index c33860139..07ace3546 100644 --- a/src/Android/Properties/AndroidManifest.xml +++ b/src/Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@  - + diff --git a/src/iOS.Autofill/Info.plist b/src/iOS.Autofill/Info.plist index fb30b5a6a..41bd63e90 100644 --- a/src/iOS.Autofill/Info.plist +++ b/src/iOS.Autofill/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.autofill CFBundleShortVersionString - 2022.9.0 + 2022.9.1 CFBundleVersion 1 CFBundleLocalizations diff --git a/src/iOS.Extension/Info.plist b/src/iOS.Extension/Info.plist index 2a16dfec1..ed560ea65 100644 --- a/src/iOS.Extension/Info.plist +++ b/src/iOS.Extension/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden.find-login-action-extension CFBundleShortVersionString - 2022.9.0 + 2022.9.1 CFBundleLocalizations en diff --git a/src/iOS.ShareExtension/Info.plist b/src/iOS.ShareExtension/Info.plist index 2ebd10a03..1920b6c8f 100644 --- a/src/iOS.ShareExtension/Info.plist +++ b/src/iOS.ShareExtension/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 2022.9.0 + 2022.9.1 CFBundleVersion 1 MinimumOSVersion diff --git a/src/iOS/Info.plist b/src/iOS/Info.plist index 5442d50aa..636119c05 100644 --- a/src/iOS/Info.plist +++ b/src/iOS/Info.plist @@ -11,7 +11,7 @@ CFBundleIdentifier com.8bit.bitwarden CFBundleShortVersionString - 2022.9.0 + 2022.9.1 CFBundleVersion 1 CFBundleIconName From 87fb5cf2aeed4aa35a6b80f6d7e3ac50e829d478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Filipe=20da=20Silva=20Bispo?= Date: Wed, 14 Sep 2022 14:45:39 +0100 Subject: [PATCH 03/11] [SG-659] Fixed TOTP not showing for free user with classic plans. (#2071) * [SG-659] Fixed TOTP not showing for free user with classic plans. * [SG-659] Ran code format --- src/App/Pages/Vault/CipherDetailsPageViewModel.cs | 4 ++-- .../Vault/GroupingsPage/GroupingsPageViewModel.cs | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/App/Pages/Vault/CipherDetailsPageViewModel.cs b/src/App/Pages/Vault/CipherDetailsPageViewModel.cs index e90ace011..0c0411427 100644 --- a/src/App/Pages/Vault/CipherDetailsPageViewModel.cs +++ b/src/App/Pages/Vault/CipherDetailsPageViewModel.cs @@ -202,7 +202,7 @@ namespace Bit.App.Pages } } - public bool ShowUpgradePremiumTotpText => !CanAccessPremium && ShowTotp; + public bool ShowUpgradePremiumTotpText => !CanAccessPremium && !Cipher.OrganizationUseTotp && ShowTotp; public bool ShowUris => IsLogin && Cipher.Login.HasUris; public bool ShowIdentityAddress => IsIdentity && ( !string.IsNullOrWhiteSpace(Cipher.Identity.Address1) || @@ -216,7 +216,7 @@ namespace Bit.App.Pages public string PasswordVisibilityAccessibilityText => ShowPassword ? AppResources.PasswordIsVisibleTapToHide : AppResources.PasswordIsNotVisibleTapToShow; public string TotpCodeFormatted { - get => _canAccessPremium ? _totpCodeFormatted : string.Empty; + get => ShowUpgradePremiumTotpText ? string.Empty : _totpCodeFormatted; set => SetProperty(ref _totpCodeFormatted, value, additionalPropertyNames: new string[] { diff --git a/src/App/Pages/Vault/GroupingsPage/GroupingsPageViewModel.cs b/src/App/Pages/Vault/GroupingsPage/GroupingsPageViewModel.cs index 006694b3c..cd626e2ee 100644 --- a/src/App/Pages/Vault/GroupingsPage/GroupingsPageViewModel.cs +++ b/src/App/Pages/Vault/GroupingsPage/GroupingsPageViewModel.cs @@ -200,7 +200,6 @@ namespace Bit.App.Pages { PageTitle = ShowVaultFilter ? AppResources.Vaults : AppResources.MyVault; } - var canAccessPremium = await _stateService.CanAccessPremiumAsync(); _doingLoad = true; LoadedOnce = true; ShowNoData = false; @@ -231,7 +230,7 @@ namespace Bit.App.Pages } if (MainPage) { - AddTotpGroupItem(canAccessPremium, groupedItems, uppercaseGroupNames); + AddTotpGroupItem(groupedItems, uppercaseGroupNames); groupedItems.Add(new GroupingsPageListGroup( AppResources.Types, 4, uppercaseGroupNames, !hasFavorites) @@ -382,9 +381,9 @@ namespace Bit.App.Pages } } - private void AddTotpGroupItem(bool canAccessPremium, List groupedItems, bool uppercaseGroupNames) + private void AddTotpGroupItem(List groupedItems, bool uppercaseGroupNames) { - if (canAccessPremium && TOTPCiphers?.Any() == true) + if (TOTPCiphers?.Any() == true) { groupedItems.Insert(0, new GroupingsPageListGroup( AppResources.Totp, 1, uppercaseGroupNames, false) @@ -537,10 +536,11 @@ namespace Bit.App.Pages private async Task LoadDataAsync() { + var canAccessPremium = await _stateService.CanAccessPremiumAsync(); NoDataText = AppResources.NoItems; _allCiphers = await GetAllCiphersAsync(); HasCiphers = _allCiphers.Any(); - TOTPCiphers = _allCiphers.Where(c => c.IsDeleted == Deleted && c.Type == CipherType.Login && !string.IsNullOrEmpty(c.Login?.Totp)).ToList(); + TOTPCiphers = _allCiphers.Where(c => c.IsDeleted == Deleted && c.Type == CipherType.Login && !string.IsNullOrEmpty(c.Login?.Totp) && (c.OrganizationUseTotp || canAccessPremium)).ToList(); FavoriteCiphers?.Clear(); NoFolderCiphers?.Clear(); _folderCounts.Clear(); From afa9e2370719dbfe5e7a410286759eec24fbb803 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 16 Sep 2022 03:26:44 +0200 Subject: [PATCH 04/11] Autosync the updated translations (#2077) Co-authored-by: github-actions <> --- src/App/Resources/AppResources.ar.resx | 44 ++++---- src/App/Resources/AppResources.el.resx | 112 ++++++++++---------- src/App/Resources/AppResources.eu.resx | 10 +- src/App/Resources/AppResources.fr.resx | 6 +- src/App/Resources/AppResources.lv.resx | 4 +- src/App/Resources/AppResources.pt-BR.resx | 16 +-- src/App/Resources/AppResources.zh-Hans.resx | 2 +- store/apple/el/copy.resx | 30 +++--- store/google/ar/copy.resx | 31 +++--- store/google/el/copy.resx | 30 +++--- 10 files changed, 143 insertions(+), 142 deletions(-) diff --git a/src/App/Resources/AppResources.ar.resx b/src/App/Resources/AppResources.ar.resx index 1eca68f83..59d6233ca 100644 --- a/src/App/Resources/AppResources.ar.resx +++ b/src/App/Resources/AppResources.ar.resx @@ -2315,44 +2315,44 @@ هل أنت متأكد من أنك تريد تمكين التقاط الشاشة؟ - Password Type + نوع كلمة المرور - What would you like to generate? + ما الذي ترغب في توليده؟ - Username Type + نوع اسم المستخدم - Plus Addressed Email + بريد إلكتروني موجه أكثر - Catch-all Email + تجميع كل البريد - Forwarded Email Alias + إعادة توجيه الاسم المستعار للبريد الإلكتروني - Random Word + كلمة عشوائية - Email (required) + البريد الإلكتروني (مطلوب) - Domain Name (required) + اسم المجال (مطلوب) - API Key (required) + مفتاح API (مطلوب) - Service + الخدمة AnonAddy "AnonAddy" is the product name and should not be translated. - Firefox Relay + FirefoxRelay "Firefox Relay" is the product name and should not be translated. @@ -2360,33 +2360,33 @@ "SimpleLogin" is the product name and should not be translated. - API Access Token + رمز الوصول API - Are you sure you want to overwrite the current username? + هل أنت متأكد من أنك تريد الكتابة فوق اسم المستخدم الحالي؟ - Generate Username + إنشاء اسم المستخدم - Email Type + نوع البريد الإلكتروني - Website (required) + الموقع (مطلوب) - Unknown {0} error occurred. + حدث خطأ {0} غير معروف. - Use your email provider's subaddress capabilities + استخدم قدرات العنوان الفرعي لمقدم البريد الإلكتروني الخاص بك - Use your domain's configured catch-all inbox. + استخدم علبة البريد الإلكتروني الشاملة التي تم تكوينها في نطاقك. - Generate an email alias with an external forwarding service. + إنشاء بريد إلكتروني مستعار مع خدمة إعادة توجيه خارجية. - Random + عشوائي diff --git a/src/App/Resources/AppResources.el.resx b/src/App/Resources/AppResources.el.resx index 4c34ecfc0..5e19deda8 100644 --- a/src/App/Resources/AppResources.el.resx +++ b/src/App/Resources/AppResources.el.resx @@ -1553,7 +1553,7 @@ Προεπιλεγμένο σκοτεινό θέμα - Choose the dark theme to use when using Default (System) theme while your device's dark mode is enabled. + Επιλέξτε το σκούρο θέμα που θα χρησιμοποιηθεί όταν χρησιμοποιείτε το προεπιλεγμένο (System) θέμα ενώ η σκοτεινή λειτουργία της συσκευής σας είναι ενεργοποιημένη. Αντιγραφή Σημειώσεων @@ -1576,16 +1576,16 @@ 'Nord' is the name of a specific color scheme. It should not be translated. - Auto-fill blocked URIs + Αυτόματη συμπλήρωση μπλοκαρισμένων URIs - Auto-fill will not be offered for blocked URIs. Separate multiple URIs with a comma. For example: "https://twitter.com, androidapp://com.twitter.android". + Η αυτόματη συμπλήρωση δεν θα προσφερθεί για μπλοκαρισμένα URI. Ξεχωρίστε πολλαπλά URI με κόμμα. Για παράδειγμα: "https://twitter.com, androidapp://com.twitter.android". - Ask to add login + Ζητήστε να προσθέστε σύνδεση - Ask to add an item if one isn't found in your vault. + Ζητήστε να προσθέσετε ένα αντικείμενο αν δε βρεθεί στην κρύπτη σας. Κατά την Επανεκκίνηση Εφαρμογής @@ -1898,16 +1898,16 @@ Το αρχείο που θέλετε να στείλετε. - File type is selected. + Ο τύπος αρχείου είναι επιλεγμένος. - File type is not selected, tap to select. + Ο τύπος αρχείου δεν είναι επιλεγμένος, πατήστε για επιλογή. - Text type is selected. + Ο τύπος κειμένου είναι επιλεγμένος. - Text type is not selected, tap to select. + Ο τύπος κειμένου δεν είναι επιλεγμένος, πατήστε για επιλογή. Ημερομηνία διαγραφής @@ -2214,40 +2214,40 @@ Εισάγετε τον κωδικό επαλήθευσης που έχει σταλεί στο email σας - Submit crash logs + Υποβολή αρχείου καταγραφής σφαλμάτων - Help Bitwarden improve app stability by submitting crash reports. + Βοηθήστε το Bitwarden να βελτιώσει τη σταθερότητα της εφαρμογής υποβάλλοντας αναφορές κολλημάτων. - Options are expanded, tap to collapse. + Οι επιλογές έχουν επεκταθεί, πατήστε για κατάρρευση. - Options are collapsed, tap to expand. + Οι επιλογές έχουν συμπτυχθεί, πατήστε για επέκταση. - Uppercase (A to Z) + Κεφαλαία (A-Z) - Lowercase (A to Z) + Πεζά (A-Z) - Numbers (0 to 9) + Αριθμοί (0-9) - Special Characters (!@#$%^&*) + Ειδικοί Χαρακτήρες (!@#$%^&*) - Tap to go back + Πατήστε για να πάτε πίσω - Password is visible, tap to hide. + Ο κωδικός πρόσβασης είναι ορατός, πατήστε για απόκρυψη. - Password is not visible, tap to show. + Ο κωδικός πρόσβασης δεν είναι ορατός, πατήστε για εμφάνιση. - Filter items by vault + Φιλτράρισμα αντικειμένων ανά κρύπτη Όλα τα Vaults @@ -2265,86 +2265,86 @@ TOTP - Verification Codes + Κωδικοί Επαλήθευσης - Premium subscription required + Απαιτείται συνδρομή Premium - Cannot add authenticator key? + Αδυναμία προσθήκης κλειδιού ταυτοποίησης; - Scan QR Code + Σάρωση κωδικού QR - Cannot scan QR Code? + Αδυναμία σάρωσης κωδικού QR; - Authenticator Key + Κλειδί επαλήθευσης - Enter Key Manually + Χειροκίνητη Εισαγωγή Κλειδιού - Add TOTP + Προσθήκη TOTP - Set up TOTP + Ρύθμιση TOTP - Once the key is successfully entered, -select Add TOTP to store the key safely + Μόλις το κλειδί εισαχθεί με επιτυχία, +επιλέξτε Προσθήκη TOTP για να αποθηκεύσετε το κλειδί με ασφάλεια - Setting your lock options to “Never” keeps your vault available to anyone with access to your device. If you use this option, you should ensure that you keep your device properly protected. + Ρυθμίζοντας τις επιλογές κλειδώματος σε “Ποτέ” κρατά τη κρύπτη σας διαθέσιμη σε οποιονδήποτε με πρόσβαση στη συσκευή σας. Εάν χρησιμοποιείτε αυτήν την επιλογή, θα πρέπει να διασφαλίσετε ότι διατηρείτε τη συσκευή σας σωστά προστατευμένη. - One or more of the URLs entered are invalid. Please revise it and try to save again. + Ένα ή περισσότερα από τα καταχωρημένα URL δεν είναι έγκυρα. Παρακαλώ αναθεωρήστε το και προσπαθήστε να αποθηκεύσετε ξανά. - We were unable to process your request. Please try again or contact us. + Δεν μπορούμε να επεξεργαστούμε το αίτημά σας τώρα. Παρακαλούμε προσπαθήστε ξανά ή επικοινωνήστε με την υποστήριξη. - Allow screen capture + Να επιτρέπεται η καταγραφή οθόνης - Are you sure you want to enable Screen Capture? + Είστε βέβαιοι ότι θέλετε να ενεργοποιήσετε την καταγραφή οθόνης; - Password Type + Τύπος Κωδικού - What would you like to generate? + Τι θα θέλατε να δημιουργήσετε; - Username Type + Τύπος Ονόματος Χρήστη - Plus Addressed Email + Συν Διεύθυνση Email Catch-all Email - Forwarded Email Alias + Προωθημένο Ψευδώνυμο Email - Random Word + Τυχαία Λέξη - Email (required) + Email (απαιτείται) - Domain Name (required) + Όνομα Τομέα (απαιτείται) - API Key (required) + Κλειδί API (απαιτείται) - Service + Υπηρεσία AnonAddy @@ -2362,30 +2362,30 @@ select Add TOTP to store the key safely API Access Token - Are you sure you want to overwrite the current username? + Είστε βέβαιοι ότι θέλετε να αντικαταστήσετε το τρέχον όνομα χρήστη; - Generate Username + Δημιουργία Ονόματος Χρήστη - Email Type + Τύπος Email - Website (required) + Ιστοσελίδα (απαιτείται) - Unknown {0} error occurred. + Παρουσιάστηκε άγνωστο {0} σφάλμα. - Use your email provider's subaddress capabilities + Χρησιμοποιήστε τις δυνατότητες δευτερεύουσας διεύθυνσης του παρόχου email σας - Use your domain's configured catch-all inbox. + Χρησιμοποιήστε τα διαμορφωμένα εισερχόμενα catch-all του domain σας. - Generate an email alias with an external forwarding service. + Δημιουργήστε ένα ψευδώνυμο email με μια εξωτερική υπηρεσία προώθησης. - Random + Τυχαίο diff --git a/src/App/Resources/AppResources.eu.resx b/src/App/Resources/AppResources.eu.resx index 1ee861440..905a88fca 100644 --- a/src/App/Resources/AppResources.eu.resx +++ b/src/App/Resources/AppResources.eu.resx @@ -296,7 +296,7 @@ Text to define that there are more options things to see. - Nire Kutxa Gotorra + Kutxa Gotorra The title for the vault page. @@ -371,7 +371,7 @@ Label for a username. - {0} eremua ezinbestekoa da. + {0} ezinbestekoa da. Validation message for when a form field is left blank and is required to be entered. @@ -1016,7 +1016,7 @@ Saio-hasiera - Ohar segurua + Ohar seguruak 1go helbidea @@ -1151,7 +1151,7 @@ Kutxa gotorra blokeatuta dago - Joan nire kutxa gotorrera + Joan kutxa gotorrera Bildumak @@ -1952,7 +1952,7 @@ Pasahitz berria - Nahi izanez gero, pasahitza eskatu erabiltzaileak bidalketa honetara sar daitezen. + Nahi izanez gero, pasahitza eskatu erabiltzaileak Send honetara sar daitezen. 'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated. diff --git a/src/App/Resources/AppResources.fr.resx b/src/App/Resources/AppResources.fr.resx index 78fab8bb7..1a88d428e 100644 --- a/src/App/Resources/AppResources.fr.resx +++ b/src/App/Resources/AppResources.fr.resx @@ -705,7 +705,7 @@ What Apple calls their fingerprint reader. - Identification à double facteurs + Identification en deux étapes L'authentification en deux étapes sécurise davantage votre compte en exigeant que chaque connexion soit confirmée par un autre dispositif tel qu'une clé de sécurité, une application d'authentification, un SMS, un appel téléphonique ou un courriel. Cette option peut être activée depuis le coffre web sur bitwarden.com. Voulez-vous y accéder maintenant ? @@ -727,7 +727,7 @@ Afficher l'élément - Coffre web bitwarden + Coffre web Bitwarden Application d'authentification perdue ? @@ -2362,7 +2362,7 @@ sélectionnez Ajouter TOTP pour stocker la clé en toute sécurité Jeton d'accès API - Are you sure you want to overwrite the current username? + Êtes-vous sûr(e) de vouloir remplacer le nom d'utilisateur actuel ? Générer un nom d'utilisateur diff --git a/src/App/Resources/AppResources.lv.resx b/src/App/Resources/AppResources.lv.resx index f0cbd10c9..b9707b62e 100644 --- a/src/App/Resources/AppResources.lv.resx +++ b/src/App/Resources/AppResources.lv.resx @@ -819,11 +819,11 @@ For 2FA - Ievadi 6 ciparu apstiprinājuma kodu no autentificētāja lietotnes! + Jāievada 6 ciparu apstiprinājuma kods no autentificētāja lietotnes. For 2FA - Ievadi 6 ciparu apstiprinājuma kodu, kas tika nosūtīts uz $EMAIL$! + Jāievada 6 ciparu apstiprinājuma kods, kas tika nosūtīts uz {0}. For 2FA diff --git a/src/App/Resources/AppResources.pt-BR.resx b/src/App/Resources/AppResources.pt-BR.resx index 7fdd3049e..da4d4fbd9 100644 --- a/src/App/Resources/AppResources.pt-BR.resx +++ b/src/App/Resources/AppResources.pt-BR.resx @@ -2324,13 +2324,13 @@ selecione Adicionar TOTP para armazenar a chave de forma segura Tipo de Nome de Usuário - Plus Addressed Email + E-mail endereçado mais - Catch-all Email + E-mail pega-tudo - Forwarded Email Alias + Alias de E-mail Encaminhado Palavra Aleatória @@ -2342,7 +2342,7 @@ selecione Adicionar TOTP para armazenar a chave de forma segura Nome do Domínio (obrigatório) - API Key (required) + Chave de API (obrigatória) Serviço @@ -2375,16 +2375,16 @@ selecione Adicionar TOTP para armazenar a chave de forma segura Website (obrigatório) - Unknown {0} error occurred. + Ocorreu um erro desconhecido {0}. - Use your email provider's subaddress capabilities + Use os recursos de subendereço do seu provedor de e-mail - Use your domain's configured catch-all inbox. + Use a caixa de entrada "pega-tudo" configurada do seu domínio. - Generate an email alias with an external forwarding service. + Gere um alias de e-mail com um serviço de encaminhamento externo. Aleatória diff --git a/src/App/Resources/AppResources.zh-Hans.resx b/src/App/Resources/AppResources.zh-Hans.resx index 3294d591a..2b80f8a45 100644 --- a/src/App/Resources/AppResources.zh-Hans.resx +++ b/src/App/Resources/AppResources.zh-Hans.resx @@ -222,7 +222,7 @@ 文件夹已删除。 - 默认文件夹 + 无文件夹 Items that have no folder specified go in this special "catch-all" folder. diff --git a/store/apple/el/copy.resx b/store/apple/el/copy.resx index a8b3496c0..6f1a00f2f 100644 --- a/store/apple/el/copy.resx +++ b/store/apple/el/copy.resx @@ -122,31 +122,31 @@ Max 30 characters - Bitwarden, Inc. is the parent company of 8bit Solutions LLC. + Η Bitwarden, Inc. είναι η μητρική εταιρεία της 8bit Solutions LLC. -NAMED BEST PASSWORD MANAGER BY THE VERGE, U.S. NEWS & WORLD REPORT, CNET, AND MORE. +ΑΠΟΚΑΛΕΙΤΑΙ ΩΣ Ο ΚΑΛΎΤΕΡΟΣ ΔΙΑΧΕΙΡΙΣΤΉΣ ΚΩΔΙΚΩΝ ΑΠΟ ΤΑ VERGE, U.S. NEWS & WORLD REPORT, CNET ΚΑΙ ΑΛΛΑ. -Manage, store, secure, and share unlimited passwords across unlimited devices from anywhere. Bitwarden delivers open source password management solutions to everyone, whether at home, at work, or on the go. +Διαχειριστείτε, αποθηκεύστε, ασφαλίστε και κοινοποιήστε απεριόριστους κωδικούς μεταξύ απεριόριστων συσκευών από οπουδήποτε. Το Bitwarden παρέχει λύση ανοιχτού κώδικα διαχείρισης κωδικών σε όλους, είτε είστε σπίτι είτε στην εργασία είτε εν κινησει. -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +Δημιουργήστε ισχυρούς, μοναδικούς και τυχαίους κωδικούς βασισμένους σε απαιτήσεις ασφαλείας για κάθε ιστοσελίδα που επισκέπτεστε συχνά. -Bitwarden Send quickly transmits encrypted information --- files and plaintext -- directly to anyone. +Το Bitwarden Send μεταδίδει γρήγορα κρυπτογραφημένες πληροφορίες --- αρχεία και απλό κείμενο -- απευθείας σε όλους. -Bitwarden offers Teams and Enterprise plans for companies so you can securely share passwords with colleagues. +Το Bitwarden προσφέρει πλάνα για Ομάδες και Οργανισμούς για εταιρείες ώστε να μοιράζεστε με ασφάλεια κωδικούς με τους συναδέλφους σας. -Why Choose Bitwarden: +Γιατί να επιλέξετε το Bitwarden: -World-Class Encryption -Passwords are protected with advanced end-to-end encryption (AES-256 bit, salted hashtag, and PBKDF2 SHA-256) so your data stays secure and private. +Κρυπτογράφηση Παγκόσμιου Επιπέδου +Οι κωδικοί προστατεύονται με προηγμένη κρυπτογράφηση από άκρη σε άκρη (AES-256 bit, salted hashtag, και PBKDF2 SHA-256) ώστε τα δεδομένα σας να παραμένουν ασφαλή και ιδιωτικά. -Built-in Password Generator -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +Ενσωματωμένη Γεννήτρια Κωδικών +Δημιουργήστε ισχυρούς, μοναδικούς και τυχαίους κωδικούς βασισμένους σε απαιτήσεις ασφαλείας για κάθε ιστοσελίδα που επισκέπτεστε συχνά. -Global Translations -Bitwarden translations exist in 40 languages and are growing, thanks to our global community. +Παγκοσμίως Μεταφρασμένο +Το Bitwarden έχει μεταφραστεί σε 40 γλώσσες και αυξάνονται, χάρη στη παγκόσμια κοινότητα μας. -Cross-Platform Applications -Secure and share sensitive data within your Bitwarden Vault from any browser, mobile device, or desktop OS, and more. +Εφαρμογές Σε Κάθε Πλατφόρμα +Ασφαλίστε και κοινοποιήστε ευαίσθητα δεδομένα μέσα από το Bitwarden Vault από κάθε φυλλομετρητή, κινητή συσκευή ή υπολογιστή και αλλα. Max 4000 characters diff --git a/store/google/ar/copy.resx b/store/google/ar/copy.resx index 492bcf9fe..a5f9ee258 100644 --- a/store/google/ar/copy.resx +++ b/store/google/ar/copy.resx @@ -126,31 +126,32 @@ Max 80 characters - Bitwarden, Inc. is the parent company of 8bit Solutions LLC. + شركة Bitwarden, Inc هي الشركة الأم لشركة 8bit Solutions LLC. -NAMED BEST PASSWORD MANAGER BY THE VERGE, U.S. NEWS & WORLD REPORT, CNET, AND MORE. +تم تصنيف Bitwarden كأفصل مدير كلمات مرور بواسطة كل من The Verge، U.S News & World Report، CNET، وغيرهم. -Manage, store, secure, and share unlimited passwords across unlimited devices from anywhere. Bitwarden delivers open source password management solutions to everyone, whether at home, at work, or on the go. +قم بإدارة وحفظ وتأمين كلمات المرور الخاصة بك، ومشاركتها بين أجهزتك من أي مكان. +يوفر Bitwarden حل مفتوح المصدر لإدارة كلمات المرور للجميع، سواء في المنزل، في العمل أو في أي مكان. -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +قم بإنشاء كلمات مرور قوية وفريدة وعشوائية حسب متطلبات الأمان للصفحات التي تزورها. -Bitwarden Send quickly transmits encrypted information --- files and plaintext -- directly to anyone. +يوفر Bitwarden Send إمكانية إرسال البيانات --- النصوص والملفات --- بطريقة مشفرة وسريعة لأي شخص. -Bitwarden offers Teams and Enterprise plans for companies so you can securely share passwords with colleagues. +يوفر Bitwarden خطط خاصة للفرق والشركات والمؤسسات لتمكنك من مشاركة كلمات المرور مع زملائك في العمل. -Why Choose Bitwarden: +لماذا قد تختار Bitwarden: -World-Class Encryption -Passwords are protected with advanced end-to-end encryption (AES-256 bit, salted hashtag, and PBKDF2 SHA-256) so your data stays secure and private. +تشفير على مستوى عالمي +كلمات المرور محمية بتشفير متقدم تام (end-to-end encryption) من نوعية AES-256 bit، مع salted hashing، و PBKDF2 SHA-256. كل هذا لإبقاء بياناتك محمية وخاصة. -Built-in Password Generator -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +مولد كلمات المرور المدمج +قم بإنشاء كلمات مرور قوية وفريدة وعشوائية حسب متطلبات الأمان للصفحات التي تزورها. -Global Translations -Bitwarden translations exist in 40 languages and are growing, thanks to our global community. +الترجمات العالمية +يتوفر Bitwarden بأكثر من 40 لغة، وتتنامى الترجمات بفضل مجتمعنا العالمي. -Cross-Platform Applications -Secure and share sensitive data within your Bitwarden Vault from any browser, mobile device, or desktop OS, and more. +تطبيقات متعددة المنصات +قم بحماية ومشاركة بياناتك الحساسة عبر خزنة Bitwarden من أي متصفح ويب، أو هاتف ذكي، أو جهاز كمبيوتر، وغيرها. Max 4000 characters diff --git a/store/google/el/copy.resx b/store/google/el/copy.resx index 5614f2079..dc607fff2 100644 --- a/store/google/el/copy.resx +++ b/store/google/el/copy.resx @@ -126,31 +126,31 @@ Max 80 characters - Bitwarden, Inc. is the parent company of 8bit Solutions LLC. + Η Bitwarden, Inc. είναι η μητρική εταιρεία της 8bit Solutions LLC. -NAMED BEST PASSWORD MANAGER BY THE VERGE, U.S. NEWS & WORLD REPORT, CNET, AND MORE. +ΑΠΟΚΑΛΕΙΤΑΙ ΩΣ Ο ΚΑΛΎΤΕΡΟΣ ΔΙΑΧΕΙΡΙΣΤΉΣ ΚΩΔΙΚΩΝ ΑΠΟ ΤΑ VERGE, U.S. NEWS & WORLD REPORT, CNET ΚΑΙ ΑΛΛΑ. -Manage, store, secure, and share unlimited passwords across unlimited devices from anywhere. Bitwarden delivers open source password management solutions to everyone, whether at home, at work, or on the go. +Διαχειριστείτε, αποθηκεύστε, ασφαλίστε και κοινοποιήστε απεριόριστους κωδικούς μεταξύ απεριόριστων συσκευών από οπουδήποτε. Το Bitwarden παρέχει λύση ανοιχτού κώδικα διαχείρισης κωδικών σε όλους, είτε είστε σπίτι είτε στην εργασία είτε εν κινησει. -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +Δημιουργήστε ισχυρούς, μοναδικούς και τυχαίους κωδικούς βασισμένους σε απαιτήσεις ασφαλείας για κάθε ιστοσελίδα που επισκέπτεστε συχνά. -Bitwarden Send quickly transmits encrypted information --- files and plaintext -- directly to anyone. +Το Bitwarden Send μεταδίδει γρήγορα κρυπτογραφημένες πληροφορίες --- αρχεία και απλό κείμενο -- απευθείας σε όλους. -Bitwarden offers Teams and Enterprise plans for companies so you can securely share passwords with colleagues. +Το Bitwarden προσφέρει πλάνα για Ομάδες και Οργανισμούς για εταιρείες ώστε να μοιράζεστε με ασφάλεια κωδικούς με τους συναδέλφους σας. -Why Choose Bitwarden: +Γιατί να επιλέξετε το Bitwarden: -World-Class Encryption -Passwords are protected with advanced end-to-end encryption (AES-256 bit, salted hashtag, and PBKDF2 SHA-256) so your data stays secure and private. +Κρυπτογράφηση Παγκόσμιου Επιπέδου +Οι κωδικοί προστατεύονται με προηγμένη κρυπτογράφηση από άκρη σε άκρη (AES-256 bit, salted hashtag, και PBKDF2 SHA-256) ώστε τα δεδομένα σας να παραμένουν ασφαλή και ιδιωτικά. -Built-in Password Generator -Generate strong, unique, and random passwords based on security requirements for every website you frequent. +Ενσωματωμένη Γεννήτρια Κωδικών +Δημιουργήστε ισχυρούς, μοναδικούς και τυχαίους κωδικούς βασισμένους σε απαιτήσεις ασφαλείας για κάθε ιστοσελίδα που επισκέπτεστε συχνά. -Global Translations -Bitwarden translations exist in 40 languages and are growing, thanks to our global community. +Παγκοσμίως Μεταφρασμένο +Το Bitwarden έχει μεταφραστεί σε 40 γλώσσες και αυξάνονται, χάρη στη παγκόσμια κοινότητα μας. -Cross-Platform Applications -Secure and share sensitive data within your Bitwarden Vault from any browser, mobile device, or desktop OS, and more. +Εφαρμογές Σε Κάθε Πλατφόρμα +Ασφαλίστε και κοινοποιήστε ευαίσθητα δεδομένα μέσα από το Bitwarden Vault από κάθε φυλλομετρητή, κινητή συσκευή ή υπολογιστή και αλλα. Max 4000 characters From 305c770c585df873d5903111e2290cc8c079cabd Mon Sep 17 00:00:00 2001 From: aj-rosado <109146700+aj-rosado@users.noreply.github.com> Date: Fri, 16 Sep 2022 16:44:15 +0100 Subject: [PATCH 05/11] [PS-1312] Migration to android12 and new splashscreen (#2063) * [PS-1312] Updated Android Target and Framework to Android12 and updated new SplashScreen for Android12 * PS-1312 Changed PendingIntents mutability * PS-1312 Removed unused imports * PS-1312 Added method to helper to add mutability option according to Android version * PS-1312 Renamed helper method AddPendingIntentMutability and fixed validation * PS-1312 Improved PendingIntentMutability method from helper readability and naming --- .../Accessibility/AccessibilityService.cs | 2 +- src/Android/Android.csproj | 7 ++++++- src/Android/Autofill/AutofillHelpers.cs | 6 +++--- src/Android/Autofill/AutofillService.cs | 2 +- src/Android/MainActivity.cs | 6 +++--- src/Android/Properties/AndroidManifest.xml | 2 +- .../splash_screen_round.xml | 5 +++++ .../drawable-v26/splash_screen_round.xml | 5 +++++ .../Resources/drawable/logo_rounded.xml | 14 ++++++++++++++ src/Android/Resources/values-night/styles.xml | 1 + src/Android/Resources/values/styles.xml | 2 ++ src/Android/Services/ClipboardService.cs | 3 ++- src/Android/Tiles/AutofillTileService.cs | 2 +- src/Android/Tiles/GeneratorTileService.cs | 2 +- src/Android/Tiles/MyVaultTileService.cs | 3 ++- src/Android/Utilities/AndroidHelpers.cs | 19 +++++++++++++++++++ src/Android/WebAuthCallbackActivity.cs | 3 ++- 17 files changed, 69 insertions(+), 15 deletions(-) create mode 100644 src/Android/Resources/drawable-night-v26/splash_screen_round.xml create mode 100644 src/Android/Resources/drawable-v26/splash_screen_round.xml create mode 100644 src/Android/Resources/drawable/logo_rounded.xml diff --git a/src/Android/Accessibility/AccessibilityService.cs b/src/Android/Accessibility/AccessibilityService.cs index 1345a5cef..d57ae56a9 100644 --- a/src/Android/Accessibility/AccessibilityService.cs +++ b/src/Android/Accessibility/AccessibilityService.cs @@ -15,7 +15,7 @@ using Bit.Core.Utilities; namespace Bit.Droid.Accessibility { - [Service(Permission = Android.Manifest.Permission.BindAccessibilityService, Label = "Bitwarden")] + [Service(Permission = Android.Manifest.Permission.BindAccessibilityService, Label = "Bitwarden", Exported = true)] [IntentFilter(new string[] { "android.accessibilityservice.AccessibilityService" })] [MetaData("android.accessibilityservice", Resource = "@xml/accessibilityservice")] [Register("com.x8bit.bitwarden.Accessibility.AccessibilityService")] diff --git a/src/Android/Android.csproj b/src/Android/Android.csproj index f85cd5c15..ac444d7a9 100644 --- a/src/Android/Android.csproj +++ b/src/Android/Android.csproj @@ -15,7 +15,7 @@ Properties\AndroidManifest.xml Resources Assets - v11.0 + v12.1 Xamarin.Android.Net.AndroidClientHandler @@ -213,6 +213,9 @@ + + + @@ -280,6 +283,8 @@ + + \ No newline at end of file diff --git a/src/Android/Autofill/AutofillHelpers.cs b/src/Android/Autofill/AutofillHelpers.cs index 8ec3416bd..f1984dbff 100644 --- a/src/Android/Autofill/AutofillHelpers.cs +++ b/src/Android/Autofill/AutofillHelpers.cs @@ -19,6 +19,7 @@ using AndroidX.AutoFill.Inline; using AndroidX.AutoFill.Inline.V1; using Bit.Core.Abstractions; using SaveFlags = Android.Service.Autofill.SaveFlags; +using Bit.Droid.Utilities; namespace Bit.Droid.Autofill { @@ -270,8 +271,7 @@ namespace Bit.Droid.Autofill return null; } intent.PutExtra("autofillFrameworkUri", uri); - var pendingIntent = PendingIntent.GetActivity(context, ++_pendingIntentId, intent, - PendingIntentFlags.CancelCurrent); + var pendingIntent = PendingIntent.GetActivity(context, ++_pendingIntentId, intent, AndroidHelpers.AddPendingIntentMutabilityFlag(PendingIntentFlags.CancelCurrent, true)); var overlayPresentation = BuildOverlayPresentation( AppResources.AutofillWithBitwarden, @@ -324,7 +324,7 @@ namespace Bit.Droid.Autofill // InlinePresentation requires nonNull pending intent (even though we only utilize one for the // "my vault" presentation) so we're including an empty one here pendingIntent = PendingIntent.GetService(context, 0, new Intent(), - PendingIntentFlags.OneShot | PendingIntentFlags.UpdateCurrent); + AndroidHelpers.AddPendingIntentMutabilityFlag(PendingIntentFlags.OneShot | PendingIntentFlags.UpdateCurrent, true)); } var slice = CreateInlinePresentationSlice( inlinePresentationSpec, diff --git a/src/Android/Autofill/AutofillService.cs b/src/Android/Autofill/AutofillService.cs index 07171eb9e..97bc07ae4 100644 --- a/src/Android/Autofill/AutofillService.cs +++ b/src/Android/Autofill/AutofillService.cs @@ -15,7 +15,7 @@ using Bit.Core.Utilities; namespace Bit.Droid.Autofill { - [Service(Permission = Manifest.Permission.BindAutofillService, Label = "Bitwarden")] + [Service(Permission = Manifest.Permission.BindAutofillService, Label = "Bitwarden", Exported = true)] [IntentFilter(new string[] { "android.service.autofill.AutofillService" })] [MetaData("android.autofill", Resource = "@xml/autofillservice")] [Register("com.x8bit.bitwarden.Autofill.AutofillService")] diff --git a/src/Android/MainActivity.cs b/src/Android/MainActivity.cs index 8d5385e37..627fea1f3 100644 --- a/src/Android/MainActivity.cs +++ b/src/Android/MainActivity.cs @@ -9,7 +9,7 @@ using Android.Content.Res; using Android.Nfc; using Android.OS; using Android.Runtime; -using AndroidX.Core.Content; +using Android.Views; using Bit.App.Abstractions; using Bit.App.Models; using Bit.App.Utilities; @@ -49,7 +49,7 @@ namespace Bit.Droid { var eventUploadIntent = new Intent(this, typeof(EventUploadReceiver)); _eventUploadPendingIntent = PendingIntent.GetBroadcast(this, 0, eventUploadIntent, - PendingIntentFlags.UpdateCurrent); + AndroidHelpers.AddPendingIntentMutabilityFlag(PendingIntentFlags.UpdateCurrent, false)); var policy = new StrictMode.ThreadPolicy.Builder().PermitAll().Build(); StrictMode.SetThreadPolicy(policy); @@ -278,7 +278,7 @@ namespace Bit.Droid { var intent = new Intent(this, Class); intent.AddFlags(ActivityFlags.SingleTop); - var pendingIntent = PendingIntent.GetActivity(this, 0, intent, 0); + var pendingIntent = PendingIntent.GetActivity(this, 0, intent, AndroidHelpers.AddPendingIntentMutabilityFlag(0, false)); // register for all NDEF tags starting with http och https var ndef = new IntentFilter(NfcAdapter.ActionNdefDiscovered); ndef.AddDataScheme("http"); diff --git a/src/Android/Properties/AndroidManifest.xml b/src/Android/Properties/AndroidManifest.xml index 07ace3546..6b2809ee8 100644 --- a/src/Android/Properties/AndroidManifest.xml +++ b/src/Android/Properties/AndroidManifest.xml @@ -1,6 +1,6 @@  - + diff --git a/src/Android/Resources/drawable-night-v26/splash_screen_round.xml b/src/Android/Resources/drawable-night-v26/splash_screen_round.xml new file mode 100644 index 000000000..dc4c7209e --- /dev/null +++ b/src/Android/Resources/drawable-night-v26/splash_screen_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/Android/Resources/drawable-v26/splash_screen_round.xml b/src/Android/Resources/drawable-v26/splash_screen_round.xml new file mode 100644 index 000000000..602f055dd --- /dev/null +++ b/src/Android/Resources/drawable-v26/splash_screen_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/Android/Resources/drawable/logo_rounded.xml b/src/Android/Resources/drawable/logo_rounded.xml new file mode 100644 index 000000000..860d4c963 --- /dev/null +++ b/src/Android/Resources/drawable/logo_rounded.xml @@ -0,0 +1,14 @@ + + + + + diff --git a/src/Android/Resources/values-night/styles.xml b/src/Android/Resources/values-night/styles.xml index 7e5a4074e..edfaaa455 100644 --- a/src/Android/Resources/values-night/styles.xml +++ b/src/Android/Resources/values-night/styles.xml @@ -4,6 +4,7 @@