+5
e3b3cdf2d7
ui: translations ( #7032 )
...
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2767 of 2767 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% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Russian)
Currently translated at 100.0% (2392 of 2392 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.9% (2765 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Russian)
Currently translated at 99.9% (2765 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Czech)
Currently translated at 91.1% (2523 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 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% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2767 of 2767 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (Czech)
Currently translated at 94.6% (2619 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2767 of 2767 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% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Russian)
Currently translated at 100.0% (2392 of 2392 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.9% (2765 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Russian)
Currently translated at 99.9% (2765 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Czech)
Currently translated at 91.1% (2523 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 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% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2767 of 2767 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (Czech)
Currently translated at 94.6% (2619 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2392 of 2392 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% (2767 of 2767 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 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% (2768 of 2768 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% (2783 of 2783 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2783 of 2783 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 100.0% (2783 of 2783 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% (2783 of 2783 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2783 of 2783 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Turkish)
Currently translated at 89.6% (2145 of 2392 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% (2783 of 2783 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% (2392 of 2392 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% (2793 of 2793 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (German)
Currently translated at 100.0% (2392 of 2392 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% (2793 of 2793 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2793 of 2793 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% (2795 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2795 of 2795 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% (2795 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2795 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2795 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2795 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Czech)
Currently translated at 97.1% (2716 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Russian)
Currently translated at 99.0% (2769 of 2795 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2800 of 2800 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2800 of 2800 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2800 of 2800 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% (2392 of 2392 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% (2800 of 2800 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% (2800 of 2800 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2800 of 2800 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2800 of 2800 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% (2392 of 2392 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% (2392 of 2392 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% (2800 of 2800 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% (2392 of 2392 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% (2800 of 2800 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* process localizations
---------
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org >
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org >
Co-authored-by: Skyward Copied <skywardcopied@users.noreply.hosted.weblate.org >
Co-authored-by: slrslr <adm@prnet.info >
Co-authored-by: mlanp <github@lang.xyz >
Co-authored-by: zenobit <zenobit@disroot.org >
Co-authored-by: Isaac ALejandro Lopez <anonimoanonymus429@gmail.com >
Co-authored-by: echoloji <mehmetksm@tuta.io >
Co-authored-by: No name <usir.alerts@onionmail.org >
Co-authored-by: Андрей Абрамов <dassgutta@gmail.com >
Co-authored-by: Ghost of Sparta <makesocialfoss32@keemail.me >
2026-06-01 12:15:50 +01:00
9bb2bec3fa
plan: web previews for channels ( #7022 )
...
* plan: web previews for channels
* types for recipient side to support channel web previews and domain names
* fix
* migrations
* update schema and api types
* update schema
* rename migrations
* core: check member role
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-05-31 17:12:12 +01:00
sh and GitHub
68fc1b5d22
core, ui: split SimplexNameDomain out of SimplexNameInfo ( #7024 )
...
* core, ui: split SimplexNameDomain out of SimplexNameInfo
* core: bump simplexmq to b3f28948 (SimplexNameDomain split)
* core: bump simplexmq to 4e2c9fc3 (StrEncoding split)
* core: bump simplexmq to ee2ff402 (#1788 squash merge)
* update sha256map.nix
2026-05-30 09:39:14 +01:00
Narasimha-sc and GitHub
553f98adf4
desktop: don't copy non-message items when selecting message text ( #6993 )
...
* desktop: don't copy non-message items when selecting message text
Selecting text across messages also copied the text of event/info
items (e.g. "connected") that fell inside the selection, even though
those items are never highlighted as selected.
getSelectedCopiedText emitted text for every merged item between the
selection bounds. Event/info items have no msgContent but a non-empty
text, so as interior items their text was copied. Skip items whose
content has no msgContent - only real messages are copyable.
* plans: add 2026-05-20-fix-copy-non-msg-items.md
2026-05-30 09:01:16 +01:00
68abd805d4
rfc: namespace ( #7001 )
...
* rfc: namespace
* update rfc
* markdown for names
* record type, app "upgrade" alerts
* update api types
* rfc: change namespace syntax - now it is the usual namespace
* update bot types
* move types to simplexmq
* core: refactore markdown
* update simplexmq
* better names
* new names
* update nix content hashes
* fix
* change valid name function
* update simplexq, update valid name conditions
* fixes
Co-authored-by: simplex-chat-agent[bot] <287173099+simplex-chat-agent[bot]@users.noreply.github.com>
* update simplexmq
* fix localization
* simpler
* refactor
* refactor
* fix
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: simplex-chat-agent[bot] <287173099+simplex-chat-agent[bot]@users.noreply.github.com>
2026-05-28 08:44:43 +01:00
spaced4ndy and GitHub
12fbf61f32
core, ui: require update for public groups ( #7009 )
2026-05-26 09:03:41 +00:00
spaced4ndy and GitHub
92e9640e4f
core, ui: relay reject rejoin ( #6978 )
2026-05-18 09:06:25 +00:00
c165663555
desktop: prevent duplicate launches ( #6979 )
...
* desktop: prevent duplicate launches
Acquires a file lock and listens on a loopback ServerSocket in dataDir.
A second launch signals the running instance to restore its window and
exits silently. See plans/2026-05-13-desktop-single-instance.md.
* desktop: un-minimize window in showWindow
toFront() does not un-minimize a JFrame on any AWT platform. Clear the
ICONIFIED bit so a minimized window restores; preserves MAXIMIZED_BOTH.
Also fixes the same case when restoring from the tray icon.
* desktop: move showWindow from DesktopTray to DesktopApp
It has callers outside the tray (single-instance signal) and belongs
next to simplexWindowState, which it operates on.
* simplify
* refactor
* desktop: start show-file watcher when choosing minimize from first-close dialog
The handleCloseRequest path already starts the watcher when minimizing to
tray; the Ask-dialog path did not, so the first-time user who picks
"Minimize to tray" got a hidden window with no signal handling — a
duplicate launch would not restore it.
* desktop: always watch for duplicate-launch signal, drop hung-instance alert
The watcher now runs for the JVM lifetime once the lock is acquired,
not only when minimized to tray. Duplicate launches always restore the
primary's window (un-minimize, un-tray-hide, toFront) instead of being
silently dropped when the primary is not minimized.
Drops the "may be hung, start anyway?" popup and the two strings — that
fallback was needed only because the watcher could miss signals. With
the always-on watcher there is no scenario where the primary fails to
consume simplex.show, so the escape hatch becomes dead code.
* desktop: alert when primary's watcher doesn't consume the show file
Restores the "another instance may be running" alert. Every duplicate
launch waits up to 1s for the primary's watcher to delete the show file
it just created. If the file is consumed within the window, the
duplicate exits silently. If still there after 1s the primary is hung
and the alert fires.
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-05-18 09:15:20 +01:00
Narasimha-sc and GitHub
af24d030fa
core, ui: persist "Remove link tracking" setting on database import ( #6977 )
...
* core, ui: persist "Remove link tracking" setting on database import
The privacySanitizeLinks preference was stored locally only and absent from
the AppSettings round-trip, so it was lost when migrating to another device
or after a fresh install + DB import. Add the field to the Haskell, Kotlin,
and Swift AppSettings payloads and wire it through iOS group defaults.
* plans: justify privacySanitizeLinks AppSettings round-trip fix
2026-05-16 10:22:57 +01:00
c82bf05293
android, desktop: hide private notes from share channel picker; hide share via chat on plain groups ( #6958 )
...
* ui: hide saved messages from share channel picker; hide share via chat on plain groups
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
* plans: justify share channel link picker filter and group-link button gate
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-13 16:43:06 +01:00
7497b90e7c
core, ui: allow indefinite deletion from history for public channel/group owners/moderators ( #6972 )
...
* Revert "core: forward compatible support for owners/admins/moderations deleting channel and public group messages without limitations (#6962 )"
This reverts commit 08108ebabb .
* core, ui: allow indefinite deletion from history for public channel/group owners/moderators
* style
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* refactor
* show error on deletion
* better alerts
* test
* plan
* simplify test
* bot api docs
* refactor
* test that removed from history is not delivered to the new subscribers
* fix, refactor
* fix
* rename
* rename predicate in UI
* rename
* do not forward channel deletions from history
* remove redundant check
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-05-13 15:24:52 +01:00
sh and GitHub
334a50dda5
desktop: add tray support ( #6970 )
...
* plans: design and implementation plan for desktop tray icon
Adds a system tray icon to the SimpleX desktop app with first-close
dialog and an Appearance toggle. Covered: minimize-to-tray on Linux,
Windows, and macOS via ComposeNativeTray; tri-state CloseBehavior
preference; unread-dot icon swap; show/quit menu.
The design plan covers the user-facing behavior, library choice
rationale (AWT/Compose Tray is broken on stock GNOME per JDK-8322750;
ComposeNativeTray uses platform-native APIs and is maintained), and
out-of-scope items. The implementation plan splits the work into 8
incremental commits, each leaving the build green.
* desktop: add CloseBehavior preference
* plans: switch tray to built-in Compose Tray with GNOME probe
* desktop: branch close handler on CloseBehavior preference
* desktop: first-close dialog for tray choice
* desktop: tray icon assets and menu strings
* desktop: system tray icon with show/quit menu
* desktop: unread indicator on tray icon
* desktop: Appearance toggle for minimize-to-tray
* desktop: tray feature fixes from audit
- Scope closedByError per application iteration; set before dispatchEvent.
- Short-circuit Ask to Quit when tray is unavailable.
- Sum users.unreadCount (pre-aggregated) instead of iterating chats.
- Replace dialog's captured lambdas with a top-level flag and
ApplicationScope extension; wrap in SimpleXTheme.
- Probe SystemTray with real add/remove off the EDT.
- Drop duplicate ic_simplex_tray.svg; nudge unread dot to cy=34 to
stop the r=6 circle clipping at the viewBox bottom.
- Use mkSafeEnumPreference, PreferenceToggle, SectionTextFooter.
* plans: sync desktop tray plans with implementation
* desktop: render close-behavior popup via AlertManager
Replaces the bespoke DialogWindow with AlertManager.shared.showAlertDialogButtonsColumn —
same in-app surface as e.g. the link-previews opt-in alert. Drops isAskingCloseBehavior,
the CloseBehaviorDialog Composable, the resetAskCloseBehavior helper, and the per-iteration
reset call: the alert's lifecycle is now bounded by AlertManager's single slot, so a crash
mid-dialog gets cleanly overwritten by the crash report.
* desktop: reset closeBehavior with 'Reset all hints'
Generalises AppPreferences.hintPreferences to a heterogeneous List<HintPref>
so non-Boolean prefs can participate. Adds closeBehavior to the list, so
'Reset all hints' brings the first-close dialog back.
* desktop: skip muted profiles in tray unread sum
Active profile still counts so the user can see their own unread; non-active
muted profiles contribute zero.
* desktop: dark-theme tray icons
Adds ic_simplex_tray_light and ic_simplex_tray_dot_light — copies of the
existing tray SVGs with the navy back-X swapped to white. Picks the variant
via isInDarkTheme() so the icon stays visible against dark tray backgrounds.
2026-05-13 08:58:42 +01:00
Narasimha-sc and GitHub
1f25cec949
android, desktop: constrain image height in layout ( #6959 )
...
* android, desktop: constrain image height in layout
Clamp the image preview Box's aspect ratio so it never goes
below 1/2.33 (matching the height cap already enforced by
PriorityLayout). Prevents tall image previews from overflowing
into the caption area below.
Analogous to iOS #6732 .
* plans: justify image text overlap fix
2026-05-12 16:48:25 +01:00
Narasimha-sc and GitHub
e10cfd02e9
desktop: keep text selection on the originally selected message when a new message arrives ( #6955 )
...
* desktop: keep text selection on the originally selected message when a new message arrives or is sent
Selection stored positional indices into the merged-items list. When a new
message was appended, the reversed list shifted every index by one — but the
stored start/end indices did not — so the highlight slid onto neighboring
messages.
Anchor the selection to ChatItem IDs instead of list positions. Offsets are
already content-relative (character cursors in rendered text), so they stay
valid across list mutations. Positional indices are derived on read via
derivedStateOf, which keeps per-item reads O(1) amortized. If either
anchored item is removed from the list, a SideEffect synchronously clears
the selection so the copy button does not flash at a stale location.
* desktop: minimize selection fix — anchor ids in SelectionRange
Replaces the previous derivedStateOf-based approach with a surgical
diff: SelectionRange carries startItemId/endItemId alongside the
existing positional indices, and a SideEffect calls resyncIndices()
to translate ids back to current positions when the items list mutates.
All existing call sites of range.startIndex / range.endIndex remain
unchanged. Net diff vs master is +19/-2.
* plans: justify desktop text selection id-anchored fix
2026-05-08 13:55:58 +01:00
Narasimha-sc and GitHub
da9b69ca0b
android, desktop: open correct image in fullscreen viewer ( #6869 )
...
* android, desktop: open correct image in fullscreen viewer
Fullscreen image viewer occasionally opened a different image than
the one clicked. Root cause: when the LaunchedEffect probe at
ImageFullScreenView.kt:48-55 calls getMedia(initialIndex - 1) to check
whether a previous media item exists, getMedia returns null for both
"no item" and "item found but failed to load" (e.g. undecodable bytes,
missing file, crypto error). The probe treated null as "no previous
item" and called scrollToStart(), which rewrote initialChatId to the
chat's oldest media item - making the viewer display that oldest item
instead of the clicked one.
Fix: scrollToStart() no longer rewrites initialChatId. The pager is
still repositioned to page 0; getMedia(0) resolves against the
already-set initialChatId (the clicked item) and renders it correctly.
* android, desktop: regression test for fullscreen viewer anchor preservation
Drives the public providerForGallery interface: moves the anchor away from
cItemId via currentPageChanged, calls scrollToStart, then reads the anchor
back through onDismiss's scrollTo callback. The pre-fix code rewrote
initialChatId to the chat's oldest showable, which would surface as
scrollTo(2); the fix preserves the anchor and produces scrollTo(1).
* plan: design doc for fullscreen viewer wrong-image fix
Documents the pager state model, the root cause of the wrong-image bug,
why the one-line deletion in scrollToStart fixes it for both call sites,
and why the wider getMedia null-overload refactor is deliberately out of
scope for this fix.
2026-05-08 12:18:45 +01:00
Narasimha-sc and GitHub
4d43f2d41c
desktop: fix copying selected text in reports ( #6863 )
...
* desktop: fix copying selected text in reports
Text selection in report items rendered a red reason prefix (e.g. "Spam: ")
before the user's comment but dropped the prefix when copying, because
selection offsets are in rendered-text space while copy extraction was
operating on ci.text / ci.formattedText directly.
Introduce itemPrefixText(ci) as the single source of truth for the rendered
prefix, and drive both selection copy and snap-to-segment from a unified
itemDisplaySegments list that prepends the prefix as a leading segment.
This also fixes mention/link snapping on the selection boundary inside
report comments.
* desktop: scope report-selection fix to report items
Inline a prefix preamble + offset shift in selectedItemCopiedText and
snapOffset instead of routing every item through itemDisplaySegments.
Non-report items now run the original pre-PR loop unchanged; reports
emit the selected slice of the rendered prefix and shift body offsets
by prefix.length.
* desktop: simplify report selection arithmetic
Selection offsets are in display-text space, which already includes the
leading itemPrefixText for reports. Treat the prefix as the leading
display segment and seed displayOffset with prefix.length, instead of
shifting body offsets by prefix.length in the inner loop and gating
snapOffset on offset <= prefix.length.
The inner loop body of selectedItemCopiedText becomes identical to
pre-PR for non-reports (prefix is "" so displayOffset starts at 0),
and snapOffset reduces to a one-line seed change. Same fix, smaller
diff, fewer intermediate variables.
* desktop: drop helper, inline report-prefix in selection only
Revert itemPrefixText helper extraction (TextItemView.kt and
FramedItemView.kt back to pre-PR). Inline the report-prefix expression
at its two use sites in TextSelection.kt directly.
PR diff is now confined to TextSelection.kt: +13/-6.
* desktop: extract itemPrefixText, drop dead defensive code
Re-introduce itemPrefixText(ci) helper in TextItemView.kt and migrate all
four sites that compute the report prefix (FramedItemView,
ChatPreviewView, TextSelection x2). The prefix expression now has one
definition and one place to change.
Also drop the unreachable sel.first.coerceAtLeast(0) on the prefix-slice
append — selectedRange guarantees sel.first >= 0.
* plans: justify desktop fix for copying selected text in reports
Add 2026-05-08-fix-select-in-reports.md covering the problem, the offset
flow, the minimal structural change (seed displayOffset with prefix.length),
the itemPrefixText single-source-of-truth migration across the four
prefix sites, the verified edge-case table, and the rollback path.
2026-05-08 12:15:52 +01:00
spaced4ndy and GitHub
d986c00530
ui: disable relay management ( #6951 )
2026-05-08 08:37:55 +00:00
spaced4ndy and GitHub
6f8a07e4ea
core, ui: relay management - add, remove relays, synchronization to relay list ( #6917 )
2026-05-08 07:19:16 +00:00
spaced4ndy and GitHub
d9cfc9bd3d
ui: adjust create channel ui ( #6950 )
2026-05-08 06:27:26 +00:00
spaced4ndy and GitHub
ce0e9c37c1
ui: improve channel creation ux ( #6933 )
...
* ui: improve channel creation ux
* update
* update
* update
* wip
* update
2026-05-01 20:42:15 +01:00
abcce61f32
ui: translations ( #6921 )
...
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (German)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (German)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 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% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Spanish)
Currently translated at 99.9% (2767 of 2768 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 100.0% (2768 of 2768 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% (2392 of 2392 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% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Russian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2768 of 2768 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% (2392 of 2392 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/
* Translated using Weblate (Russian)
Currently translated at 100.0% (2768 of 2768 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* process localizations
* ru corrections
Co-authored-by: Evgeny <evgeny@poberezkin.com >
---------
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: No name <usir.alerts@onionmail.org >
Co-authored-by: mlanp <github@lang.xyz >
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org >
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
2026-04-29 23:23:13 +01:00
7ea3db7b3c
ui: fix crash opening About SimpleX Chat ( #6902 )
...
* ui: fix crash and logo cutoff on About SimpleX Chat
OnboardingShrinkingLayout calls .first() on each slot's measurables,
crashing when the button slot is empty. About passes onboardingStage =
null, in which case the button slot emits no children. Have the About
branch emit a 0x0 Spacer so the slot always has one measurable.
Also add a top inset for the SimpleX logo when reached from About in
non-oneHandUI mode — without it the top app bar overlaps the logo.
* style
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* Apply suggestion from @epoberezkin
Co-authored-by: Evgeny <evgeny@poberezkin.com >
---------
Co-authored-by: Evgeny <evgeny@poberezkin.com >
2026-04-29 20:58:01 +01:00
spaced4ndy and GitHub
c0125e6622
android: fix connect banner card layout (wip) ( #6922 )
2026-04-29 15:45:42 +01:00
aa7f1049b5
android: fix link preview fetch via SOCKS ( #6919 )
...
* android: fix link preview fetch via SOCKS
* fix: add timeouts to link preview image fetch
Match the 10s timeout already on the Jsoup HTML fetch. Without these,
a slow or dead SOCKS proxy hangs the image fetch indefinitely, holding
the previewMutex and blocking every subsequent preview.
* timeout
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: shum <github.shum@liber.li >
2026-04-29 13:19:23 +01:00
01906ae1b2
android, desktop: support link preview generation with socks ( #6907 )
...
* android, desktop: fix link previews bypassing SOCKS proxy
getLinkPreview used Jsoup.connect() and URL.openStream() directly,
bypassing the configured SOCKS proxy. Both the HTML fetch and image
download now route through the proxy when one is configured.
If the proxy address is misconfigured (unparseable port), the preview
is cancelled and the user is alerted rather than falling back to a
direct connection.
When enabling SOCKS proxy with link previews active, or enabling link
previews while SOCKS is active, the user is warned that DNS lookups
may still occur locally and given the option to disable previews.
Updates the SOCKS proxy limitations notice to clarify that calls
cannot be proxied, and highlights it in warning colour.
Note: DNS lookups may still occur locally before the SOCKS connection
is established. Full SOCKS5h hostname forwarding is a separate follow-up.
* android, desktop: fix SOCKS proxy parser, auth credentials, and repeated alert in link previews
- Build proxy from typed NetworkProxy fields instead of parsing socksProxy string, fixing breakage on IPv6 hosts and USERNAME auth configurations
- Register java.net.Authenticator for SOCKS5 credential negotiation (Java 21 SocksSocketImpl uses RequestorType.SERVER for this callback)
- Remove per-keystroke invalid-proxy alert, which fired on every URL change for valid but unparseable proxy strings
* ui: drop link preview SOCKS warnings and strings
* ui: soften link preview alert when SOCKS is on
Show the link previews opt-in alert in both SOCKS-on and SOCKS-off
cases (previously skipped entirely when SOCKS was on). When SOCKS
is on, use a softer description that mentions the proxy and the
remaining local DNS lookup risk, and render the Disable button in
primary colour instead of red.
Also drop the link-previews caveat from the SOCKS limitations
footer since previews now go through the proxy.
* fix: harden socks proxy auth in link previews
- Gate the SOCKS5 Authenticator on host:port match so destination 401
challenges no longer leak proxy credentials via the JDK auto-retry.
- Snapshot Authenticator.getDefault() and restore in finally to stop
leaking process-global state.
- Mutex around getLinkPreview to serialize concurrent calls.
- Generate a random UUID per call in ISOLATE mode for stream isolation.
- Skip auth when USERNAME mode has empty username or password.
* ui: shift red emphasis from Disable to Enable in link preview alert
Disable is now always primary; Enable is red by default and primary
when SOCKS is on. The dangerous action is enabling without proxy
protection, not disabling.
* ui: append SOCKS notice to link preview alert
---------
Co-authored-by: iversonianGremling <24989959+iversonianGremling@users.noreply.github.com >
2026-04-29 10:52:38 +01:00
+2
976f5efaf5
ui: translations ( #6914 )
...
* Translated using Weblate (Italian)
Currently translated at 98.9% (2736 of 2766 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 98.4% (2357 of 2393 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Russian)
Currently translated at 95.5% (2642 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Catalan)
Currently translated at 90.3% (2500 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ca/
* Translated using Weblate (Polish)
Currently translated at 91.2% (2524 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/
* Translated using Weblate (Czech)
Currently translated at 91.3% (2526 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.6% (2757 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/
* Translated using Weblate (Romanian)
Currently translated at 89.6% (2481 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ro/
* Translated using Weblate (Spanish)
Currently translated at 98.0% (2712 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (German)
Currently translated at 98.9% (2736 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Hungarian)
Currently translated at 99.4% (2751 of 2766 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 99.9% (2392 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2766 of 2766 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% (2393 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Spanish)
Currently translated at 99.0% (2741 of 2766 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 97.6% (2337 of 2393 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 99.9% (2765 of 2766 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 98.2% (2352 of 2393 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% (2766 of 2766 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% (2393 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2393 of 2393 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2393 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2393 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (2393 of 2393 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% (2766 of 2766 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* process localizations
* corrections
* export
---------
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: fran secs <fransecs@gmail.com >
Co-authored-by: Wiesław Fijołek <percival@users.noreply.hosted.weblate.org >
Co-authored-by: zenobit <zenobit@disroot.org >
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org >
Co-authored-by: Nicolae Fericitu <cni@disroot.org >
Co-authored-by: No name <usir.alerts@onionmail.org >
Co-authored-by: mlanp <github@lang.xyz >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-29 10:19:03 +01:00
5934569d59
android: onboarding font size ( #6915 )
...
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-29 09:13:29 +01:00
aac6dfe0d5
ui: android/desktop ru translations ( #6897 )
...
* ui: android/desktop ru translations
* align translations
* remove unused translation
* amend translations
* process localizations
* fix formats
* correction
* fix translations
* fixes
* process localizations, fix key
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-28 23:22:34 +01:00
spaced4ndy and GitHub
51480958c4
ui: redesign toolbar position card ( #6901 )
2026-04-28 14:25:40 +00:00
c69ab3b57e
ui: ios ru translation ( #6892 )
...
* ui: ios ru translation
* Apply suggestions from code review
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* update
* corrections
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* corrections 2
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* corrections
* process localizations
* update strings
* corrections 3
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* update
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-27 17:33:52 +01:00
c0fea71ad8
ui: create profile asset image ( #6895 )
...
* ui: create profile asset image
* images
* spacing
* spacing
* layout
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-04-27 17:25:30 +01:00
3ba086f866
ios: decrease twitches on onboarding create profile screen ( #6893 )
...
* ios: decrease twitches on onboarding create profile screen
* strings
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-04-27 14:33:57 +01:00
08c69e3dfa
ui: add asset image on create channel view; allow to choose image on create profile ( #6891 )
...
* ui: create channel picture
* more centered
* better symmetry
* less diff
* choose image on create profile
* fix padding
* fix padding, fit into screen
* fix button layout
* placeholders
* fix padding
* channel pictures
* adjust asset_dir in scripts
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
Co-authored-by: shum <github.shum@liber.li >
2026-04-27 14:00:14 +01:00
3d85480944
ui: new onboarding ( #6888 )
...
* ui: onboarding assets
* android: fix gradle version check, pass assets dir to builds
* desktop: pass assets dir to gradle builds
* ui: new onboarding (#6872 )
* ios: improve onboarding
* ios version condition
* android strings
* merge keys
* refactor network conditions to old location
* ios scroll headline
* remove nav view
* kotlin: refactor network commitments page to use existing view
* remove unused keys
* update why page
* configure -> setup
* padding for app bar in why page
* fix why page
* padding
* copy translations from the website
* export localizations
* export again
* kotlin: fix why page
* fix
* import localizations
* custom layout
* padding for system bars
* paddings
* more paddings
* more padding 2
* update fonts
* fonts
* line height, padding
* paddings
* refactor notifications
* refactor ios
* notification icons in cards
* restore profile field
* padding
* desktop layout create profile
* fix
* more layout
* create profile layout
* mobile padding
* split mobile and desktop
* layout
* layout
* background
* refactor onboarding images
* use DARK theme by default
* page 3 and 4 layouts
* restructure desktop onboarding to two panes
* improve layout
* improve
* fonts, padding
* link mobile on full page
* fix, reduce noise
* change to animation
* fix animation
* refactor
* colors, animation
* import
* details
* fix padding
* fix icon
* fix
* button paddings
* accept button on terms page
* fix conditions button
* close modal
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
Co-authored-by: shum <github.shum@liber.li >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-27 11:46:08 +01:00
Evgeny Poberezkin
b894243f43
blog: update release date
2026-04-27 07:31:04 +01:00
3d04ff9560
ui: different preference texts for channels ( #6889 )
...
* ios: different preference texts for channels
* fix
* ios translations
* export localizations
* restore translations
* fix ExternalLink, process localizations
* kotlin: different strings for channel preferences
* add translations
* different strings for channels
* export localizations
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-04-26 15:21:38 +01:00
63c278818e
core: support chats in channels, send as owner in support chats ( #6870 )
...
* core: test support chats in channels, CLI defaults to sending as member in support chat
* ui: enable support chats in channels
* use correct scope when sending from UI
* more readable
* remove test output
* show member support chat in channels
* preference for support chats
* ios: types for support preference
* mp: support preference types
* show support preference in UI
* fix ios
* make support preference optional in JSON parser
* update string
* change strings, pass parameters to prefs
* refactor kotlin
* take support preference into account
* refactor core
* do not show broadcast placeholder in support scope
* move role check, add pref check on update
* support preference test (failing)
* fix version
* fix tests
* warning alert when enabling chats with admins
* revert on dismiss
* update text and icons
* query plans
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-26 14:37:16 +01:00
504ef253cb
core, ui: item about no e2ee in public channels ( #6886 )
...
* core, ui: item about no e2ee in public channels
* fix, refactor
* all tests
* update bot api types
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-25 20:49:26 +01:00
ea6a09b66e
ui: open external link alerts ( #6860 )
...
* ui: open external link alerts
* update
* update
* update
* update
* update
* change link, add link to alert, close modals when opening chat
* refactor
* add string
* fix link in terms
* open simplex chat links from privacy policy in app
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-25 15:59:42 +01:00
+21
1c0567cf40
ui: translations ( #6881 )
...
* Translated using Weblate (Italian)
Currently translated at 100.0% (2294 of 2294 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% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Czech)
Currently translated at 95.3% (2526 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2294 of 2294 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (Russian)
Currently translated at 97.2% (2578 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Arabic)
Currently translated at 100.0% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2650 of 2650 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% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (German)
Currently translated at 100.0% (2294 of 2294 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2294 of 2294 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% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Czech)
Currently translated at 95.3% (2526 of 2650 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 54.2% (1245 of 2294 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 95.3% (2526 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Spanish)
Currently translated at 97.1% (2575 of 2650 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% (2294 of 2294 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% (2650 of 2650 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* 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 (Portuguese (Brazil))
Currently translated at 87.8% (2342 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Latvian)
Currently translated at 91.5% (2440 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/lv/
* Translated using Weblate (Lithuanian)
Currently translated at 64.0% (1707 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/lt/
* Translated using Weblate (Catalan)
Currently translated at 94.1% (2509 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ca/
* Translated using Weblate (Romanian)
Currently translated at 93.3% (2490 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ro/
* Translated using Weblate (Romanian)
Currently translated at 93.3% (2490 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ro/
* Translated using Weblate (Thai)
Currently translated at 47.3% (1262 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/th/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2666 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2666 of 2666 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% (2666 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (German)
Currently translated at 100.0% (2666 of 2666 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2294 of 2294 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% (2294 of 2294 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% (2666 of 2666 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% (2666 of 2666 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% (2679 of 2679 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2679 of 2679 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 100.0% (2679 of 2679 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% (2679 of 2679 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2687 of 2687 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% (2687 of 2687 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% (2687 of 2687 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (German)
Currently translated at 100.0% (2294 of 2294 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% (2687 of 2687 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2689 of 2689 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Italian)
Currently translated at 100.0% (2689 of 2689 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Russian)
Currently translated at 96.0% (2584 of 2689 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 100.0% (2689 of 2689 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2689 of 2689 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% (2294 of 2294 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 96.1% (2586 of 2690 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Russian)
Currently translated at 95.4% (2581 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/
* Translated using Weblate (Hebrew)
Currently translated at 77.3% (2092 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/he/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2704 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Japanese)
Currently translated at 73.5% (1990 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ja/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2294 of 2294 strings)
Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/
* Translated using Weblate (French)
Currently translated at 88.6% (2398 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 86.4% (2337 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pt_BR/
* Translated using Weblate (Czech)
Currently translated at 93.2% (2521 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/
* Translated using Weblate (Spanish)
Currently translated at 97.7% (2644 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/es/
* Translated using Weblate (Finnish)
Currently translated at 53.1% (1436 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fi/
* Translated using Weblate (German)
Currently translated at 99.2% (2684 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* Translated using Weblate (Dutch)
Currently translated at 88.5% (2394 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/nl/
* Translated using Weblate (Thai)
Currently translated at 46.5% (1258 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/th/
* Translated using Weblate (Italian)
Currently translated at 99.2% (2684 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Polish)
Currently translated at 93.1% (2519 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/
* Translated using Weblate (Bulgarian)
Currently translated at 92.0% (2488 of 2704 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/bg/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2704 of 2704 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% (2704 of 2704 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% (2294 of 2294 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 100.0% (2704 of 2704 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% (2704 of 2704 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% (2294 of 2294 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 99.6% (2706 of 2715 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% (2715 of 2715 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (2715 of 2715 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 99.6% (2705 of 2715 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% (2715 of 2715 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/
* Translated using Weblate (Russian)
Currently translated at 97.1% (2637 of 2715 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 100.0% (2715 of 2715 strings)
Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/
* process localizations
* ui: translation fixes for PR #6881 (de, es, hu, it, ar, ru, zh-rCN) (#6883 )
Fixes 17 individual issues across 11 files surfaced by line-by-line review
of the new channel-feature translations on the weblate/translations branch.
Merge-blockers
- es: re-insert "/" in %1$d/%2$d format specifier in relay_bar_active,
relay_bar_active_with_failures, relay_bar_connected,
relay_bar_connected_with_errors (iOS .strings, .xliff, Android XML).
Without the /, UI rendered "12 servidores" instead of "1/2 servidores".
- zh-rCN: owner_verification_passed translated as "无效" (INVALID); both
PASSED and FAILED branches read as failure. Now "链接签名已验证。".
- es: connect_plan_this_is_your_link_for_channel_vName was left in
English; translated to Spanish.
Bugs and typos
- de: tap_to_start_new_chat "einen neuen Chats" → "einen neuen Chat"
(accusative cannot govern genitive/plural form).
- de: lowercase indefinite pronouns "jemand"/"jemandem" in
connect_with_someone, let_someone_connect_to_you, talk_to_someone.
- de: v6_5_public_channels "freies kommunizieren" → "freies Kommunizieren"
(nominalised infinitive must be capitalised).
- de: %3$d Fehlgeschlagen → %3$d fehlgeschlagen in
relay_bar_active_with_failures (parallels %3$d Fehler correctly;
participle, not noun).
- de iOS: restore dropped **%@** markdown bold around the profile name in
"Your profile **%@** will be shared with channel relays and subscribers."
- es: suscroptores → suscriptores (3 files).
- es: requere → requiere (3 files).
- it: relayvdi chat → relay di chat (2 files).
- ru: ретранстляторы → ретрансляторы (configure_relays).
- ru: подписчкика → подписчика (block_subscriber_for_all_question).
- ar: الفناة → القناة (your_profile_shared_with_channel_relays).
- zh-rCN: alert_text_msg_reception_error fixed truncation "这条消" and
接受 (accept) → 接收 (receive).
- zh-rCN: channel_no_active_relays_try_later inverted meaning
"频道有不活跃的中继" (HAS inactive relays) → "频道无活跃中继"
(has no active relays).
- zh-rCN: chat_link_signed removed stray "s": "(s已签名)" → "(已签名)".
- zh-rCN: onboarding_or_show_qr_code fixed truncation
"视频通" → "视频通话".
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org >
Co-authored-by: zenobit <zenobit@disroot.org >
Co-authored-by: summoner001 <summoner@disroot.org >
Co-authored-by: Skyward Copied <skywardcopied@users.noreply.hosted.weblate.org >
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org >
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org >
Co-authored-by: mlanp <github@lang.xyz >
Co-authored-by: slrslr <adm@prnet.info >
Co-authored-by: No name <usir.alerts@onionmail.org >
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: Augusto Coronel <156332097+aocoronel@users.noreply.github.com >
Co-authored-by: Riko Miko <rihardslaskovs@gmail.com >
Co-authored-by: Anonimas <anonimas3@users.noreply.hosted.weblate.org >
Co-authored-by: fran secs <fransecs@gmail.com >
Co-authored-by: Anonymous <noreply@weblate.org >
Co-authored-by: Alex Vornicu <vornicualex@gmail.com >
Co-authored-by: Ghost of Sparta <makesocialfoss32@keemail.me >
Co-authored-by: Roee Hershberg <roihershberg@protonmail.com >
Co-authored-by: a4318 <dalse.077@gmail.com >
Co-authored-by: Ophiushi <41908476+ishi-sama@users.noreply.github.com >
Co-authored-by: Feroli <feroli@tuta.io >
Co-authored-by: petri <pkajander@gmail.com >
Co-authored-by: John m <jvanmanen@gmail.com >
Co-authored-by: Titapa (PunPun) Chaiyakiturajai <titapapunne@gmail.com >
Co-authored-by: Deleted User <noreply+6980@weblate.org >
Co-authored-by: B.O.S.S <BxOxSxS@protonmail.com >
Co-authored-by: elgratea <weblate@fastmail.com >
Co-authored-by: Narasimha-sc <166327228+Narasimha-sc@users.noreply.github.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-25 11:13:42 +01:00
Evgeny and GitHub
63ea3d3565
ui: gradient colors ( #6861 )
...
* ui: gradient colors
* function
2026-04-22 11:36:33 +01:00
Evgeny and GitHub
75d990654b
ui: OKLCH colors for gradients in onboarding cards ( #6859 )
...
* ui: OKLCH colors for gradients in onboarding cards
* add wide gamut to manifest
2026-04-22 10:21:23 +01:00
Evgeny and GitHub
b40c5a4f3e
ui: better icon for channel filter, remove separate copy button from link on iOS ( #6856 )
2026-04-22 08:35:13 +01:00
Narasimha-sc and GitHub
fb0160b519
android: fix QR scan retry tap outside race error ( #6847 )
2026-04-21 21:48:42 +01:00
Narasimha-sc and GitHub
7b66074314
android, desktop: fix msg edit showing disappearing msg button ( #6853 )
2026-04-21 20:13:14 +01:00
a00a9f0fb8
ui: what's new v6.5 ( #6793 )
...
* ios: what\s new v6.5
* update
* simpler
* better
* icon
* labels
* kotlin: whats new
* shorter
* update post link
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-21 19:56:46 +01:00
Narasimha-sc and GitHub
0e1c3fac5c
desktop: fix sending files with + in file name ( #6836 )
...
* desktop: fix sending files with + in file name
Use RFC 3986 URI encoding (File.toURI()) instead of application/x-www-form-urlencoded
(URLEncoder/URLDecoder) for file path URIs. URLDecoder treated literal + as space,
corrupting filenames containing + on desktop.
* less breaking approach
2026-04-21 19:07:58 +01:00
Narasimha-sc and GitHub
607124079f
desktop: fix voice message recording not stopping on chat switch ( #6849 )
2026-04-21 19:05:33 +01:00
Narasimha-sc and GitHub
12e62aaba1
desktop: fix select marked deleted when hidden ( #6851 )
2026-04-21 19:05:11 +01:00
035a2f954c
ui: new UX for making connections after / as part of onboarding ( #6753 )
...
* ui: additional images, views for making connections and creating groups (#6750 )
* ios: setup for additional assets
* ios build config
* header
* fix
* update layout
* more views with images
* layout
* layout
* android images and view
* fix path
* fix desktop
* fix desktop build
* smaller image
* layout
* more layout
* more kotlin views
* group layout
* padding
* create group layout
* more create group layout
* layout
* tweak layout
* more tweak
* config
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* ios: connecting as part of onboarding (#6754 )
* ios: implementation of "connecting" cards
* ios: revision
* fix flip
* fixes
* fix frame
* replace nav stack with tab view
* rename
* update gradient and card label material
* fix gradient
* debug
* remove debug code
* update card labels
* card label layout
* landscape cards
* layout
* safe area
* less bold
* debug landscape
* refactor titles, back inline with title in landscape
* remove ignoreSafeArea
* remove extra padding
* refactor
* clean
* layout spec added to plan
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* android, desktop: connecting during onboarding - new cards (#6757 )
* android, desktop: connecting during onboarding - new cards
* fix
* change layout
* fixes
* fix
* fix
* layout
* fix layout
* animation
* import
* paddings
* 350ms
* font
* fonts
* layout
* box
* more layout
* layout
* simpler
* hide toolbar heading in onboarding mode
* simpler desktop layout
* better desktop
* revert desktop toolbar
* bigger font, landscape
* fix desktop
* cap width
* refactor, simplify
* qr code scanner icon
* use icon without assets
* cleaner
* fix
* fix
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* android, desktop: connect banner after onboarding (#6761 )
* android, desktop: connect banner after onboarding
* improve
* smaller button
* bigger icon, same string
* fallback gradients
* improve build
* simpler connect screens during onboarding
* left-align
* update strings
* improve state machine
* text, padding
* strings
* primary color for tap to paste link
* fix race condition
* fix loading race
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* ios: banner and connect screens (#6767 )
* ios: banner and connect screens
* fix
* return nav
* remove padding
* refactor
* refactor
* refactor 2
* refactor 3
* refactor 4
* header
* xcode files
* improve
* fix toolbar
* toolbar 2
* no assets
* no assets 2
* padding
* android padding
* simplify
* layout
* fix
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* fix refreshable
* text
* fix toolbar color
* rework address share logic
* padding
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-04-21 17:41:52 +01:00