diff --git a/core/res/src/main/res/values-de/strings.xml b/core/res/src/main/res/values-de/strings.xml
index 12e30ed235..67cef4ccd7 100644
--- a/core/res/src/main/res/values-de/strings.xml
+++ b/core/res/src/main/res/values-de/strings.xml
@@ -13,6 +13,9 @@
Das gewählte unterstützt nicht das %1$s Netzwerk
Um die kryptografische Verschlüsselung der %1$s Blockchain zu aktivieren, musst Du die Wallet auf die Werkseinstellungen zurücksetzen. Bitte heb vorher dein Guthaben ab, um sicherzustellen, dass du nichts verlierst, und führe dann den Reset-Vorgang durch. Nach dem Zurücksetzen ist der Zugriff auf die aktuelle Wallet nicht mehr möglich.
Tokens im %1$s -Netzwerk werden von dieser Karte aufgrund einer Firmware-Einschränkung nicht unterstützt.
+ Vielen Dank für dein Feedback. Wir werden so schnell wie möglich antworten
+ Deine Vorschläge wurden übermittelt
+ Bitte versuche, die Karte genau wie in der Animation gezeigt anzutippen, oder lese unsere einfache Anleitung, oder forder Support an. Wenn das Problem weiterhin besteht, wende dich bitte an den Support.
Hast du Probleme beim Scannen deiner Karte?
Diese Karte ist für die Zusammenarbeit mit Tangem nicht geeignet
Standardgebühr
@@ -28,6 +31,8 @@
Dunkel
Hell
Systemstandard
+ Wenn das System ausgewählt ist, passt sich die App automatisch an die Systemeinstellungen deines Geräts an
+ System
Thema
App Einstellungen
Um deine Kontostände ein- oder auszublenden, flippe einfach das Display deines Geräts nach unten, oder schalte es in den Einstellungen aus.
@@ -95,6 +100,7 @@
Entfernen
Deaktiviert
+ Trennen
Erledigt
Aktivieren
Aktiviert
@@ -131,6 +137,7 @@
Ablehnen
Neu laden
Umbenennen
+ Wiederholen
Speichern
Änderungen speichern
Suchen
@@ -159,6 +166,7 @@
Es ist ein Fehler aufgetreten. Bitte versuche es erneut.
Nicht erreichbar
staking beenden
+ Warnung
Ja
Vertragsadresse kopiert!
Verfügbare Netzwerke
@@ -206,6 +214,7 @@
Flipp um Guthaben auszublenden
Aussteller
Signiert
+ Wenn du den Code vergisst, verlierst du den Zugriff auf dein Geld. Eine Codewiederherstellung ist nicht möglich.
Gib uns eine Rückmeldung
Details
Überprüfe deine Internetverbindung oder wechseln zu einem anderen Netzwerk
@@ -572,6 +581,7 @@
%1$s, %2$s
Adresse
Ziel-Tag
+ Möchtest du den Sendebildschirm wirklich schließen?
Adresse eingeben
Die Adresse stimmt mit der Adresse Ihrer Brieftasche überein
Ungültiges Tag. Es wird der Transaktion nicht hinzugefügt.
@@ -668,6 +678,7 @@
Der Zeitraum, den du nach der Beantragung der Abhebung von Geldern aus dem Staking warten musst, bevor die Token verfügbar werden.
Aufwärmphase
Die zugewiesene Zeit für die Aktivierung der Teilnahme am Staking.
+ Stake %s
Natives Staking
Mit Staking kannst du %1s verdienen. Deine Staking-Belohnungen kommen alle ~%2s Tage.
Verdiene Staking-Belohnungen
@@ -675,6 +686,7 @@
Mehr staken
unstaken
Prüfe, was nicht eingesetzt wurde, um dein Vermögen zu beanspruchen
+ Staking beenden
Validator/ Prüfer
Bewahre deine Krypto-Assets sicher auf, während die privaten Schlüssel auf deiner Karte bleiben
Revolutionäre Hardware-Wallet
@@ -716,6 +728,7 @@
Die Geldsendung wird verfügbar, sobald die ausstehende(n) Transaktion(en) im Netzwerk %s abgeschlossen ist/sind.
Der Verkauf von %s ist im Moment nicht verfügbar. Bitte prüfe später ob es Updates gibt.
Staking %s ist aktuell nicht verfügbar. Prüfe bitte ob es ein neues Update gibt.
+ Adresse wählen
Generiere XPUB
Ausblenden
Du bist dabei, dieses Token vom Hauptbildschirm auszublenden. Du kannst es jederzeit über die Seite „Token verwalten“ wieder hinzufügen.
diff --git a/core/res/src/main/res/values-fr/strings.xml b/core/res/src/main/res/values-fr/strings.xml
index 8a104e2052..30baffe42f 100644
--- a/core/res/src/main/res/values-fr/strings.xml
+++ b/core/res/src/main/res/values-fr/strings.xml
@@ -13,6 +13,9 @@
Le sélectionné ne prend pas en charge le réseau %1$s
Pour activer le cryptage de la blockchain %1$s, vous devrez réinitialiser le portefeuille aux paramètres d\'usine. Veuillez retirer vos fonds avant de le faire pour vous assurer de ne pas les perdre, puis terminez le processus de réinitialisation. L\'accès au portefeuille actuel ne sera pas possible après la réinitialisation.
Les jetons du réseau %1$s ne sont pas pris en charge par cette carte en raison d\'une limitation du micrologiciel.
+ Merci pour votre retour. Nous vous répondrons dès que possible
+ Vos suggestions ont été envoyées
+ Veuillez essayer d\'appuyer sur la carte exactement comme indiqué dans l\'animation ou lire notre guide simple, ou demander de l\'aide. Si le problème persiste, veuillez demander de l\'aide.
Avez-vous des difficultés à scanner votre carte ?
Cette carte n\'est pas conçue pour fonctionner avec Tangem
Frais par défaut
@@ -28,6 +31,8 @@
Sombre
Clair
Par défaut du système
+ Si le système est sélectionné, l\'application s\'ajustera automatiquement en fonction des paramètres système de votre appareil
+ Système
Thème
Paramètres de l\'application
Pour masquer ou afficher vos soldes, il suffit de retourner l\'écran de votre appareil vers le bas ou de le désactiver dans les paramètres
@@ -93,6 +98,7 @@
Supprimer
Désactivé
+ Se déconnecter
Exécuté
Activer
Activé
@@ -128,6 +134,7 @@
Rejeter
Recharger
Renommer
+ Réessayer
Enregistrer
Sauvegarder les modifications
Rechercher
@@ -155,6 +162,7 @@
Je comprends
Il y avait une erreur. Veuillez réessayer.
Inaccessible
+ Alerte
Oui
Adresse du contrat copiée !
Réseaux disponibles
@@ -202,6 +210,7 @@
Retourner pour masquer les soldes
Emetteur
Signé
+ Si vous oubliez le code, vous perdrez l\'accès à vos fonds. La récupération du code n\'est pas possible.
Envoyer un commentaire
Référénces
Vérifiez votre connexion Internet ou passez à un réseau différent
@@ -500,6 +509,7 @@
%1$s, %2$s
Adresse
Destination Tag
+ Êtes-vous sûr de vouloir fermer l\'écran d\'envoi ?
Entrez l\'adresse
L\'adresse est la même que celle de votre portefeuille
Tag invalide. Il ne sera pas ajouté à la transaction.
@@ -639,6 +649,7 @@
L\'envoi de fonds sera disponible une fois la ou les transactions en attente dans le réseau %s terminées.
La vente de %s n\'est pas disponible pour le moment. Veuillez consulter nos mises à jour.
Le staking %s n’est pas disponible pour le moment. Veuillez consulter nos mises à jour.
+ Choisissez une adresse
Générer XPUB
Masquer
Vous êtes sur le point de masquer ce jeton de l\'écran principal. Vous pouvez le rajouter à tout moment via la page de gestion des jetons.
diff --git a/core/res/src/main/res/values-it/strings.xml b/core/res/src/main/res/values-it/strings.xml
index e7caa7829e..b8860bd7d8 100644
--- a/core/res/src/main/res/values-it/strings.xml
+++ b/core/res/src/main/res/values-it/strings.xml
@@ -14,6 +14,7 @@
Mantieni le modifiche
Invia
Con successo
+ Avviso
Codice di accesso
Prima di scansionare la carta sarà necessario inserire il codice di accesso corretto
Mantenimento della carta
diff --git a/core/res/src/main/res/values-ja/strings.xml b/core/res/src/main/res/values-ja/strings.xml
index a9ecf96c93..c0913ede01 100644
--- a/core/res/src/main/res/values-ja/strings.xml
+++ b/core/res/src/main/res/values-ja/strings.xml
@@ -13,6 +13,9 @@
選択したものは%1$sネットワークをサポートしていません。
%1$sブロックチェーンの暗号化を有効にするには、ウォレットを工場出荷時の設定にリセットする必要があります。リセットする前に出金して、資金が失われないようにしてから、リセット処理を完了してください。リセット後は、現在のウォレットにアクセスできなくなります。
%1$s ネットワークのトークンは、ファームウェアの制限により、このカードではサポートされていません。
+ ご意見ありがとうございます。できるだけ早くご返信いたします。
+ あなたの提案が送信されました
+ アニメーションに表示されているとおりにカードをタップするか、簡単なガイドをお読みください。それでも問題が解決しない場合は、サポートをご依頼ください。
カードのスキャンに問題がありますか?
このカードはこのアプリでは使用できません。
デフォルト手数料
@@ -28,6 +31,8 @@
ダーク
ライト
システムのデフォルト
+ システムを選択した場合、アプリはデバイスのシステム設定に基づいて自動調整されます。
+ システム
テーマ
アプリ設定
残高を表示または非表示にするには、デバイスの画面を下向きにするか、設定でオフにしてください。
@@ -93,6 +98,7 @@
削除
無効
+ 切断
完了
有効にする
有効
@@ -129,6 +135,7 @@
拒否
リロード
名前を変更
+ リトライ
保存
変更内容を保存
検索
@@ -157,6 +164,7 @@
エラーが発生しました。もう一度お試しください。
アクセスできません
ステーキング解除
+ 警告
はい
コントラクトアドレスをコピーしました!
利用可能なネットワーク
@@ -204,6 +212,7 @@
フリップして残高を非表示にする
発行者
署名済み
+ コードを忘れた場合、資金にアクセスできなくなります。コードの回復は不可能です。
フィードバックを送信
詳細
インターネット接続を確認するか、別のネットワークに切り替えてください。
@@ -560,6 +569,7 @@
%1$s 、 %2$s
アドレス
宛先タグ
+ 送金画面を閉じてもよろしいですか?
アドレスを入力
アドレスはウォレットアドレスと同じです
無効なタグです。取引には追加されません。
@@ -704,6 +714,7 @@
ネットワーク%s内の保留中の取引が完了すると、送金が可能になります。
現在、 %sの売却はご利用いただけません。アップデート情報をご確認ください。
%s のステーキングは現在ご利用いただけません。最新情報をご確認ください。
+ アドレスを選択
XPUBを生成する
非表示
このトークンをメイン画面から非表示にします。トークンの管理ページからいつでも再度追加できます。
diff --git a/core/res/src/main/res/values-ru/strings.xml b/core/res/src/main/res/values-ru/strings.xml
index 8fef85b5aa..741704103a 100644
--- a/core/res/src/main/res/values-ru/strings.xml
+++ b/core/res/src/main/res/values-ru/strings.xml
@@ -13,6 +13,9 @@
Выбранный кошелёк не поддерживает сеть %1$s
Для активации криптографии сети %1$s необходимо сбросить кошелек до заводских настроек. Пожалуйста, выведите свои средства, чтобы не потерять их, после сброса доступ к текущему кошельку будет невозможен.
Токены в сети %1$s не поддерживаются этой картой из-за ограничений прошивки.
+ Спасибо за ваш отзыв. Мы ответим в кратчайшие сроки.
+ Ваши предложения отправлены
+ Пожалуйста, попробуйте приложить карту в точности, как показано на анимации, либо прочтите руководство по сканированию. Если проблема осталась, то запросите поддержку.
У вас возникли трудности со сканированием карты?
Эта карта не предназначена для работы с этим приложением
Подключите функцию комиссии по умолчанию и при формировании транзакции на отправку средств комиссия будет выставлена автоматически, а экран комиссии пропущен. Вы всегда сможете на него вернуться.
@@ -27,6 +30,8 @@
Тёмная
Светлая
Как в системе
+ При выборе настройки как в системе приложение будет использовать тему в соответствии с настройками вашего устройства
+ Системная
Тема
Настройки приложения
Чтобы скрыть или показать баланс, просто поверните ваше устройство вниз или отключите опцию его в разделе \"Настройки\"
@@ -95,6 +100,7 @@
Удалить
Отключено
+ Отключить
Готово
Включить
Включено
@@ -131,6 +137,7 @@
Отклонить
Перезагрузить
Переименовать
+ Повторить
Сохранить
Сохранить изменения
Искать
@@ -157,6 +164,7 @@
Я понял
Произошла ошибка. Пожалуйста, попробуйте снова.
Недоступно
+ Предупреждение
Да
Адрес контракта скопирован!
Доступные сети
@@ -204,6 +212,7 @@
Скрывать балансы жестом переворота
Эмитент
Подписано
+ Если вы забудете код, то потеряете доступ к своим средствам. Восстановление кода невозможно.
Отправить отзыв
Подробности
Проверьте подключение с интернетом или переключитесь на другую сеть
@@ -505,6 +514,7 @@
%1$s, %2$s
Адрес
Код назначения
+ Вы действительно хотите закрыть экран отправки транзакции?
Введите адрес
Адрес совпадает с адресом кошелька
Недопустимый Tag. Он не будет добавлен в транзакцию.
@@ -629,6 +639,7 @@
Отправка средств станет доступной после завершения транзакции(-ий) в сети %s
В данный момент продажа %s недоступна. Следите за нашими обновлениями.
В данный момент стейкинг монеты %s недоступен. Следите за нашими обновлениями.
+ Выберите адрес
Сгенерировать XPUB
Скрыть
Вы скрываете токен с главного экрана, но в любой момент сможете добавить его обратно через страницу управления токенами.
diff --git a/core/res/src/main/res/values-uk-rUA/strings.xml b/core/res/src/main/res/values-uk-rUA/strings.xml
index 320017ffd8..1c150d0e88 100644
--- a/core/res/src/main/res/values-uk-rUA/strings.xml
+++ b/core/res/src/main/res/values-uk-rUA/strings.xml
@@ -13,6 +13,9 @@
Обраний гаманець не підтримує мережу %1$s
Щоб активувати криптографічне шифрування блокчейну %1$s, вам потрібно скинути налаштування гаманця до заводських. Зніміть свої кошти перед цим, щоб переконатися, що ви їх не втратите, а потім завершіть процес скидання. Вхід до поточного гаманця буде неможливий після скидання.
Токени в мережі %1$s не підтримуються цією карткою через обмеження прошивки.
+ Дякуємо за ваш відгук. Ми відповімо якнайшвидше.
+ Ваші пропозиції надіслано
+ Будь ласка, спробуйте прикласти картку точно так, як показано на анімації, або прочитайте наш простий посібник. Якщо проблема залишилася, зверніться до служби підтримки.
У вас виникли труднощі зі скануванням картки?
Ця картка не призначена для роботи з цим додатком
Комісія за замовчуванням
@@ -28,6 +31,8 @@
Темна
Світла
Системна
+ При виборі \"Системна\" застосунок буде використовувати тему відповідно до налаштувань вашого пристрою
+ Системна
Тема
Налаштування застосунку
Щоб приховати або показати свій баланс, просто переверніть екран пристрою вниз або вимкніть його в налаштуваннях
@@ -99,6 +104,7 @@
Видалити
Вимкнуто
+ Від\'єднати
Готово
Увімкнути
Увімкнено
@@ -135,6 +141,7 @@
Відхилити
Перезавантажити
Перейменувати
+ Повторити
Зберегти
Зберегти зміни
Шукати
@@ -163,6 +170,7 @@
Виникла помилка. Будь ласка, спробуйте ще раз.
Недоступно
Скасувати стейкінг
+ Увага
Так
Адреса контракту скопійована!
Доступні мережі
@@ -210,6 +218,7 @@
Приховувати баланси жестом перевороту
Емітент
Підписано
+ Якщо ви забудете код, ви втратите доступ до своїх коштів. Відновлення коду неможливе.
Надіслати відгук
Деталі
Перевірте підключення до інтернету або змініть мережу
@@ -584,6 +593,7 @@
%1$s, %2$s
Адреса
Тег призначення
+ Ви дійсно хочете закрити екран надсилання транзакції?
Введіть адресу
Адреса збігається з адресою гаманця
Недопустимий Tag. Він не буде доданий у транзакцію.
@@ -648,7 +658,7 @@
≈ %1$s (вкл. комісію: %2$s )
%s буде надіслано
Транзакція успішно підписана і відправлена до блокчейну. Баланс гаманця буде оновлено через деякий час
- %1$s — це монета у мережі Tron. Щоб розрахувати комісію та здійснити транзакцію, вам необхідно внести певну кількість Tron(TRX) на свій рахунок.
+ %1$s — це монета у мережі Tron. Щоб розрахувати комісію та здійснити транзакцію, вам необхідно внести певну кількість Tron (TRX) на свій рахунок.
Недійсна адреса
%1$s (%2$s)
Трансакцію надіслано
@@ -729,6 +739,7 @@
Надсилання коштів стане доступним після завершення транзакції(-ій) в мережі %s
Наразі продаж %s недоступний. Слідкуйте за нашими оновленнями.
Стейкінг %s зараз недоступний. Будь ласка, слідкуйте за нашими оновленнями.
+ Оберіть адресу
Згенерувати XPUB
Приховати
Ви збираєтеся приховати цей токен з головного екрану. Ви можете додати його назад будь-коли на сторінці керування токенами.
diff --git a/core/res/src/main/res/values-zh-rTW/strings.xml b/core/res/src/main/res/values-zh-rTW/strings.xml
index ae1e771935..b198f3eee7 100644
--- a/core/res/src/main/res/values-zh-rTW/strings.xml
+++ b/core/res/src/main/res/values-zh-rTW/strings.xml
@@ -9,6 +9,9 @@
原因:%s
無法發送交易
此卡不支持%1$s網路上的代幣因為韌體限制
+ 感謝您的反饋。我們會盡快回复
+ 你的建議已送出
+ 請嘗試完全按照動畫中顯示的方式點擊卡片或請求支持
有困難在掃描卡上嗎?
此卡不適用於此app
轉到設置以在 Tangem App 中啟用生物識別身份驗證
@@ -53,6 +56,7 @@
創造
刪除
禁用
+ 斷開連接
完成
允許
啟用
@@ -65,6 +69,7 @@
主卡片
拒絕
重新命名
+ 重試
保存設置
搜索
搜尋代幣
@@ -83,6 +88,7 @@
交易
我了解
無法觸達
+ 警告
是
已複製代幣地址
支持的網路
@@ -115,6 +121,7 @@
App Currency
發行人
簽署
+ 如果您忘記密碼,您將無法使用您的資金。無法恢復代碼
更多
檢查您的網路連接或切換到其他網絡
服務條款
diff --git a/core/res/src/main/res/values/strings.xml b/core/res/src/main/res/values/strings.xml
index 87ea9c3841..46299409f1 100644
--- a/core/res/src/main/res/values/strings.xml
+++ b/core/res/src/main/res/values/strings.xml
@@ -13,6 +13,9 @@
The selected does not support the %1$s network
To activate the %1$s blockchain\'s cryptographic encryption, you\'ll need to reset the wallet to factory settings. Please withdraw your funds before doing so to ensure that you don\'t lose them, and then complete the reset process. Access to the current wallet will not be possible after the reset.
Tokens in %1$s network are not supported by this card due to firmware limitation.
+ Thank you for your feedback. We will respond as soon as possible
+ Your suggestions were sent
+ Please try to tap the card exactly as shown in the animation or read our simple guide, or request support. If the problem persists, please request support.
Are you having difficulty scanning your card?
This card is not designed to work with this app
Default Fee
@@ -28,6 +31,8 @@
Dark
Light
System default
+ If system is selected, the app will auto-adjust based on your device\'s system settings
+ System
Theme
App settings
To hide or show your balances, simply flip your device screen down, or switch it off in Settings
@@ -39,7 +44,7 @@
Too many attempts
You have disabled biometric authentication on your phone and will not be able to save wallets in the app. To save wallets, please enable the biometric authentication function in your phone settings.
Start backup process
- From your fiat card or bank account
+ With your bank card or bank account
- %d card
- %d cards
@@ -95,6 +100,7 @@
Delete
Disabled
+ Disconnect
Done
Enable
Enabled
@@ -131,6 +137,7 @@
Reject
Reload
Rename
+ Retry
Save
Save changes
Search
@@ -159,6 +166,7 @@
There was an error. Please try again.
Unreachable
Unstake
+ Warning
Yes
Contract address copied!
Available networks
@@ -206,6 +214,7 @@
Flip-to-Hide Balances
Issuer
Signed
+ If you forget the code you will lose access to your funds. Code recovery is not possible.
Send feedback
Details
Check your internet connection or switch to a different network
@@ -267,7 +276,7 @@
No tokens found. Please try another request
ID: %s
Transaction ID copied
- From another currency in your wallet
+ With another currency in your wallet
The following information is optional. You can erase it if you don\'t want to share it.
Tell us what functions you are missing, and we will try to help you.
Please tell us what card do you have
@@ -568,6 +577,7 @@
%1$s, %2$s
Address
Destination Tag
+ Are you sure you want to close the send screen?
Enter address
Address is the same as wallet address
Invalid Tag. It won\'t be added to the transaction.
@@ -632,7 +642,7 @@
≈ %1$s (inc. fee: %2$s)
%s will be sent
Transaction has been successfully signed and sent to the blockchain node. Wallet balance will be updated in a while
- %1$s is an asset in the Tron network. To calculate the fee and make a transaction you need to deposit some Tron(TRX) in your account.
+ %1$s is an asset in the Tron network. To calculate the fee and make a transaction you need to deposit some Tron (TRX) in your account.
Invalid address
%1$s (%2$s)
Transaction sent
@@ -714,6 +724,7 @@
Sending funds will be available once the pending transaction(s) in network %s is complete
Selling %s is not available at the moment. Please check our updates.
Staking %s is not available at the moment. Please check our updates.
+ Choose address
Generate XPUB
Hide
You are about to hide this token from the main screen. You can add it back anytime through the manage tokens page.
diff --git a/core/ui/src/main/java/com/tangem/core/ui/utils/BigDecimalFormatter.kt b/core/ui/src/main/java/com/tangem/core/ui/utils/BigDecimalFormatter.kt
index 778d4f08d8..e5d94f85b7 100644
--- a/core/ui/src/main/java/com/tangem/core/ui/utils/BigDecimalFormatter.kt
+++ b/core/ui/src/main/java/com/tangem/core/ui/utils/BigDecimalFormatter.kt
@@ -37,7 +37,7 @@ object BigDecimalFormatter {
maximumFractionDigits = decimals.coerceAtMost(maximumValue = 8)
minimumFractionDigits = 2
isGroupingUsed = true
- roundingMode = RoundingMode.DOWN
+ roundingMode = RoundingMode.HALF_UP
}
return formatter.format(cryptoAmount).let {
diff --git a/core/ui/src/main/java/com/tangem/core/ui/utils/RequestPushPermission.kt b/core/ui/src/main/java/com/tangem/core/ui/utils/RequestPushPermission.kt
index 575485aae9..cac63e19f7 100644
--- a/core/ui/src/main/java/com/tangem/core/ui/utils/RequestPushPermission.kt
+++ b/core/ui/src/main/java/com/tangem/core/ui/utils/RequestPushPermission.kt
@@ -26,11 +26,10 @@ fun requestPushPermission(
val permissionState = pushPermission?.let { permission ->
val tempPermissionState = rememberPermissionState(permission = permission)
rememberPermissionState(permission = permission) {
- when {
- it -> onAllow()
- !tempPermissionState.status.shouldShowRationale && !isFirstTimeAsking -> onOpenSettings()
- else -> onDeny()
- }
+ val isGranted = tempPermissionState.status.isGranted
+ val shouldShowRationale = tempPermissionState.status.shouldShowRationale
+
+ if (isGranted && !shouldShowRationale && !isFirstTimeAsking) onOpenSettings()
}
}
diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt
index 3a9681b918..ed7f027de5 100644
--- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt
+++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt
@@ -159,22 +159,24 @@ internal class WalletViewModel @Inject constructor(
val isFirstTimeRequested = isFirstTimeAskingPermissionUseCase(PUSH_PERMISSION).getOrElse { true }
val wasInitiallyAsk = shouldInitiallyAskPermissionUseCase(PUSH_PERMISSION).getOrElse { true }
- val onRequestLater: () -> Unit = if (wasInitiallyAsk) {
- clickIntents::onDelayAskPushPermission
- } else {
- clickIntents::onNeverAskPushPermission
+ val onRequestLater: (Boolean) -> Unit = { isUserDismissed ->
+ if (wasInitiallyAsk) {
+ clickIntents.onDelayAskPushPermission(isUserDismissed)
+ } else {
+ clickIntents.onNeverAskPushPermission(isUserDismissed)
+ }
}
stateHolder.showBottomSheet(
content = PushNotificationsBottomSheetConfig(
isFirstTimeRequested = isFirstTimeRequested,
wasInitiallyAsk = wasInitiallyAsk,
onRequest = clickIntents::onRequestPushPermission,
- onRequestLater = onRequestLater,
+ onRequestLater = { onRequestLater(false) },
onAllow = clickIntents::onAllowPushPermission,
onDeny = clickIntents::onDenyPushPermission,
openSettings = settingsManager::openSettings,
),
- onDismiss = onRequestLater,
+ onDismiss = { onRequestLater(true) },
)
}
}
diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/intents/WalletPushPermissionClickIntents.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/intents/WalletPushPermissionClickIntents.kt
index fe8848daf5..62fec7ce4f 100644
--- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/intents/WalletPushPermissionClickIntents.kt
+++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/intents/WalletPushPermissionClickIntents.kt
@@ -15,9 +15,9 @@ internal interface WalletPushPermissionClickIntents {
fun onRequestPushPermission()
- fun onDelayAskPushPermission()
+ fun onDelayAskPushPermission(isUserDismissed: Boolean)
- fun onNeverAskPushPermission()
+ fun onNeverAskPushPermission(isUserDismissed: Boolean)
fun onDenyPushPermission()
@@ -32,7 +32,9 @@ internal class WalletPushPermissionClickIntentsImplementor @Inject constructor(
private val analyticsEventHandler: AnalyticsEventHandler,
) : BaseWalletClickIntents(), WalletPushPermissionClickIntents {
+ private var isUserDismissedDialog: Boolean = true
override fun onRequestPushPermission() {
+ isUserDismissedDialog = false
analyticsEventHandler.send(
PushNotificationAnalyticEvents.ButtonAllow(AnalyticsParam.ScreensSources.Main),
)
@@ -41,7 +43,9 @@ internal class WalletPushPermissionClickIntentsImplementor @Inject constructor(
}
}
- override fun onDelayAskPushPermission() {
+ override fun onDelayAskPushPermission(isUserDismissed: Boolean) {
+ if (!isUserDismissedDialog) return
+ isUserDismissedDialog = isUserDismissed
viewModelScope.launch {
analyticsEventHandler.send(
PushNotificationAnalyticEvents.ButtonLater(AnalyticsParam.ScreensSources.Main),
@@ -50,7 +54,9 @@ internal class WalletPushPermissionClickIntentsImplementor @Inject constructor(
}
}
- override fun onNeverAskPushPermission() {
+ override fun onNeverAskPushPermission(isUserDismissed: Boolean) {
+ if (!isUserDismissedDialog) return
+ isUserDismissedDialog = isUserDismissed
viewModelScope.launch {
analyticsEventHandler.send(PushNotificationAnalyticEvents.ButtonCancel)
neverRequestPermissionUseCase(PUSH_PERMISSION)