Arturs Krumins
996c6efddd
ios: prevent hangs when opening app from background with async api calls ( #4730 )
...
* ios: async api calls on entering foreground
* rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-08-21 19:16:57 +01:00
Evgeny Poberezkin
e04f74738e
Revert "ios: asynchronous api calls when entering foreground ( #4710 )"
...
This reverts commit b52dfee078
.
2024-08-20 18:24:53 +01:00
Arturs Krumins
b52dfee078
ios: asynchronous api calls when entering foreground ( #4710 )
...
* ios: get call invitations asynchronously
* async update chats
* async user list on appear
* move model changes to main thread
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-08-20 11:28:06 +01:00
Evgeny
70991debfd
ios: optimize performance of updating chats ( #4723 )
...
* ios: optimize performance of updating chats
* even simpler
* always use updateChats
* make chats readonly from outside of model
2024-08-20 09:29:52 +01:00
Arturs Krumins
3b98032371
ios: filter agent subscriptions from chat console ( #4708 )
2024-08-17 15:52:35 +01:00
Arturs Krumins
3a0921c093
ios: asychronous subscription updates ( #4707 )
...
* ios: asychronous subscription updates
* cleanup
2024-08-17 13:26:56 +01:00
Arturs Krumins
46a60d979b
ios: fix messages reseting position, when app is brought from background to foreground ( #4686 )
...
* ios: fix messages reseting position, when app is brought back to foreground
* minor
2024-08-14 20:14:40 +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
spaced4ndy
38fa4c231f
ui: improve remote controller stop reason ( #4670 )
2024-08-13 15:05:13 +04:00
Diogo
9871ebb3b1
ios: mark chat non deleted only on send/receive (keep chatDeleted flag on open) ( #4659 )
...
* ios: navigation to delete chat working for group members
* modify
* Revert "modify"
This reverts commit fc811bbb84
.
* don't mark non deleted on open, mark on send
* simplify
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2024-08-12 18:49:34 +04:00
Evgeny
d970470702
ui: fix throttled chat ordering ( #4645 )
...
* ios: fix throttled chat ordering
* optimize
* account for added chats
* revert kotlin change
* dont pop chat that is already on top, unify with addChat
* android, desktop: fix chat ordering
* update
* clear
* fix ios
* refactor sorting
2024-08-10 14:04:37 +01:00
Evgeny
7441ed9892
core: choose random servers for the first user profile, use the same servers for other profiles ( #4584 )
...
* core: choose random servers for the first user profile, use the same servers for other profiles
* update ui clients
2024-08-06 16:13:36 +01: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 Poberezkin
cb76c8079c
core: fix archive export when some filename is not compatible with zip ( #4561 )
...
* core: fix archive export when some filename is not compatible with zip
* update
* core, ios
* update kotlin apis, ios: add alert to migrate from device
2024-08-02 20:23:54 +01:00
Stanislav Dmitrenko
e1fb0ac0b1
ui: delete multiple messages ( #4532 )
...
* ui: delete multiple messages
* ios
* simplify, rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-07-30 23:56:56 +01:00
spaced4ndy
493ad14b39
core: make user db actions high priority, faster chat start with async db operations ( #4531 )
...
* core: move db actions out of synchronous execution on chat start
* revert some
* multiplatform: load chat data before starting chat
* use priority database access
* simplexmq
* fix race in the tests
* check chat is running
* core: allow getting call invitations and notificationn token when chat is stopped
* ios: load chats and refresh call invitations before chat is started
* simplexmq
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-07-29 21:52:45 +01:00
Arturs Krumins
7f08f87ee4
ios: improve conversation scrolling (fixes hangs when messages are updated). ( #4534 )
...
* ios: fix hang while updating chat item state
* throttle item update
* fix
* remove buttons, switch back to Debug
* remove items getter/setter from ChatModel
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-07-29 21:17:14 +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
spaced4ndy
2689d1e27b
ios: optimize subscription indicator ( #4501 )
2024-07-22 19:32:54 +04:00
spaced4ndy
95776e0951
ios: improve proxy errors ( #4485 )
2024-07-19 18:39:12 +04:00
spaced4ndy
fa73e63a79
ios: allow sending messages immediately on joinConnection, acceptContact ( #4478 )
2024-07-19 11:31:43 +04:00
Evgeny Poberezkin
ff8bbf11e7
core: allow start in extension without subscriptions but with enabled files ( #4464 )
...
* core: allow start in extension without subscriptions but with enabled files
* only start sending files
* update
* update
* update simplexmq
2024-07-17 14:14:19 +01:00
spaced4ndy
4251762553
ios: better errors ( #4462 )
2024-07-16 17:19:37 +04:00
spaced4ndy
2dff94cbb4
ios: check temporary proxy error ( #4440 )
...
* ios: check temporary proxy error
* update
* more errs
* more errs
* refactor
* update
* refactor
2024-07-11 19:49:28 +04:00
Arturs Krumins
41c4f13939
ios: optimise mark-as-read performance ( #4434 )
...
* ios: optimise mark-as-read rendering performance
* merge master
* minor
* make chat observable
* make model EnvironmentObject
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-07-11 08:57:56 +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
spaced4ndy
1180edf80e
ios: servers summary ( #4321 )
...
* types
* chat list buttons
* update
* wip
* xftp summary
* sub status view
* reconnect server button
* reset stats button
* refactor
* subscription icon in server view
* getAgentSubsSummary api
* view
* subs indicator with timer
* rename
* variableValueAsPercentage
* encodePrettyPrinted
* totals, timer
* reduce interval
* show more/less stats
* refactor
* sort
* rework indicator wip
* change offline icon
* rework indicator
* show percent
* file progress
* fix
* onion
* user servers, icons
* dashes
* Revert "user servers, icons"
This reverts commit 805e7e9bd6
.
* remove icon, remove total, remove session %
* exclude sessions
* move starting from
* file stats
* fix
* open server settings
* file in progress
* update
* wpi
* wip
* rework stats
* arrow for sessions
* texts
* reconnect all
* single user
* rework file stats
* update
* dont log terminal items
* center
* update
* _connSubIgnored
* rename
* update
* large titles
* refactor
* update
* text
* upd
* single dash
2024-07-03 13:59:46 +01:00
Evgeny Poberezkin
2585f4ecfd
ios: ChatView performance improvements ( #4353 )
...
* feat: Add synthesized hashable conformance to chat and API types (#4348 )
* UIKit ReverseList
* ReverseList - manual layout updates for external state
* Propagate ScrollModel; Disable async media width
* Filter chat items
* Remove UIKit menu wrapper
* Make chat item width calculation synchronous (#4371 )
* Fix floating button regression
* Improve filter performance
* Fix page load the merged items exceed full page
* Resolve iOS15 compabibility
* Restore build config
* Add page-up scroll; Fix same item decrementing unread counter multiple times
* Fix: Chat not loading additional pages, if newest items are all merged and exceed page size
* Minor
* Fix item loading regression
* Fix item loading regression 2
* Fix unread regression
* refactor
---------
Co-authored-by: Arturs Krumins <auth@levitatingpineapple.com>
Co-authored-by: Levitating Pineapple <noreply@levitatingpineapple.com>
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2024-07-03 10:24:26 +01:00
spaced4ndy
d244338b13
ui: differentiate remote ctrl errors, better error texts ( #4302 )
2024-06-10 18:18:05 +04:00
spaced4ndy
5e96e1ea2b
ios: file errors ( #4281 )
2024-06-05 21:03:05 +04:00
Evgeny Poberezkin
b165603136
ios: log file error to console
2024-05-31 18:33:57 +01:00
spaced4ndy
184a24b70e
ui: fix filtering of contacts that can be invited to group ( #4265 )
2024-05-31 18:30:59 +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
spaced4ndy
ec7b35adb9
ios: check known relays before file reception, support user approval of unknown relays ( #4044 )
...
* ios: check known relays before file reception, support user approval of unknown relays
* add privacyAskToApproveRelays to AppSettings
* less text
* ui improvements, fixes
* fix ntf
* shorter alert
* simplify settings
* rename
* icon
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-05-20 17:49:19 +04:00
spaced4ndy
d3e522e169
ui: disable send field for disabled connection (based on authErrCounter) ( #4193 )
2024-05-16 17:08:31 +04:00
spaced4ndy
d1dde3d0c8
ui: support message forwarding with custom ttl ( #4192 )
2024-05-16 14:12:58 +04:00
spaced4ndy
f091384aa7
ui: apply model updates only for active user for switch and ratchet sync events ( #4175 )
2024-05-13 17:25:24 +01:00
spaced4ndy
22fd2d7189
ios: remove experimental PQ toggle ( #4051 )
...
* ios: remove experimental PQ toggle
* remove header
2024-04-22 17:50:28 +01:00
spaced4ndy
77f5c678d5
ios: forward ui ( #4024 )
...
* wip
* wip
* fixes
* improvements
* info
* fix
* dont cleanup file
* info design, text
* text
* rework with LazyVStack
* delay
* refactor
* move delay
* fix
* refactor
* refactor 2
* keep current message
* forward with quote, context icons
* info
* preserve draft
* remove newline
* improve search
* info
* layout
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-04-16 09:28:39 +01:00
Stanislav Dmitrenko
e560b49d14
ios: sound prompts and vibration during calls ( #4005 )
...
* ios: sound prompts and vibration
* awaiting call receipt
* update
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-04-11 12:02:41 +01:00
Stanislav Dmitrenko
d8b52ee0d3
ios: network observer ( #3996 )
...
* ios: network observer
* update
* remove metered
* update tcpTimeoutPerKb
* network connection in settings
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-04-11 11:31:30 +01:00
Evgeny Poberezkin
9b6ca23dcb
ios: fix UI freezes on start and when exiting background ( #3972 )
...
* ios: fix UI freezes on start and when exiting background
* remove unused code
* comments
2024-03-29 22:58:36 +00:00
Alexander Bondarenko
d835f9df3d
ios: remove recursion in receiveMsgLoop ( #3922 )
...
* ios: remove recursion in receiveMsgLoop
* comment
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-03-19 11:44:30 +00:00
Stanislav Dmitrenko
a56bc6760b
ios: migration via link ( #3808 )
...
* ios: migration via link
* changes in UI
* UI
* UI and API changes
* UI and logic
* simplify statement
* UI, API, logic
* formatting
* animation fix
* better animation
* test
* changed directory
* changes
* migrating to device
* migrate settings
* more state updates on main thread
* texts
* continue migration after restart
* toggle for saving passphrase and footer text
* no visual arthefacts when deleting a chat after migration
* saving settings before changing passphrase
* back button is looking disabled when it's disabled
* fixed starting chat issues when migrating to device
* paste and share link elements
* proper import process and refactoring UI in SimpleXInfo
* show progress on settings while starting chat
* title bold font
* changes as in Android
* brace
* changes as in Android
* rename to prevent confusion
* fixes and adapted to Android
* unused param
* comment
* don't allow going back on Archiving step
* update core library
* changes as in Android
* correction
* correction
* change
* qr code
* update network settings view
* update progress
* changes
* navigation view and focus in text field
* texts
---------
Co-authored-by: Avently <avently@local>
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2024-03-11 14:17:28 +00:00
Evgeny Poberezkin
60a73a539e
core: add agreed connection version field ( #3881 )
...
* core: add agreed connection version field
* fix
* progress
* use pqSupport and version to decide compression in messages
* pass version to encodeConnInfoPQ
* update pq enable/disable api
* remove TestConfig
* update nix dependencies
* update texts
* corrections
* create e2ee info items when connection switches from off to on first time
* corrections
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* comment
* increase test timeout
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2024-03-10 11:31:14 +00:00
spaced4ndy
b403201310
core (pq): further integrate agent api ( #3874 )
...
* core (pq): further integrate agent api
* update both pq support and ecnryption
* update
* fix
* corrections
* corrections 2
* corrections 3
2024-03-08 11:40:55 +04:00
spaced4ndy
ce9b909495
ios: pq support ( #3870 )
...
* ios: pq support
* fix
* fix
* update
* text
* rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2024-03-07 16:43:10 +04:00
spaced4ndy
b0b249a56a
Merge branch 'stable'
2024-02-22 12:11:23 +04:00
spaced4ndy
c544a636f6
core, ui: remove usage of inline files (send only xftp files) ( #3823 )
2024-02-20 13:56:31 +04:00