spaced4ndy
9d65b9eb2b
ui: navigation from support chat to member info ( #6237 )
2025-09-03 13:07:28 +00:00
Evgeny
dd3943d994
core, ios: allow moderators to delete messages and block members ( #6064 )
...
* core: allow moderators to delete messages and block members
* ios: moderator
2025-07-14 08:02:29 +01:00
Evgeny
a5768e903d
core, ui: short bio/description for contact and group profiles ( #6055 )
...
* core: short bio/description for contact and group profiles
* use short description in commands
* fix tests
* query plans
* ios: show contact and group profile descriptions
* android, desktop: short description/bio
* ui: layout for chat info, correct copy
* comment out fields to add/edit short descriptions
* remove short description from events
* postgres schema
2025-07-11 21:28:10 +01:00
Evgeny
88547ab704
core: use longer timeouts for background network requests, support retries with increased timeouts ( #6043 )
...
* core: use longer timeouts for background network requests, support retries with increased timeouts
* ios: update types
* ios: allow user retry actions with failed network requests
* build: add exporting API functions with retry
* android, desktop: update types and C APIs
* android, desktop: alert to retry action on network error
* simplexmq
2025-07-07 11:01:03 +01:00
spaced4ndy
8a4760a2cb
core: set short links data, prepare entity, etc.; ios: connect to prepared contact ( #5951 )
2025-06-04 07:47:10 +00:00
spaced4ndy
39de65854c
ios: refactor new chat alerts ( #5959 )
2025-06-02 11:53:09 +00:00
spaced4ndy
041807c870
core: decrease membersRequireAttention counter when member is deleted or leaves ( #5919 )
2025-05-16 15:03:15 +00:00
spaced4ndy
409d7e8532
ios: scroll to reported item ( #5915 )
2025-05-15 15:04:03 +00:00
spaced4ndy
be28022bc6
ios: open support chat with any member ( #5910 )
2025-05-14 16:21:01 +00:00
spaced4ndy
32fb5a5d12
ios: knocking ui ( #5851 )
...
* ios: knocking ui types
* update types
* member admission
* remove chatItemStatuses
* member support view
* member support chat view wip
* ios: secondary ItemsModel (#5862 )
* toolbar
* more chats
* remove theme
* preview icon
* chat toolbar fast markers
* change icon
* change icon
* remove/accept buttons
* item style
* get item ItemsModel in chat model methods (chat view doesn't work dynamically)
* fix support chat
* fix other chats
* refresh on exit
* refresh button
* dynamic marker in chat list
* prohibit multi select actions
* prohibited send field
2025-05-04 22:27:20 +01:00
Stanislav Dmitrenko
a3a27b250c
ios: small fixes ( #5712 )
...
* ios: small fixes
* main thread
* fix crash
* fix member opening
* dismissing sheets in order
* theoretical fix of some crashes
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-03-06 10:31:05 +00:00
Stanislav Dmitrenko
1b757911fa
ui: batch apis for members ( #5681 )
...
* ui: batch apis for members
* ios
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-02-28 18:55:17 +00:00
Stanislav Dmitrenko
9d1329498b
ios: open chat on first unread, "scroll" to quoted items that were not loaded ( #5392 )
...
* ios: open chat on first unread, "scroll" to quoted items that were not loaded
* more changes
* changes
* unused
* fix reveal logic
* debug
* changes
* test
* Revert "test"
This reverts commit 553be124d5 .
* change
* change
* changes
* changes
* changes
* commented deceleration logic
* changes
* fixes
* optimized item identifiers to use merged item directly
* fixed counters
* encreased initial and preload counters
* fix initial loading and trimming items
* optimize
* allow marking read
* 10 instead of 5
* performance
* one more parameter in hash
* disable trimming
* performance
* performance - in background
* optimization
* next/prev
* changes
* markread
* finally
* less logs
* read
* change after merge
* trimming, edge cases
* wait until items loaded
* Revert "wait until items loaded"
This reverts commit 895218b978 .
* progress indicator
* optimization
* disable scroll helper
* experiment
* Revert "experiment"
This reverts commit c952c9e623 .
* jump
* no read
* layoutIfNeeded
* changes
* EndlessScrollView
* read
* changes
* changes
* changes
* reduce time to open a chat (by ~300ms)
* open from the first unread when clicking member chat
* refactored and removed unused code
* handling search emptiness to scroll to correct position
* changes
* read state maintain
* remove protocol
* avoid parsing chatId
* pass chat
* changes
* remove reveal
* refactor spaghetti
* remove ItemsScrollModel
* rename
* remove setUpdateListener
* unused
* optimization
* scrollToTop
* fix
* scrollbar working again
* scrollToBottom
* fix
* scrollBar hiding when not many items on screen
* small safer change
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-02-17 18:21:40 +00:00
Evgeny Poberezkin
13fae855fc
Merge branch 'stable'
2025-01-09 22:29:31 +00:00
Diogo
cd9eb66ebb
ui: remove support for inline moderation ( #5495 )
...
* android: remove support for inline moderation
* ios: emove support for inline moderation
* fix prefix on preview for ios
* unused
* final pass
* ios: should not be able to assign moderator
* button label
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-01-09 22:28:29 +00:00
Evgeny Poberezkin
146c968a79
Merge branch 'stable'
2025-01-08 22:32:24 +00:00
Diogo
7e344b3ee8
ios: reports inline ( #5466 )
...
* initial types
* changes types
* decode
* possible mock for inline report
* remove avatar
* diff
* updates
* parser and display message
* send messages and support placeholder
* profile reports and all reports working
* new api
* check member support for receiving reports
* report chat item text
* moderator role
* placeholder on text compose for report
* rename method
* remove need to have reported item in memory to action
* archived reports
* changes/fix
* fix block member
* delete and moderate
* archive
* report reason
* context menu/moderation fixes
* typo
* not needed
* report reason as caption, and change text
* remove auto archive
* move placeholder to match text
* prefix red italic report
* archive
* apply mark deleted fix
* Revert "apply mark deleted fix"
This reverts commit b12f14c0f5 .
* remove extra space
* context menu rework
* strings, icons
* recheck items extra check on reports
* simplify
* simpler
* reports: never show for own messages, disable attachments, hide when recording or live
* style, allow local deletion
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-01-08 18:28:45 +00:00
spaced4ndy
a3140c2d3e
ui prohibit sending to member if connection is not ready ( #5399 )
2024-12-20 20:33:09 +04:00
spaced4ndy
4075c26dd2
ui: offer to fix connection on call and message buttons ( #5358 )
2024-12-09 21:03:56 +04:00
Diogo
2e431c5afa
ios: fix some real time updates in group members ( #5332 )
...
* ios: fix some real time updates in group members
* use chat instead of binding for group info updates
2024-12-06 11:10:52 +00:00
spaced4ndy
247d12fa40
android, desktop: make more texts different for groups and business chats; ios: preferences texts ( #5308 )
2024-12-03 21:44:06 +04:00
spaced4ndy
6593de89c2
ios: make more texts different for groups and business chats ( #5307 )
2024-12-03 15:25:15 +00:00
Evgeny
ba7abcf6f7
ios: update onboarding texts ( #5255 )
...
* ios: update onboarding texts
* translations
* more translations
* more translations 2
2024-11-27 19:01:16 +00:00
Arturs Krumins
0c69f6553a
ios: fix group member sheet load animation ( #5008 )
...
* ios: fix group member sheet load animation
* improve diff
* rename
* revert moving sections
* re-indent
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-10-10 10:57:15 +01:00
Arturs Krumins
c3f67aff69
ios: speed up network status handling ( #4678 )
...
* move network status into a separate model
* reduce network model observation scope (#4679 )
* dont pass chat
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-08-13 21:08:04 +01:00
Arturs Krumins
7cb3a499b2
ios: optimise chat switching ( #4663 )
...
* ios: shooth chat switching
* debug button
* navigation timeout
* fix scroll crash
* fix merge
* whitespace
* wip
* add spinner; extract load and nav logic
* cleanup
* direct chat button
* cleanup
* showLoadingProgress
* reverse rename
* rename
* spinner layout
* move all programmatic navigation to `openLoadChat`
* remove access restriction
* fix scroll on item added regression
* print
* fix page load regression
* fix member sheet disappearing
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-08-13 19:37:48 +01:00
Evgeny
a0763b3a43
ios: same size of action buttons in chat info sheets ( #4587 )
2024-08-06 08:12:42 +01:00
spaced4ndy
a8bdf1555f
ios: new chat sheet & info views action buttons improvements ( #4582 )
2024-08-05 21:22:09 +04:00
Diogo
55331289d3
ios: improve new and existing chat interactions - new chat sheet, one hand ui, info views action buttons; new modes of contact deletion (keep conversation, only delete conversation) ( #4427 )
...
* ios: added delete contacts, one hand ui, and contact action buttons
* remove unused, rework info buttons wip
* ios: moved existing buttons to new chat sheet
* ios: add basic list of contacts to new chat sheet
* ios: add deleted chats section to new chat sheet
* group chat info navigation
* fix spacing of group info buttons
* remove comment
* unify spacing logic across info views
* info button alerts wip
* calls alerts wip
* call buttons alerts
* fix call button to correctly update on preference change while in view
* refactor
* fix alert ids
* contact list wip
* more contact list actions
* open chat wip
* fix contact list elements clickability
* ios: search functionality on new chat sheet
* ios: white bg for search box on new chat sheet
* ios: don't show empty list when pasted contact is not known
* ios: add search and nav title to deleted chats
* navigation links wip
* fix refreshable
* ios: empty states for lists
* ios: hide contact cards from chat list
* ios: make search bar icon sizes consistent
* ios: fix deleted conversation dissapearing from chat list on back
* fix pending invitation cleanup in chat sheet
* rename search label from open to search
* make cleanup alert work on sheet and on dismiss
* dismiss all sheets after creation of groups
* fix double toolbar on group invite members
* fix double toolbar on group link invitation screen
* dismiss all on group creation error
* comment
* show alert in dismissAllSheets completion
* fix sheet dismissal on known group
* rework contact list with buttons (fixes dark mode)
* fix dark mode on new chat view
* fix search dark mode
* increase search padding
* improve new chat title and info button placing
* info view background
* improve create group title placement
* refactor
* fix delete dialogue in light mode
* change icon
* archivebox on contact list
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-08-05 15:58:24 +04:00
Evgeny
7a418918d6
ios: blur images of blocked group members ( #4573 )
...
* ios: blur images of blocked group members
* refactor
2024-08-04 22:24:08 +01:00
Evgeny Poberezkin
6865515f43
ios: share extension ( #4466 )
...
* ios: share extension (#4414 )
* ios: add share extension target
* ios: Add UI
* ios: send file from share-sheet
* image utils
* ShareError
* error handling; ui-cleanup
* progress bar; completion for direct chat
* cleanup
* cleanup
* ios: unify filter and sort between forward and share sheets
* ios: match share sheet styling with the main app
* ios: fix text input stroke width
* ios: align compose views
* more of the same...
* ShareAPI
* remove combine
* minor
* Better error descriptions
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: enable file sending workers in share extension (#4474 )
* ios: align compose background, row height and fallback images for share-sheet (#4467 )
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: coordinate database access between share extension, the app and notifications extension (#4472 )
* ios: database management proposal
* Add SEState
* Global event loop
* minor
* reset state
* use apiCreateItem for local chats
* simplify waiting for suspension
* loading bar
* Dismiss share sheet with error
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* send image message (#4481 )
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: improve share extension completion handling (#4486 )
* improve completion handling
* minor
* show only spinner for group send
* rework event loop, errorAlert
* group chat timeout loading bar
* state machine WIP
* event loop actor
* alert
* errors text
* default
* file error
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: add remaining share types; process attachment in background on launch (#4510 )
* add remaining share types; process attachment in background on launch
* cleanup diff
* revert `makeVideoQualityLower`
* reduce diff
* reduce diff
* iOS15 support
* process events when sharing link and text
* cleanup
* remove video file on failure
* cleanup CompletionHandler
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: share extension - additional alerts and media previews (#4521 )
* add remaining share types; process attachment in background on launch
* cleanup diff
* revert `makeVideoQualityLower`
* reduce diff
* reduce diff
* iOS15 support
* process events when sharing link and text
* cleanup
* remove video file on failure
* cleanup CompletionHandler
* media previews
* network timeout alert
* revert framework compiler optimisation flag
* suspend chat after sheet dismiss
* activate chat
* update
* fix search
* sendMessageColor, file preview, chat deselect, simplify error action
* cleanup
* interupt database closing when sheet is reopened quickly
* cleanup redundant alert check
* restore package
* refactor previews, remove link preview
* show link preview when becomes available
* comment
* dont fail on invalid image
* suspend
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* ios: descriptive database errors (#4527 )
* ios: set share extension as inactive when suspending chat
---------
Co-authored-by: Arturs Krumins <auth@levitatingpineapple.com >
2024-07-28 17:54:58 +01:00
Evgeny Poberezkin
0847b725b3
ios: toolbar and message entry area background color ( #4449 )
...
* ios: toolbar and message entry area background color
* remove VStack, opacity
* ios: adjust compose view background color to match top bar (#4456 )
* search
* replace BlurView with .thinMaterial
* context item background with shadow
* search
* Revert "context item background with shadow"
This reverts commit fc4ad32417 .
* rework shadow
* shadow on both sides
* Revert "shadow on both sides"
This reverts commit a07920af91 .
* Revert "rework shadow"
This reverts commit 78728263fb .
* dividers
* remove paddings
* height
* search
* focus search
* color
* search background
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-07-15 13:14:14 +01:00
spaced4ndy
c4f8a50f0d
ios: show inactive and forwarded group message status; show inactive members ( #4423 )
...
* ios: differentiate inactive and forwarded group snd statuses; show member connection disabled/inactive
* lazy
* simplify
* Update apps/ios/SimpleXChat/ChatTypes.swift
* export localizations, update strings
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-07-09 21:52:33 +01:00
Evgeny Poberezkin
f5eea018d9
ios: chat themes and wallpapers ( #4376 )
...
* ios: wallpapers (#4304 )
* ios: wallpapers
* theme selection
* applied theme colors and preset wallpaper
* more places with background
* one more
* accent color
* defaults
* rename
* background
* no change to cell color
* unneeded
* changes
* no global tint
* defaults
* removed unneeded class
* for merging
* ios: wallpapers types (#4325 )
* types and api
* divided types per target
* creating directory for wallpapers
* creating wallpaper dir at launch
* ios: wallpapers appearance (#4335 )
* appearance
* changes
* refactor
* scale
* lambda to function
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
* ios: wallpapers user/chat overrides (#4345 )
* ios: wallpapers user/chat overrides
* chat overrides
* color picker updates colors correctly
* fix state update
* labels
* background for light theme
* small optimization
* removed commented code
* ios: enhancements to wallpapers (#4361 )
* ios: enhancements to wallpapers
* colors for background
* ios: wallpapers import/export (#4362 )
* ios: wallpapers import/export
* comment
* ios: wallpapers theme updates (#4365 )
* ios: wallpapers theme updates
* group member background
* colors
* profile picture colors
* unneeded
* optimizations, images, state fixes
* fixes
* no editing of title color
* rename Menus and alerts, refactor
* tint applying fix
* fixes
* migration of accent and themes
* fix updating system theme
* migration changes
* limiting color range
* ios: wallpapers rename enum (#4384 )
* ios: wallpapers rename enum2 (#4385 )
* ios: wallpapers rename enum2
* change
* colors were commented
* fix build and look
---------
Co-authored-by: Stanislav Dmitrenko <7953703+avently@users.noreply.github.com >
2024-07-03 22:42:13 +01:00
Evgeny Poberezkin
5ac521f6d8
core: commands to debug subscribed SMP queues ( #4253 )
...
* core: commands to debug subscribed SMP queues
* getLastRcvMsgInfo
* DESC
* update
* update commands, ui compiles
* update
* ios: fix type
* swap
* simplexmq
* group member queue info
* copy button in the alert
2024-05-31 12:45:58 +01:00
Evgeny Poberezkin
cfa7e0bb28
ios: customizable profile images ( #4084 )
...
* ios: customizable profile images
* update slider
* whats new
2024-04-24 21:20:26 +01:00
Evgeny Poberezkin
182225a5b1
ios: role-based preferences, SimpleX links preference ( #4021 )
...
* ios: role-based preferences, SimpleX links preference
* disable some options
2024-04-12 11:29:58 +01:00
spaced4ndy
71bcfc2848
ui: uncomment block for all functionality ( #3799 )
2024-02-12 17:33:53 +04:00
spaced4ndy
7d2f6a3609
ios: block member for all ( #3708 )
...
* ios: block for all
* member info
* change conditions
* update ui
* blockedByAdmin
* fix
* rework
* fix, comment
* comment
* fix
* fix
* fixes for default
* fix text
* reorder
* fix
* fix
* secondary
* old buttons (revert this)
* blocked by admin text
* revise notification
2024-01-20 10:33:36 +00:00
Evgeny Poberezkin
7f9f9a674c
ios: fix member view freezing on iOS 15, closes #3487 ( #3547 )
2023-12-13 11:27:28 +00:00
Evgeny Poberezkin
9e8084874f
ios: block members ( #3248 )
...
* ios: block members (WIP)
* CIBlocked, blocking api
* show item as blocked
* show blocked and merge multiple deleted items
* update block icons
* split sent and received deleted to two categories
* merge chat feature items, refactor CIMergedRange
* merge feature items, two profile images and names on merged items
* ensure range is withing chat items range
* merge group events
* fix/refactor
* make group member changes observable
* exclude some group events from merging
* fix states not updating and other fixes
* load list of members when tapping profile
* refactor
* fix incorrect merging of sent/received marked deleted
* fix incorrect expand/hide on single moderated items without content
* load members list when opening member via item
* comments
* fix member counting in case of name collision
2023-10-31 09:44:57 +00:00
spaced4ndy
d8d47d706d
ios: connection plan improvements; remove browser mode for simplex links ( #3237 )
2023-10-17 12:56:12 +04:00
spaced4ndy
c609303348
ios: connect plan ( #3205 )
...
* ios: connect plan
* improvements
* wording
* fixes
* rework to use dismissAllSheets with callback
* rework
* update texts
* Update apps/ios/Shared/Views/NewChat/NewChatButton.swift
* Update apps/ios/Shared/Views/NewChat/NewChatButton.swift
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-10-13 19:19:00 +04:00
spaced4ndy
0dab4491e2
ios: create contacts with group members ( #3077 )
...
* wip
* observed
* network status
* contact ready
* add padding
* Update apps/ios/Shared/Views/Chat/ComposeMessage/ContextInvitingContactMemberView.swift
* setContactNetworkStatus
* update text
* different context view
* update text, icon
* spinner
* reload all chats on swipe
* Revert "reload all chats on swipe"
This reverts commit 22c8372301 .
* export localizations
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-09-20 09:26:16 +01:00
spaced4ndy
1a567c88db
ios: rework incognito mode - choose when making connection ( #2851 )
...
* wip
* layout
* more layout
* fix focus
* show incognito
* change icon layout
* remove presentation detents
* smaller button icon
* bigger icon
* show incognito profile status in connection info, layout, icons
* fix some lint warnings, update labels, add incognito label, conditionally hide toolbar to avoid jumping on iOS 17
* remove ignored color
* s/incognitoEnabled/incognito/
* shorter text
* remove parameter label
* restore note when creating a group
* add incognito icon to pending connections
* refactor
* refactor chat list action sheet
* revert to using new value in onChange
* remove unused variable
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-08-08 17:26:56 +04:00
spaced4ndy
2bb2042d7d
ios, android: alert on connect via member address button ( #2819 )
...
* ios: alert on connect via member address button
* android
* Update apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
* Update apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
* ios texts
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-08-02 12:10:11 +04:00
spaced4ndy
ca5b3ddc0d
ios, android: hide force renegotiate encryption button ( #2736 )
2023-07-20 15:50:29 +04:00
spaced4ndy
94312ec6fa
ios, android: multiline display and full names in info views ( #2716 )
...
* ios, android: increase line limit to 2 for group display name in info header, if full name is not set
* make scrollable instead
* ios: multiline group and contact names in info page
* android; align to left with code
* ios rework shield
* android embed
* unused imports
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-07-19 15:16:50 +04:00
spaced4ndy
a6a87cb7de
ios: ratchet synchronization ( #2663 )
...
* types
* info buttons
* prohibit send
* interactive item
* wip
* terminology
* item design
* comment
* rework
* design
* design
* move button
* update texts
* update texts
* sync not supported alert
* fix
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-07-10 19:01:22 +04:00
spaced4ndy
bc7217d686
ios, android: update connection stats on switch start ( #2597 )
2023-06-20 10:09:04 +04:00