Commit Graph

1237 Commits

Author SHA1 Message Date
Evgeny @ SimpleX Chat 64bcf3282c refactor event handling 2026-04-02 08:44:42 +00:00
Evgeny @ SimpleX Chat 2681735a93 clean up 2026-04-02 07:28:27 +00:00
Evgeny @ SimpleX Chat 192f26134b refactor 3 2026-04-02 06:49:27 +00:00
Evgeny @ SimpleX Chat 9d289c8c96 refactor 2 2026-04-02 06:42:33 +00:00
Evgeny @ SimpleX Chat f75e4fc266 clip copy button 2026-04-01 23:19:12 +00:00
Evgeny @ SimpleX Chat c3eb8b5eb4 refactor 2026-04-01 23:13:24 +00:00
Evgeny @ SimpleX Chat c2ae0d9937 fix ranges 2026-04-01 22:52:57 +00:00
Evgeny @ SimpleX Chat 483ac540a0 minor fixes 2026-04-01 22:38:47 +00:00
Evgeny @ SimpleX Chat a0a5de3cf0 copy button fix 2026-04-01 22:18:24 +00:00
Evgeny @ SimpleX Chat 8923aa216e comment more 2026-04-01 22:10:40 +00:00
Evgeny @ SimpleX Chat fe9828857a debug copy 2026-04-01 22:05:39 +00:00
Evgeny @ SimpleX Chat ce36adc4b1 condition 2026-04-01 21:36:52 +00:00
Evgeny @ SimpleX Chat f2b6cf08ca copy position 2026-04-01 21:30:06 +00:00
Evgeny @ SimpleX Chat 47c41b5aa6 moare better 2026-04-01 20:41:51 +00:00
Evgeny @ SimpleX Chat adeaf2c71f better copy button position 2026-04-01 18:58:56 +00:00
Evgeny @ SimpleX Chat 76f963a2d0 position copy button 2026-04-01 17:52:51 +00:00
Evgeny @ SimpleX Chat 4c3740da66 fix copy order for multi-message copy 2026-04-01 16:32:50 +00:00
Evgeny @ SimpleX Chat 8a7fe11b17 fix copied text 2026-04-01 16:19:18 +00:00
Evgeny @ SimpleX Chat 5fd6a870ee fix last character highlight and one-line message selection 2026-04-01 15:06:32 +00:00
Evgeny @ SimpleX Chat 9c8473451d better cursor position 2026-04-01 14:34:29 +00:00
Evgeny Poberezkin 66c992e14d Merge branch 'master' into ep/desktop-text-selection 2026-04-01 12:21:24 +01:00
Evgeny @ SimpleX Chat 85d2ba16fb fix 3, logging 2026-04-01 11:20:55 +00:00
Evgeny @ SimpleX Chat ef07eb3f2a fix 2, logs 2026-04-01 10:46:54 +00:00
Evgeny @ SimpleX Chat 4bc7912902 fix 2026-04-01 10:22:00 +00:00
Evgeny @ SimpleX Chat 9ab1fb7e8f new implementation 2026-04-01 07:50:39 +00:00
Evgeny @ SimpleX Chat 892249143d revert 2026-03-31 21:07:25 +00:00
Evgeny @ SimpleX Chat b9913397c3 rewrite 2026-03-31 20:49:21 +00:00
Narasimha-sc 3f86a7bb62 ui: fix filter button appearing before call buttons during active call (#6733)
During an active call, the content filter button appeared before the
call timer and end call button in the toolbar. Move the content filter
button after chat-type specific buttons so call controls always appear
first.
2026-03-31 21:39:55 +01:00
Evgeny @ SimpleX Chat 29743b030c fix selection tracking 2026-03-31 16:52:22 +00:00
Evgeny @ SimpleX Chat 7b78d68551 state management 2026-03-31 12:03:13 +00:00
Evgeny @ SimpleX Chat 539f6db8e5 improve 2026-03-31 10:37:42 +00:00
Evgeny Poberezkin 781df088ed Merge branch 'master' into ep/desktop-text-selection 2026-03-31 10:06:21 +01:00
Evgeny @ SimpleX Chat 52ddb21fe6 desktop: text selection 2026-03-31 09:05:27 +00:00
Evgeny Poberezkin 580e781a66 6.5-beta.6: android 338, desktop 133 2026-03-30 21:04:15 +01:00
Evgeny Poberezkin 4db9319c40 Merge branch 'stable' 2026-03-30 18:14:17 +01:00
Evgeny b24d003a83 ios: constrain image height in layout (#6732)
* ios: constrain image height in layout

* refactor

* video aspect

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-30 18:00:14 +01:00
build 462e47bacd v6.4.11: android 336, desktop 132 2026-03-30 13:59:04 +01:00
Evgeny c3663ae285 android, desktop: constrain image sizes for previews (#6726)
* android, desktop: constrain image sizes for previews

* use correct JSON parser

* more JSON fixes

* constrain ratio in image decoder

* constrain max height in layout

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-30 12:24:16 +01:00
Evgeny f51d8a5a87 core: open chat on "new" unread items (contigous unread aread in the end) (#6724)
* core: open chat on "new" unread items (contigous unread aread in the end)

* move

* ui: match first unread logic with core

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-29 21:38:41 +01:00
Evgeny f0a3d163dd android, desktop: icon for swipe to reply (#6723)
* remove swipe icon

* icon for swipe to reply

* fix

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-29 17:33:18 +01:00
Evgeny 9c189ede32 ios: swipe to reply (#6720)
* ios: swipe to reply

* update

* less travel

* reduce max shift

* adjust swipe travel

* android: icon on swipe to reply

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-29 14:57:42 +01:00
Evgeny 94dd27b774 ui: translations (#6718)
* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2184 of 2184 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% (2184 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/

* Translated using Weblate (Czech)

Currently translated at 99.0% (2499 of 2523 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (German)

Currently translated at 100.0% (2184 of 2184 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% (2523 of 2523 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% (2184 of 2184 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% (2525 of 2525 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% (2184 of 2184 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% (2184 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/es/

* Translated using Weblate (Czech)

Currently translated at 99.0% (2499 of 2523 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (German)

Currently translated at 100.0% (2184 of 2184 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% (2523 of 2523 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% (2184 of 2184 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% (2525 of 2525 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% (2525 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/

* Translated using Weblate (Greek)

Currently translated at 100.0% (2525 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/el/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (2525 of 2525 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% (2525 of 2525 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 99.3% (2170 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/zh_Hans/

* Translated using Weblate (Polish)

Currently translated at 87.0% (1902 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/

* Translated using Weblate (Polish)

Currently translated at 90.1% (1968 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2525 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2525 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2184 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (2525 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/

* Translated using Weblate (Czech)

Currently translated at 99.0% (2500 of 2525 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 56.9% (1243 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/

* Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 85.2% (2152 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hant/

* Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 85.7% (2165 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hant/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2184 of 2184 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% (2525 of 2525 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 78.8% (1992 of 2525 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ja/

* Translated using Weblate (Italian)

Currently translated at 100.0% (2526 of 2526 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% (2526 of 2526 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% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2184 of 2184 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/

* Translated using Weblate (German)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/

* Translated using Weblate (Czech)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (Greek)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/el/

* process localizations

* cs typo

* cs space

* hu changes

Co-authored-by: Evgeny <evgeny@poberezkin.com>

* hu revert

Co-authored-by: Evgeny <evgeny@poberezkin.com>

* it typo

* pl corrections

Co-authored-by: Evgeny <evgeny@poberezkin.com>

* export ios localizations

* translation corrections

---------

Co-authored-by: summoner001 <summoner@disroot.org>
Co-authored-by: No name <usir.alerts@onionmail.org>
Co-authored-by: zenobit <zenobit@disroot.org>
Co-authored-by: mlanp <github@lang.xyz>
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org>
Co-authored-by: chamdim <chamdim@protonmail.com>
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Yay <zero-ranch-bronco@duck.com>
Co-authored-by: Kszyche <kszychamejl@int.pl>
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org>
Co-authored-by: hugoalh <hugoalh@users.noreply.hosted.weblate.org>
Co-authored-by: Miyu Sakatsuki <miyu-sakatsuki@outlook.jp>
Co-authored-by: Omikorin <6079265+Omikorin@users.noreply.github.com>
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-03-29 12:08:31 +01:00
Narasimha-sc 34ad395acb ui: jump to filtered message in chat history (#6715)
Show Go button on content-filtered messages (images, links, voice, etc.)
to navigate to the message in the full unfiltered chat history.
Reuses existing search Go button and openAroundItemId mechanism.
2026-03-28 20:16:14 +00:00
Narasimha-sc f4e2ccc9dc fix: jump to message in search fails for messages high up in timeline (#6714)
closeSearch() added onSearchValueChanged("") in d30dde5 (content filter
feature) which triggers async apiFindMessages — this clears the items
that openChat just loaded around the target and replaces them with
initial messages. Skip the reload when openAroundItemId is already set.
2026-03-28 12:27:21 +00:00
Narasimha-sc b0e6a7bfc1 ui: call button in toolbar with audio/video submenu, filter in menu on mobile (#6700)
* ui: call button in toolbar with audio/video submenu, filter in menu on mobile

- Call button always outside three-dots menu; tapping it opens a submenu
  with Audio call and Video call options (both Android/iOS and desktop)
- Desktop: two toolbar buttons — Filter + Call
- Android/iOS: call button in toolbar; filter options move into the
  three-dots menu below a divider line
- Groups: filter button always in toolbar on all platforms
- Edge case: when calls are disabled/unavailable for a contact, the call
  button is hidden and the filter button is shown in its place in the
  toolbar instead

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* ui: call button before filter button on desktop toolbar

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2026-03-28 07:26:16 +00:00
spaced4ndy 779dd38257 ui: downgrade warning (#6704) 2026-03-24 18:03:22 +00:00
Evgeny @ SimpleX Chat a8a8883027 core, ui, website: small text markdown (#6697)
* core: small text markdown

* ios: small markdown

* desktop, android: small markdown

* fix font size

* small markdown on website

* update ios core library

* update bot api docs

---------

Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2026-03-21 18:06:23 +00:00
spaced4ndy 62fe23f008 android, desktop: fix opening pending connection from chat list (#6674) 2026-03-13 10:03:17 +00:00
spaced4ndy 3f4e7f379d core, ui: group members permanent connection errors (#6662) 2026-03-06 15:24:55 +00:00
sh 024df7099d multiplatform: fix image loading performance and layout stability (#6631)
- Replace runBlocking { imageAndFilePath(file) } with LaunchedEffect +
  withContext(Dispatchers.IO) to unblock main thread on all platforms
- Set fixed container size (width + aspectRatio) from preview bitmap to
  eliminate layout shifts during async image loading
- Cache base64ToBitmap() with remember() in CIImageView and FramedItemView
- Desktop: replace imageBitmap.toAwtImage().toPainter() with BitmapPainter
  to eliminate unnecessary round-trip conversion
- Desktop: add LRU cache for base64ToBitmap (200 entries) and
  getLoadedImage (30 entries) to survive LazyColumn item disposal
- Clear loaded image cache on app file deletion via expect/actual

Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2026-03-04 09:11:55 +00:00