Evgeny Poberezkin
d6c9c0ee47
6.5: android 345, desktop 140
2026-04-30 10:13:29 +01:00
Evgeny Poberezkin
3945296113
6.5: ios 330
2026-04-30 09:25:46 +01:00
Evgeny
ab2d036301
android, desktop: reduce timeout and do not use hardward acceleration for video preview generation ( #6924 )
...
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-30 08:37:54 +01:00
Evgeny Poberezkin
26cb08ed21
ios: update core library
2026-04-29 23:33:56 +01:00
Evgeny
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
Narasimha-sc
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
Evgeny Poberezkin
12e208178d
6.5-beta.12: android 344, desktop 139
2026-04-29 16:10:06 +01:00
spaced4ndy
c0125e6622
android: fix connect banner card layout (wip) ( #6922 )
2026-04-29 15:45:42 +01:00
Evgeny
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
Evgeny Poberezkin
c2ad26fa65
6.5-beta.12: ios 329
2026-04-29 11:37:56 +01:00
Evgeny Poberezkin
1ba45acdfd
ios: update core library
2026-04-29 11:28:24 +01:00
sh
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
Narasimha-sc
fd14739faf
directory: fix /invite not re-inviting member who left owners' group ( #6866 )
...
* directory: re-invite owner who left owners' group
The /invite command's alreadyMember check treated any GroupMember row as
a current member, including rows with status GSMemLeft or GSMemRemoved.
Owners who had left the owners' group could therefore not be re-invited.
Use memberCurrent to only block re-invite when the member is actually in
the group.
* directory tests: account for admin notification and renamed group on re-invite
The owners' group has no GroupReg by design, so when an owner leaves it
the directory service notifies admins with "Error: contact left, group: N
owners, group registration not found" - expected behavior, but the test
for re-inviting an owner who left the owners' group did not consume this
DM and failed at bracket cleanup.
The test also assumed bob's new invitation would land in #owners, but the
chat client disambiguates it to #owners_1 because bob's old left
membership of #owners is still present locally.
Consume the admin DM explicitly and update the invitation assertions to
#owners_1 / /j owners_1.
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-04-29 10:40:05 +01:00
Evgeny
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
Evgeny
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
Narasimha-sc
b13711ddbc
android: fix system navigation bar overlapping call control buttons during call ( #6885 )
...
The active-call action button row (mute, speaker, hang up, flip/toggle camera)
was rendered with only a fixed 20.dp bottom padding. Under edge-to-edge layout
on devices with 3-button navigation, the system nav bar (~48.dp) drew on top
of these buttons, hiding part of them.
Add `.navigationBarsPadding()` to the BoxWithConstraints holding the buttons
so the row floats above the system nav bar inset. No effect on devices using
gesture nav (the inset there is small enough to not collide).
2026-04-29 08:05:45 +01:00
Evgeny
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
a7d871d683
ios: fix connect banner halves being misaligned ( #6904 )
2026-04-28 15:08:57 +00:00
spaced4ndy
51480958c4
ui: redesign toolbar position card ( #6901 )
2026-04-28 14:25:40 +00:00
sh
ed3b85e103
desktop: replace copy-assets shell script with gradle task ( #6900 )
2026-04-28 11:52:06 +01:00
Evgeny Poberezkin
ab4b056c60
6.5-beta.11: android 343, desktop 138
2026-04-27 18:44:00 +01:00
Evgeny Poberezkin
94894bd802
6.5-beta.11: ios 328
2026-04-27 17:55:20 +01:00
Evgeny
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
spaced4ndy
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
sh
17ef17cfd0
desktop: fix build ( #6896 )
...
* desktop: fix nanohttpd jitpack dependency
* desktop: make assets-dir gradle flag optional
2026-04-27 17:05:30 +01:00
Evgeny Poberezkin
283ef29019
ui: update translation string
2026-04-27 15:03:23 +01:00
spaced4ndy
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
spaced4ndy
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
Evgeny
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
Narasimha-sc
5a3dfdd2b4
SimpleX support bot ( #6625 )
...
* plans: 20260207-support-bot.md
* Update 20260207-support-bot.md
* plans: 20260207-support-bot-implementation.md
* plans: Update 20260207-support-bot-implementation.md
* Relocate plans
* apps: support bot code & tests
* apps: support bot relocate
* support-bot: Fix basic functionality
* apps: support-bot /add command & fixes
* apps: simplex-support-bot: Change Grok logo
* Further usability improvements
* simplex-support-bot: Update support plan to reflect current flow
* simplex-support-bot: update product design plan
* support-bot: update plan
* support-bot: review and refine product spec
* support-bot: update product spec — complete state, /join team-only, card debouncing
- Group preferences applied once at creation, not on every startup
- /join restricted to team group only
- Team/Grok reply or reaction auto-completes conversation (✅ )
- Customer message reverts to incomplete
- Card updates debounced globally with 15-minute batch flush
* support-bot: update implementation plan
* support-bot: implement stateless bot with cards, Grok, team flow, hardening
Complete rewrite of the support bot to stateless architecture:
- State derived from group composition + chat history (survives restarts)
- Card dashboard in team group with live status, preview, /join commands
- Two-profile architecture (main + Grok) with profileMutex serialization
- Grok join race condition fix via bufferedGrokInvitations
- Card preview: newest-first truncation, newline sanitization, sender prefixes
- Best-effort startup (invite link, group profile update)
- Team group preferences: directMessages, fullDelete, commands
- 122 tests across 27 suites
* support-bot: use apiCreateMemberContact and apiSendMemberContactInvitation instead of raw commands
Replace sendChatCmd("/_create member contact ...") and sendChatCmd("/_invite member contact ...")
with the typed API methods added in simplex-chat-nodejs. Update plans and build script accordingly.
* plans: 20260207-support-bot.md
* Update 20260207-support-bot.md
* plans: 20260207-support-bot-implementation.md
* plans: Update 20260207-support-bot-implementation.md
* Relocate plans
* apps: support bot code & tests
* apps: support bot relocate
* support-bot: Fix basic functionality
* apps: support-bot /add command & fixes
* apps: simplex-support-bot: Change Grok logo
* Further usability improvements
* simplex-support-bot: Update support plan to reflect current flow
* simplex-support-bot: update product design plan
* support-bot: update plan
* support-bot: review and refine product spec
* support-bot: update product spec — complete state, /join team-only, card debouncing
- Group preferences applied once at creation, not on every startup
- /join restricted to team group only
- Team/Grok reply or reaction auto-completes conversation (✅ )
- Customer message reverts to incomplete
- Card updates debounced globally with 15-minute batch flush
* support-bot: update implementation plan
* support-bot: implement stateless bot with cards, Grok, team flow, hardening
Complete rewrite of the support bot to stateless architecture:
- State derived from group composition + chat history (survives restarts)
- Card dashboard in team group with live status, preview, /join commands
- Two-profile architecture (main + Grok) with profileMutex serialization
- Grok join race condition fix via bufferedGrokInvitations
- Card preview: newest-first truncation, newline sanitization, sender prefixes
- Best-effort startup (invite link, group profile update)
- Team group preferences: directMessages, fullDelete, commands
- 122 tests across 27 suites
* support-bot: use apiCreateMemberContact and apiSendMemberContactInvitation instead of raw commands
Replace sendChatCmd("/_create member contact ...") and sendChatCmd("/_invite member contact ...")
with the typed API methods added in simplex-chat-nodejs. Update plans and build script accordingly.
* support-bot: more improvemets
* support-bot: add tests for Grok batch dedup and initial response gating
7 new tests covering the duplicate Grok reply fix:
- batch dedup: only last customer message per group triggers API call
- batch dedup: multi-group batches handled independently
- batch dedup: non-customer messages filtered from batch
- initial response gating: per-message responses suppressed during activateGrok
- gating clears: per-message responses resume after activation completes
Update implementation plan test catalog (122 → 129 tests).
* support-bot: load context from context file
* Rename Grok AI -> Grok
* Remove unused strings.ts
* support-bot: change messages
* cardFlushMinutes 15 -> cardFlushSeconds 300
* support-bot: /team message when grok present
* support-bot: correct messages
* support-bot: update plans to reflect latest changes
* Update plan for state derivation
* support-bot: Update state machine plans
* support-bot: implement customData state
* Fix Grok revertStateOnFail race condition
* support-bot: plans adversarial review
* support-bot: /join ID part of card in plan
* support-bot: implement /join ID inside card
* support-bot: plans use params instead of regex in /join
* support-bot: Implement adversarial review changes
* support-bot: no re-invite if already invited
* support-bot: /team should give owner to invited member
* Don't change username for existing database
* support-bot: update bot commands before sending commands
* support-bot: adversarial review fixes
* support-bot: implement postgresql (#6876 )
* support-bot: sqlite/postgres backend via typed DbConfig and parseArgs flags
* support-bot: add README with setup and flags reference
* support-bot: use published simplex-chat, drop build.sh/start.sh
* support-bot: switch CLI to commander, add --help
* support-bot: update README
---------
Co-authored-by: shum <github.shum@liber.li >
Co-authored-by: sh <37271604+shumvgolove@users.noreply.github.com >
2026-04-27 09:12:42 +01:00
Evgeny Poberezkin
b894243f43
blog: update release date
2026-04-27 07:31:04 +01:00
Evgeny Poberezkin
0b5af7694a
android, desktop: change httpd libraries reference
2026-04-26 21:20:09 +01:00
Evgeny @ SimpleX Chat
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
Evgeny
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
Evgeny
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
spaced4ndy
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
Evgeny
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
53a225a0c9
directory: periodically update subscriber counts for registered channels and re-verify links and ownership ( #6879 )
...
* directory: update subscriber counts for registered channels and re-verify links and ownership
* refactor
* rename
* mapM_
* refactor
* refactor
* refactor more
* more
* different approach
* rename
* test
* bot api types
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-25 10:20:26 +01:00
Evgeny
f3547878cc
directory: support public channels and relay-based groups ( #6840 )
...
* directory: support public channels and relay-based groups (plan)
* types
* amend types
* directory types, resolve known link
* implementation, test fails
* fix test
* fix test
* more test
* minimal test
* more test
* debug test
* clean up
* remove debug logs
* refactor
* use group/channel terms correctly
* remove unsupported commands
* manage profile update
* owner left the channel
* more tests, correct response to sent link
* re-registration
* /help and /link commands
* correct listing for channels
* fix test
* fix bot api
* refactor
* do not include link data in GLPKnown
* refactor
* diff
* undo refactor
* simplify
* remove harness test
* remove flip
* add v6.5 app requirement for channels
* add website support
* update bot api types
* correct member count, fix test
* members -> subscribers
* add link to channel description
* fix css
* move version note
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-23 13:30:26 +01:00
Evgeny Poberezkin
b967cacc11
ios: export localizations
2026-04-22 19:40:11 +01:00
SimpleX Chat
c9ef073f02
6.5-beta.10: android 342, desktop 137
2026-04-22 14:00:22 +01:00
Evgeny Poberezkin
d514e93b70
6.5-beta.10: ios 327
2026-04-22 12:11:56 +01:00
Evgeny Poberezkin
01e33efcf4
ios: update core library
2026-04-22 11:37:15 +01:00
Evgeny
63ea3d3565
ui: gradient colors ( #6861 )
...
* ui: gradient colors
* function
2026-04-22 11:36:33 +01:00
Evgeny
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
spaced4ndy
55fb729946
ios: remove copy button from onboarding address view ( #6858 )
2026-04-22 08:37:02 +00:00
Evgeny
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
fb0160b519
android: fix QR scan retry tap outside race error ( #6847 )
2026-04-21 21:48:42 +01:00
Narasimha-sc
7b66074314
android, desktop: fix msg edit showing disappearing msg button ( #6853 )
2026-04-21 20:13:14 +01:00
Narasimha-sc
d49ab88e66
desktop: fix Windows per-app volume reset on video playback ( #6852 )
...
VideoPlayer's mediaPlayerReady listener called mediaPlayer.audio().setVolume(100)
on every freshly created VLC player. On Windows, VLCJ routes setVolume through
WASAPI's ISimpleAudioVolume, which is the per-app entry in the Windows Volume
Mixer — so every video playback snapped SimpleX Chat's mixer volume back to 100%,
overriding the user's own setting.
The call was also redundant: VLCJ's default volume for a new MediaPlayer is
already 100, and the only path that previously used setVolume (enableSound) has
been disabled since VLCJ issue #985 ("Impossible to change volume for only one
player. It changes for every player.").
Dropping the setVolume(100) line fixes the Windows regression without changing
playback loudness on any platform. AudioPlayer / SoundPlayer / CallSoundsPlayer
use a singleton VLC player and never called setVolume, so voice messages and
ringtones are unaffected.
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-04-21 20:10:50 +01:00