spacedandy-agents-simplex
0ac50cd4c3
fixup! docs: describe badge tier changes and restore as the service handles them
2026-10-22 20:39:05 +04:00
spacedandy-agents-simplex
e9f859759d
fixup! docs: describe badge tier changes and restore as the service handles them
2026-10-22 20:39:05 +04:00
spacedandy-agents-simplex
a43a44f2ee
docs: describe badge tier changes and restore as the service handles them
...
The RPC document splits a store tier change by store and direction: the
app never starts one, an App Store raise seen within a day of its charge
is sent as upgradeBadgeSubscription, every other change waits for the
renewal check, and a Play plan change is a new token, a new purchase.
transferBadge and its limits are checked against the handlers, and the
upgrades that are not built are marked so.
The overview admits what Restore discloses: the service links the two
purchase keys, a store receipt moves its subscription to whoever presents
it within the move limit, and a new badge or tier is shown as soon as it
is issued. The Android gap names what remains of Restore.
2026-10-22 20:39:05 +04:00
spaced4ndy
7a93b63385
badge-service: let a restore ask the store without waiting for the purchase's own check
2026-10-22 20:00:25 +04:00
spacedandy-agents-simplex
03cc98f4db
Merge branch 'master' into f/badge-subscriptions
...
# Conflicts:
# apps/ios/SimpleX.xcodeproj/project.pbxproj
# simplex-chat.cabal
# src/Simplex/Chat/Store/SQLite/Migrations.hs
2026-10-21 18:24:09 +00:00
spaced4ndy
1bbbad99cb
core, badge-service, ios, android: change badge tier in the store, and restore a subscription on another device ( #7795 )
2026-10-21 16:53:15 +00:00
Evgeny and Evgeny @ SimpleX Chat
3126d9b544
ios: set default proxy mode ( #7790 )
...
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-10-21 14:35:41 +01:00
spaced4ndy
f8f64a3047
core, ios, android: explain a failed badge renewal and stop retrying a subscription the store forgot; tests ( #7788 )
2026-10-21 07:44:20 +00:00
spaced4ndy
6cef6b9e60
badge-service: name the purchase each request came from in the log
2026-10-20 20:32:04 +04:00
spaced4ndy
696abf13ab
badge-service: name the purchase each request came from in the log
2026-10-20 20:19:01 +04:00
spaced4ndy
b6376b90c7
fix compilation
2026-10-20 19:26:06 +04:00
spaced4ndy
a68eb91da1
badge-service: log each request's command and each store check's outcome
2026-10-20 19:16:36 +04:00
spaced4ndy
3c61a3ced4
badge-service: credit test purchases and check the store during coverage in a dev deployment
2026-10-20 18:50:52 +04:00
SimpleX Chat
fcef2ad008
7.1-beta.7: android 387, desktop 168, ios 363
2026-10-20 12:34:51 +00:00
spacedandy-agents-simplex
038f50ac30
core, ios, android, desktop: let a lapsed iOS subscriber subscribe again to the badge the profile retired
...
The iOS app refused any subscription to an Apple ID that ever subscribed, so a lapsed subscriber could never subscribe again in the app. Core now tells the apps each subscription's store reference (BadgeSubscription.transactionRef, optional in JSON), and the iOS gate opens a subscription card only when every earlier subscription of the Apple ID is the active profile's newest purchase, retired, of the card's badge: the one charge core resumes. Kotlin gets the model field only, as Play gives a resubscription a new token and needs no gate.
Run: 011-subscription-resume, slice S2b
2026-10-20 16:33:12 +04:00
spacedandy-agents-simplex
c0619385e9
fixup! badge-service: let a dev deployment ask its mock store while coverage runs
2026-10-20 15:37:53 +04:00
spacedandy-agents-simplex
e570748206
fixup! badge-service: let a dev deployment ask its mock store while coverage runs
2026-10-20 15:37:53 +04:00
spacedandy-agents-simplex
e116987e5b
badge-service: let a dev deployment ask its mock store while coverage runs
...
[dev] check_store_during_coverage = on makes every issueBadge for a
subscription ask the dev mock, during paid coverage too, and bank the
month of a charge it can grant, issued once coverage reaches it. So a
renewal can be watched by hand without waiting a month, and a mock that
forgot the plan after a restart answers ended at once.
Off by default, and refused unless accept_unverified_store_receipts is
on, which is itself refused beside a real store: a real store has not
started its next charge while coverage runs, and asking spends the
quota every subscriber shares.
Run: 011-subscription-tools, slice S3a
2026-10-20 15:37:53 +04:00
+104
8af38dc33e
ui: translations ( #7782 )
...
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Russian)
Currently translated at 99.5% (2501 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2453 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 96.4% (2424 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hant/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Dutch)
Currently translated at 81.3% (2044 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/
* Translated using Weblate (Dutch)
Currently translated at 81.3% (2044 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/
* Translated using Weblate (Dutch)
Currently translated at 81.3% (2044 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/
* Translated using Weblate (Dutch)
Currently translated at 81.3% (2044 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/
* Translated using Weblate (Dutch)
Currently translated at 81.3% (2044 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Japanese)
Currently translated at 48.7% (1224 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ja/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 35.6% (896 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pt_BR/
* Translated using Weblate (Croatian)
Currently translated at 1.8% (47 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hr/
* Translated using Weblate (Arabic)
Currently translated at 29.2% (735 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ar/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 85.6% (2152 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/uk/
* Translated using Weblate (Lithuanian)
Currently translated at 1.5% (38 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/lt/
* Translated using Weblate (Finnish)
Currently translated at 44.2% (1113 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fi/
* Translated using Weblate (Finnish)
Currently translated at 44.2% (1113 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fi/
* Translated using Weblate (Finnish)
Currently translated at 44.2% (1113 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fi/
* Translated using Weblate (Korean)
Currently translated at 17.5% (441 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ko/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Polish)
Currently translated at 86.2% (2168 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/
* Translated using Weblate (Portuguese)
Currently translated at 6.0% (153 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pt/
* Translated using Weblate (Greek)
Currently translated at 1.0% (27 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/el/
* Translated using Weblate (Hebrew)
Currently translated at 26.3% (661 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/he/
* Translated using Weblate (Thai)
Currently translated at 42.9% (1079 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/th/
* Translated using Weblate (Thai)
Currently translated at 42.9% (1079 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/th/
* Translated using Weblate (Bengali)
Currently translated at 0.1% (3 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/bn/
* Translated using Weblate (Bulgarian)
Currently translated at 61.4% (1544 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/bg/
* Translated using Weblate (Bulgarian)
Currently translated at 61.4% (1544 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/bg/
* Translated using Weblate (Bulgarian)
Currently translated at 61.4% (1544 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/bg/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Turkish)
Currently translated at 85.4% (2147 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/tr/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Azerbaijani)
Currently translated at 47.0% (1183 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Azerbaijani)
Currently translated at 47.0% (1183 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Bulgarian)
Currently translated at 80.9% (2430 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/bg/
* Translated using Weblate (Russian)
Currently translated at 93.9% (2820 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (German)
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Lithuanian)
Currently translated at 56.6% (1701 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/lt/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 92.0% (2763 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hant/
* Translated using Weblate (Thai)
Currently translated at 42.2% (1269 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/th/
* Translated using Weblate (Polish)
Currently translated at 82.0% (2463 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/
* Translated using Weblate (Greek)
Currently translated at 81.7% (2454 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/el/
* Translated using Weblate (Croatian)
Currently translated at 48.5% (1457 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hr/
* Translated using Weblate (Czech)
Currently translated at 89.4% (2685 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Hebrew)
Currently translated at 69.1% (2074 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/he/
* Translated using Weblate (Persian)
Currently translated at 81.1% (2434 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fa/
* Translated using Weblate (Dutch)
Currently translated at 78.0% (2342 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/nl/
* Translated using Weblate (Indonesian)
Currently translated at 88.3% (2650 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/id/
* Translated using Weblate (Bengali)
Currently translated at 1.7% (53 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/bn/
* Translated using Weblate (Arabic)
Currently translated at 94.2% (2827 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Korean)
Currently translated at 49.5% (1488 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ko/
* Translated using Weblate (Italian)
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Hungarian)
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Finnish)
Currently translated at 47.9% (1438 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fi/
* Translated using Weblate (French)
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (Romanian)
Currently translated at 82.0% (2463 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ro/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 96.5% (2897 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Azerbaijani)
Currently translated at 0.3% (10 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/az/
* Translated using Weblate (Ukrainian)
Currently translated at 86.3% (2590 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/uk/
* Translated using Weblate (Japanese)
Currently translated at 91.1% (2735 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ja/
* Translated using Weblate (Turkish)
Currently translated at 92.8% (2787 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/tr/
* Translated using Weblate (Spanish)
Currently translated at 96.5% (2898 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Portuguese)
Currently translated at 39.3% (1180 of 3001 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt/
* Update translation files
Updated by "Remove blank strings" hook in Weblate.
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/
* ios: remove empty targets, restore az/cs strings
* ios: import and export localizations
* ios: fix broken placeholders in translations
* ios: restore cs draft translations
* ios: fix more broken placeholders and link
---------
Co-authored-by: mlanp <mlanp@users.noreply.hosted.weblate.org >
Co-authored-by: Anonymous <anonymous@users.noreply.hosted.weblate.org >
Co-authored-by: Pixelcode <{pixelcode|git}@pgp.forgoodeyesonly.eu >
Co-authored-by: Evgeny Poberezkin <epoberezkin@users.noreply.hosted.weblate.org >
Co-authored-by: tn <tr4jan@users.noreply.hosted.weblate.org >
Co-authored-by: J. Lavoie <edanas@users.noreply.hosted.weblate.org >
Co-authored-by: J R <jrs@users.noreply.hosted.weblate.org >
Co-authored-by: Sarfaraz Ahmed <sahmed@users.noreply.hosted.weblate.org >
Co-authored-by: sith-on-mars <sith-on-mars@users.noreply.hosted.weblate.org >
Co-authored-by: TheFirstMonster <thefirstmonster@users.noreply.hosted.weblate.org >
Co-authored-by: khalidbelk <khalidbelk@users.noreply.hosted.weblate.org >
Co-authored-by: Near <near8954@users.noreply.hosted.weblate.org >
Co-authored-by: thedmdim <thedmdim@users.noreply.hosted.weblate.org >
Co-authored-by: Hosted Weblate user 107176 <zhuk2@users.noreply.hosted.weblate.org >
Co-authored-by: Artem Vorotnikov <vorot93@users.noreply.hosted.weblate.org >
Co-authored-by: Paul <acornacre@users.noreply.hosted.weblate.org >
Co-authored-by: А О <twofish85@users.noreply.hosted.weblate.org >
Co-authored-by: whoami11 <whoami021992@users.noreply.hosted.weblate.org >
Co-authored-by: Skyward Copied <skywardcopied@users.noreply.hosted.weblate.org >
Co-authored-by: Evgeny <esp@users.noreply.hosted.weblate.org >
Co-authored-by: Игорь Линчевский <insrtnqme@users.noreply.hosted.weblate.org >
Co-authored-by: Name Lastname <simplex-edit0r@users.noreply.hosted.weblate.org >
Co-authored-by: Ophiushi <41908476+ishi-sama@users.noreply.github.com >
Co-authored-by: Mqlx <mqlx@users.noreply.hosted.weblate.org >
Co-authored-by: Ranakan <ranak4n@users.noreply.hosted.weblate.org >
Co-authored-by: Karl Rinneberg <hundertwasser@users.noreply.hosted.weblate.org >
Co-authored-by: indiandoc <indiandoc@users.noreply.hosted.weblate.org >
Co-authored-by: cedev-1 <121963179+cedev-1@users.noreply.github.com >
Co-authored-by: Deleted User <deleted-6980@users.noreply.hosted.weblate.org >
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
Co-authored-by: Float <float@users.noreply.hosted.weblate.org >
Co-authored-by: Deleted User <dnstxqet@users.noreply.hosted.weblate.org >
Co-authored-by: BlacAmDK <blacamdk@users.noreply.hosted.weblate.org >
Co-authored-by: re me <jisizhang001@users.noreply.hosted.weblate.org >
Co-authored-by: Aaron H <chieferino@users.noreply.hosted.weblate.org >
Co-authored-by: Loping151 <loping151@users.noreply.hosted.weblate.org >
Co-authored-by: cllih <cllih@users.noreply.hosted.weblate.org >
Co-authored-by: Zhiyounihao <zhiyouni@users.noreply.hosted.weblate.org >
Co-authored-by: M Sarmad Qadeer <msarmadqadeer@users.noreply.hosted.weblate.org >
Co-authored-by: Albert Bob <vicdorke@users.noreply.hosted.weblate.org >
Co-authored-by: 小连招 <onecombo666@users.noreply.hosted.weblate.org >
Co-authored-by: Yay <yay9hbx5otn5@users.noreply.hosted.weblate.org >
Co-authored-by: Frank Yang <frankyang96@users.noreply.hosted.weblate.org >
Co-authored-by: Citrus <citrus@users.noreply.hosted.weblate.org >
Co-authored-by: Ross Li <ross89223@users.noreply.hosted.weblate.org >
Co-authored-by: No name <certainbot@users.noreply.hosted.weblate.org >
Co-authored-by: Luis Morillo Najarro <lsmor@users.noreply.hosted.weblate.org >
Co-authored-by: Darío Hereñú <kant@users.noreply.hosted.weblate.org >
Co-authored-by: Víctor <vzamanillo@users.noreply.hosted.weblate.org >
Co-authored-by: kudebug <kudebug@users.noreply.hosted.weblate.org >
Co-authored-by: Carlos Perez <charlieper@users.noreply.hosted.weblate.org >
Co-authored-by: Isaac ALejandro Lopez <justanormalguy@users.noreply.hosted.weblate.org >
Co-authored-by: gacarel <gacarel@users.noreply.hosted.weblate.org >
Co-authored-by: John m <jvanmanen@users.noreply.hosted.weblate.org >
Co-authored-by: M1K4 <mika-nl@users.noreply.hosted.weblate.org >
Co-authored-by: a4318 <a4318@users.noreply.hosted.weblate.org >
Co-authored-by: Miyu Sakatsuki <miyu-dev@users.noreply.hosted.weblate.org >
Co-authored-by: ikyhtr <ikyhtr@users.noreply.hosted.weblate.org >
Co-authored-by: 小林照幸 <koba-ninkigumi@users.noreply.hosted.weblate.org >
Co-authored-by: proudmuslim-dev <proudmuslim-dev@users.noreply.hosted.weblate.org >
Co-authored-by: Ikko Eltociear Ashimine <eltociear@gmail.com >
Co-authored-by: Rei <rei_@users.noreply.hosted.weblate.org >
Co-authored-by: yokoba0413 <yokoba0413@users.noreply.hosted.weblate.org >
Co-authored-by: ryokky3 <ryokky3@users.noreply.hosted.weblate.org >
Co-authored-by: koreirozzu <koreirozzu@users.noreply.hosted.weblate.org >
Co-authored-by: daydreamer-json <daydreamer-json@users.noreply.hosted.weblate.org >
Co-authored-by: acevif <acevif@users.noreply.hosted.weblate.org >
Co-authored-by: ActiveTK. <webmaster@activetk.jp >
Co-authored-by: Dima Sivan <dimasivan@users.noreply.hosted.weblate.org >
Co-authored-by: zenobit <zenobit@disroot.org >
Co-authored-by: Mehmed <don43@users.noreply.hosted.weblate.org >
Co-authored-by: mslr8 <hosted.weblate.org.poncho089@passmail.net >
Co-authored-by: Pluto <offplutonium@users.noreply.hosted.weblate.org >
Co-authored-by: idk <ciganzelezo@users.noreply.hosted.weblate.org >
Co-authored-by: Nenad <nenadmirkovic00@gmail.com >
Co-authored-by: Magorak Magorov <magorakmagorov@users.noreply.hosted.weblate.org >
Co-authored-by: Maksym Lukashenko <prototypem995@users.noreply.hosted.weblate.org >
Co-authored-by: Max <prototypem95@users.noreply.hosted.weblate.org >
Co-authored-by: ghost <ghosthamster@users.noreply.hosted.weblate.org >
Co-authored-by: rider of the storm <passat-b6-tdi@users.noreply.hosted.weblate.org >
Co-authored-by: Deleted User <mgorpinic2005@gmail.com >
Co-authored-by: Hotripak <hotr1pak@users.noreply.hosted.weblate.org >
Co-authored-by: Groovy394 <groovy394@users.noreply.hosted.weblate.org >
Co-authored-by: aquaticexpectancy <aquaticexpectancy@users.noreply.hosted.weblate.org >
Co-authored-by: Andrii Sudak <andrii-sudak@users.noreply.hosted.weblate.org >
Co-authored-by: sr sr <sr1919os@users.noreply.hosted.weblate.org >
Co-authored-by: petri <petrik@users.noreply.hosted.weblate.org >
Co-authored-by: Jiri Grönroos <artnay@users.noreply.hosted.weblate.org >
Co-authored-by: B.O.S.S <BxOxSxS@protonmail.com >
Co-authored-by: Jester Hodl <jesterhodl@users.noreply.hosted.weblate.org >
Co-authored-by: Kszyche <hostedweblate001user@users.noreply.hosted.weblate.org >
Co-authored-by: Wiesław Fijołek <percival@users.noreply.hosted.weblate.org >
Co-authored-by: Arturro43 <arturro43@users.noreply.hosted.weblate.org >
Co-authored-by: Omikorin <git@omikor.in >
Co-authored-by: Titapa (PunPun) Chaiyakiturajai <titapapunne@users.noreply.hosted.weblate.org >
Co-authored-by: elgratea <flantito@users.noreply.hosted.weblate.org >
Co-authored-by: 109247019824 <109247019824@users.noreply.hosted.weblate.org >
Co-authored-by: Kaanito <kaanito@users.noreply.hosted.weblate.org >
Co-authored-by: Abdullah Koyuncu <wiseweb-works@users.noreply.hosted.weblate.org >
Co-authored-by: goknarbahceli <goknarbahceli@users.noreply.hosted.weblate.org >
Co-authored-by: Dennis <dennnis@users.noreply.hosted.weblate.org >
Co-authored-by: cervezagua <cervezagua@users.noreply.hosted.weblate.org >
Co-authored-by: Deleted User <deleted-65564@users.noreply.hosted.weblate.org >
Co-authored-by: Egehan KAHRAMAN <vastsea0@users.noreply.hosted.weblate.org >
Co-authored-by: Omer <abulomer@users.noreply.hosted.weblate.org >
Co-authored-by: xe1st <xe1st@users.noreply.hosted.weblate.org >
Co-authored-by: echoloji <echoloji@users.noreply.hosted.weblate.org >
Co-authored-by: U.S. <usnetiz@users.noreply.hosted.weblate.org >
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: Ghost of Sparta <makesocialfoss32@keemail.me >
Co-authored-by: d4f5409d <d4f5409d@users.noreply.hosted.weblate.org >
Co-authored-by: Mireli5656 <mireli5656@users.noreply.hosted.weblate.org >
Co-authored-by: Hosted Weblate <hosted@weblate.org >
2026-10-20 09:27:01 +01:00
spacedandy-agents-simplex
5dc5da61b2
docs: record that a badge subscription cannot be restored or bought again
...
Restoring a subscription on a new device or under another profile fails for two independent reasons, the client's restore reading only unfinished transactions on iOS and the service answering any key but the one it credited receipt_used, and a lapsed iOS subscriber cannot subscribe again on the same install either. Both gaps files record it in their own format, and both restorePurchases() say why reading the store's entitlements alone would not help.
Run: 010-subscription-lifecycle, slice S2c
2026-10-20 03:29:19 +00:00
spacedandy-agents-simplex
55d69781e8
core: retire a subscription badge as soon as its store says it ended
...
A subscription badge retired only on an ended answer to a request that was due, and only once the ledger's paidThrough had passed, so an ended answer while the ledger still covered, or the iOS app's report of StoreKit's expired or revoked state, left the badge shown, Support SimpleX unreachable and every purchase refused until a later request. Now an answered ended state is stored even while coverage runs (the service writes it only from a store check, after which it grants nothing), and every pass retires a subscription whose state, from this pass's answer or else as stored, is ended, whatever the ledger covers. The paidThrough guard stays at the prepaid call site, its only remaining user.
Run: 010-subscription-lifecycle, slice S1
2026-10-20 03:10:59 +00:00
spaced4ndy
2d093d8c0a
ui wip
2026-10-19 20:58:34 +04:00
Evgeny and Evgeny @ SimpleX Chat
ba9269a3ad
desktop: fix race condition when searching for address ( #7776 )
...
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-10-19 17:54:57 +01:00
spaced4ndy
2058daf700
ui
2026-10-19 19:29:21 +04:00
spaced4ndy
a1392e2713
ios: no alert when a badge purchase is cancelled
2026-10-19 18:29:49 +04:00
spaced4ndy
b5b9b664dd
ios, android, desktop: smaller Restore purchases label
2026-10-19 18:23:32 +04:00
spaced4ndy
9e62d09941
ios, android, desktop: show the badge privacy policy in the app
2026-10-19 18:13:09 +04:00
spaced4ndy
e2119cef14
ios, android, desktop: restore purchases on the Support SimpleX screen
2026-10-19 18:08:36 +04:00
spaced4ndy
140db8db88
ios, android: hide Restore purchases on the order screen
2026-10-19 17:57:51 +04:00
spaced4ndy
da39d8923a
update ios lib
2026-10-19 16:53:47 +04:00
+9
5b61fd5c99
ui: translations ( #7770 )
...
* website: disable badge page temporarily (#7516 )
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* Translated using Weblate (German)
Currently translated at 100.0% (2921 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (German)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (French)
Currently translated at 100.0% (2921 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2921 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.9% (2920 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.6% (2911 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2921 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Azerbaijani)
Currently translated at 32.9% (827 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Kurdish)
Currently translated at 29.3% (858 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ku/
* Translated using Weblate (Kurdish)
Currently translated at 32.8% (961 of 2921 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ku/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.9% (2929 of 2930 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2930 of 2930 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2930 of 2930 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Kurdish)
Currently translated at 38.3% (1123 of 2930 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ku/
* Translated using Weblate (German)
Currently translated at 100.0% (2930 of 2930 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Azerbaijani)
Currently translated at 33.2% (835 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.6% (2903 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.8% (2909 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Italian)
Currently translated at 98.0% (2913 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.9% (2911 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (German)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (French)
Currently translated at 99.3% (2952 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Arabic)
Currently translated at 97.1% (2888 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (French)
Currently translated at 99.8% (2967 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (Spanish)
Currently translated at 99.0% (2943 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.9% (2971 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2513 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 97.1% (2886 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Azerbaijani)
Currently translated at 37.4% (942 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (French)
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (Czech)
Currently translated at 90.8% (2701 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Azerbaijani)
Currently translated at 42.6% (1071 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Czech)
Currently translated at 91.0% (2705 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Czech)
Currently translated at 50.2% (1264 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/
* Translated using Weblate (Azerbaijani)
Currently translated at 45.2% (1136 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Azerbaijani)
Currently translated at 45.3% (1140 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (2972 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Azerbaijani)
Currently translated at 46.2% (1162 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* Translated using Weblate (Portuguese)
Currently translated at 37.2% (1108 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt/
* Translated using Weblate (Portuguese)
Currently translated at 40.1% (1193 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt/
* Translated using Weblate (Portuguese)
Currently translated at 40.2% (1195 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt/
* Translated using Weblate (Slovak)
Currently translated at 36.6% (1089 of 2972 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/sk/
* Translated using Weblate (Azerbaijani)
Currently translated at 47.0% (1183 of 2513 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/az/
* android, desktop: remove unused translations
* ui: fix translations (stale badge texts, missing placeholder, inverted and verbless strings)
- de, es, fr, hu, it, pt-BR, zh-Hans: re-translate badge strings from the current English (#7544 rewrote them after they were translated), restore the %1$s detail in badges_error_bad_service_response
- es, pt-BR: badges_savings is a discount, not "store"
- zh-Hans: Legend badge tier is 传奇, not a chart legend
- ku: "removed you" read as "you removed"; removed status is derxistî
- pt: verb buttons (Open, Archive, Save address settings, Paste link / Scan), link vs address in onboarding, accepted/removed %1$s events
- az (iOS): Mark deleted/verified/read, Keep conversation, Forward, Lock after, broken bold
- pt-BR: Monthly badge period, "shown on your profile" caption
- de: Support SimpleX as an action (it is also an alert button)
- cs (iOS): %d day singular, Test relay caption grammar
---------
Co-authored-by: Evgeny <evgeny@poberezkin.com >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: mlanp <github@lang.xyz >
Co-authored-by: Ranakan <ranakan.dev@protonmail.ch >
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
Co-authored-by: Hosted Weblate user 54392 <hamburger2048@users.noreply.hosted.weblate.org >
Co-authored-by: SanctumSaturn <oraculogithub@gmail.com >
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: Mireli5656 <miraliseyidli5656@gmail.com >
Co-authored-by: Terciman <ter.distant121@passinbox.com >
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org >
Co-authored-by: No name <usir.alerts@onionmail.org >
Co-authored-by: zenobit <zenobit@disroot.org >
Co-authored-by: Fábio Pereira (Serzedo) <fpereira-84@users.noreply.hosted.weblate.org >
Co-authored-by: Martin Kozempel <martin1928@users.noreply.hosted.weblate.org >
Co-authored-by: Mireli5656 <mireli5656@users.noreply.hosted.weblate.org >
Co-authored-by: Narasimha-sc <166327228+Narasimha-sc@users.noreply.github.com >
2026-10-19 12:24:24 +00:00
spacedandy-agents-simplex
a2e9456e6d
ios, android, desktop: use the dev badge page for testing (don't merge)
2026-10-19 11:19:14 +00:00
spacedandy-agents-simplex
ea359edb66
ios, android, desktop: choose a badge in the app
2026-10-19 11:18:25 +00:00
2ea1ec0d50
ui: reconnect call ( #7711 )
...
* Update Call.hs
* Update Internal.hs
* add reconnecting string
* Update WebRTC.kt
* desktop: show reconnecting state, keep call duration
* android keep connection time correct wiith adding reconnecting
* Update CallTypes.swift add reconnecting status on IOS
* Update WebRTC.swift add reconnecting
* add reconnecting and make sure call duration is correct
* Update call.ts
* core: regenerate call.js from call.ts
* Update Call.hs revert call status change
minimization
* Update Internal.hs rever to minimize changes
* Update CallTypes.swift minimize changes
* Update WebRTC.kt minimize changes
* Update CallView.desktop.kt desktop shows reconnecting without sending to core
* Update CallView.android.kt show reconnecting without sending it to the core
* Update ActiveCallView.swift show reconnecting to ui without sending to core
* Update CallView.desktop.kt add reconnecting sound on reconnect
* Update CallView.android.kt add reconnecting sound
* Update ActiveCallView.swift play reconnecting sound when reconnecting
* Update RecAndPlay.desktop.kt
* rebuild
* refactor
* build
* android, desktop: restart ICE to reconnect calls
* ios: restart ICE to reconnect calls
* webrtc: add call reconnection e2e tests
* android, desktop: fix lost call commands
---------
Co-authored-by: GuavaGoat <320862384+GuavaGoat@users.noreply.github.com >
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-10-19 12:17:16 +01:00
spacedandy-agents-simplex
d50488460d
Merge branch 'master' into f/badge-subscriptions
...
# Conflicts:
# src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt
2026-10-19 09:49:17 +00:00
Evgeny and Evgeny @ SimpleX Chat
0563460204
core, ui: support block markdown ( #7734 )
...
* plan: support block markdown
* update plans
* core, ui: markdown plans and implementation
* better
* simplify
* markdown tests and fixes
* implement
* fixes
* fix test
* bold
* block markdown rendering
* fix selection and rtl
* fixes
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-10-18 22:44:33 +01:00
Evgeny and Evgeny @ SimpleX Chat
77f9f4a464
core: add peer type "agent" ( #7738 )
...
* add agent peer type
* bot types
* agent app icons
* refactor
* smaller image
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-10-17 19:23:53 +01:00
spaced4ndy
19566b5274
Merge branch 'master' into f/badge-subscriptions
2026-10-16 23:32:16 +04:00
spaced4ndy
a356512645
Merge branch 'master' into badge-in-app-checkout
2026-10-16 22:07:28 +04:00
spaced4ndy
c998eb1fee
ios, android, desktop: use the production badge page
2026-10-16 21:30:55 +04:00
spaced4ndy
898c6f1266
ios, android, desktop: choose a badge on the website
2026-10-16 21:07:45 +04:00
sh
aaa388e570
desktop: add emoji picker ( #7708 )
...
* desktop: add emoji picker data and generator
* desktop: emoji picker in compose field
* desktop: document compose emoji picker
2026-10-16 14:34:04 +01:00
spacedandy-agents-simplex
613ce364f4
review: round 1 fixes
...
R1-A1: the docs and the PlayReads comment said the purchase path reads Play's subscriptions at most 300 times a minute; it asks about at most 300 subscriptions, and a credited one is read once more to acknowledge it, so made-up tokens can spend at most a tenth of the quota renewal checks share.
R1-A2: a comment on RequestLane repeated the one above the queues.
R1-B1: a test that a held pass, which sends no request, leaves the unrenewed run unchanged.
R1-B2: the outage test's last wait for the run is 30 s instead of 5 s.
Run: 007-subscriptions-retirement-lane, review round 1
2026-10-16 12:58:51 +00:00
spacedandy-agents-simplex
bc79a360ce
badge-service: read Play's subscriptions at most 300 times a minute for purchases
...
A Play subscription purchase is asked about without any offline check, so any token in the accepted grammar spends a read from the Subscriptions quota renewal checks share. The purchase path now takes one of a minute's 300 reads for each Play subscription it asks about, a tenth of Play's default quota; with none left, the claim is answered rate_limited with the seconds left in the minute and is not held, as Play was not asked. A claim already held takes no read, and App Store claims, verified offline first, take none.
Run: 007-subscriptions-retirement-lane, slice 3
2026-10-16 11:46:45 +00:00
spacedandy-agents-simplex
9fadf5f726
badge-service: name the web limiter's fixed-window step
...
takeToken counted a request against a minute's limit inline. The step becomes takeFrom, a pure function, so the purchase path's Play read allowance can use the same rule. No behaviour change.
Run: 007-subscriptions-retirement-lane, slice 3a
2026-10-16 11:36:30 +00:00
spacedandy-agents-simplex
6db4feb821
badge-service: check renewals on a lane no purchase waits on
...
Renewal checks shared the store lane with every purchase, so made-up Play tokens, which anyone can send, and the weekly burst of genuine purchases delayed them. Renewal checks now wait on a lane of their own, which only a request signed by the purchase key it names, and due its hourly store check, can reach.
Run: 007-subscriptions-retirement-lane, slice 2
2026-10-16 11:29:10 +00:00
spacedandy-agents-simplex
293cf6aadc
badge-service: name the lane each request waits on
...
The router answered "may this request ask a store" as a Bool; renewal checks are to get a lane of their own, which a Bool cannot say. requestLane now names the lane: main, purchase or renewal. Both store lanes still share one queue, so no request changes lane.
Run: 007-subscriptions-retirement-lane, slice 1
2026-10-16 11:18:25 +00:00
spacedandy-agents-simplex
ce7fed16b0
Merge branch 'badge-in-app-checkout' into f/badge-subscriptions
...
# Conflicts:
# src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt
2026-10-16 10:19:54 +00:00
spacedandy-agents-simplex
e3324c6828
Merge branch 'master' into badge-in-app-checkout
...
# Conflicts:
# simplex-chat.cabal
# src/Simplex/Chat/Store/Postgres/Migrations.hs
# src/Simplex/Chat/Store/SQLite/Migrations.hs
# src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt
# src/Simplex/Chat/Store/SQLite/Migrations/chat_schema.sql
2026-10-16 09:40:53 +00:00
spacedandy-agents-simplex
52c79c35ab
ios, android: no Restore purchases on Your badge, where a restored purchase could not be credited
...
Your badge shows only while a badge is shown, so a purchase Restore found there with no record on this device was held under a profile whose held receipts are not processed while it shows a badge: not credited, nothing said, and on Android acknowledged, ending Play's three-day refund. Restore stays on Check your order, the one screen where a restored purchase can be processed.
Run: 005-subscriptions-load-timing, slice 7
2026-10-15 18:39:37 +00:00