Commit graph

1018 commits

Author SHA1 Message Date
Ryan Zhao ccbf4e0945 clean 2022-09-05 17:14:56 +10:00
Ryan Zhao 31605672e2 fix call threading issues 2022-09-05 11:27:25 +10:00
ryanzhao a5ede8c6a2 fix a case when the app goes into background with an ongoing call 2022-09-02 16:59:50 +10:00
Morgan Pretty fc860e3957 Added fixes and defensive coding for a number of crashes
Fixed a crash which could occur due to multithreaded dependency access
Fixed a crash which could occur if the 'keyWindow' wasn't set on the LandingVC in time since we were force-unwrapping
Fixed a crash which could occur due to multithreaded swarm cache access
Fixed the broken unit tests
2022-08-30 09:45:40 +10:00
Morgan Pretty 08a52f9497 Fixed an issue which could cause the DB migration to fail for users with closed groups 2022-08-29 13:11:45 +10:00
ryanzhao 29dd85ebe7 minor refactor 2022-08-26 14:22:31 +10:00
ryanzhao 287fabb390 Merge branch 'dev' into emoji-reacts-tweaks 2022-08-26 10:24:29 +10:00
Ryan Zhao 81ef5a744a fix count logic 2022-08-25 17:28:48 +10:00
Ryan Zhao 543f729247 feat: add local cache and deal with merging for reaction changes 2022-08-25 17:24:43 +10:00
Morgan Pretty a0e43875e7
Merge pull request #674 from mpretty-cyro/fix/data-extraction-timestamp
Fixed a bug where the "DataExtractionNotification" messages weren't correctly setting their tmestamps
2022-08-25 15:03:05 +10:00
Morgan Pretty 84ccb63b35 Fixed a bug where the "DataExtractionNotification" messages weren't correctly setting their tmestamps 2022-08-25 14:16:59 +10:00
Morgan Pretty c73bb43c56 Fixed a few bugs
Fixed a bug where open group message deletion wasn't thread-specific
Fixed a bug where the user couldn't delete pending/failed messages being sent to an open group
Fixed a bug where deleting content from "related" tables wouldn't correctly trigger an update within the PagedDatabaseObserver
Fixed a bug where a user that was an admin/mod of one open group would incorrectly appear to be an admin/mod of all open groups
2022-08-25 12:55:41 +10:00
Ryan Zhao 3a81ffc752 feat: add response for reaction endpoints 2022-08-25 12:01:49 +10:00
Ryan Zhao 128ef747b3 tweak: only fetch and show 5 reactors for open group reactions 2022-08-25 11:51:53 +10:00
Ryan Zhao f9c2a2ce99 tweak: fix an issue where we may delete the wrong open group message and update reactions to wrong open group messages in other threads with the same server id 2022-08-25 11:12:22 +10:00
ryanzhao 851ad6c4c9 minor refactor 2022-08-23 12:25:23 +10:00
Ryan Zhao c7c92f747c Merge branch 'various-bugs-and-optimisations' into emoji-reacts 2022-08-22 11:30:06 +10:00
Morgan Pretty 7097853d58 A few bugs fixes and some optimisations
Fixed a bug where notifications could incorrectly appear for messages in the current thread
Fixed a bug where swiping left/right on images in the MediaDetailViewController could load images from other threads
Fixed a bug where the unread count wouldn't appear correctly when opening a conversation
Fixed a bug where the unread count on the conversation cell could get truncated
Fixed a bug where notifications weren't working correctly when the app is in the foreground
Fixed a bug where we weren't clearing the 'received X new messages' count when in the foreground
Fixed a bug where outgoing messages could get marked as read in a very specific case
Updated the "group notification" logic to only apply to Open Groups (and always doing it rather than just in the background)
Added a placeholder person icon when you have a closed group with a single member
Added a couple of indexes to improve the HomeVC database query performance (reduce launch time by ~15% in some cases)
Added a background task to give message sending the chance to complete when sending the app to the background
Removed an unneeded query from the HomeViewModel init (reduce launch time by ~10% in some cases)
Optimised one of the queries used to load the data needed for the conversation screen
2022-08-19 16:58:47 +10:00
Ryan Zhao 651373234a feat: add capability check for open group emoji reacts 2022-08-18 16:13:20 +10:00
Ryan Zhao f7a4c92d38 Merge branch 'dev' into emoji-reacts 2022-08-18 14:38:01 +10:00
Morgan Pretty d116ac0ebe Fixed an issue where the 2.0.2 migration broke the original _003_ migration 2022-08-18 13:38:02 +10:00
ryanzhao 0a9856d49a tweak: fix reaction notifications 2022-08-17 16:41:01 +10:00
ryanzhao c26e6f7e9e Merge branch 'dev' into emoji-reacts 2022-08-17 11:00:06 +10:00
ryanzhao 131cb9170b Merge branch 'dev' into emoji-reacts 2022-08-17 10:10:27 +10:00
Morgan Pretty 362986e73a Fixed a bug where the notification sound "preview" playing wasn't working 2022-08-17 10:02:23 +10:00
Morgan Pretty 3ab8bdec77 Fixed an issue where hidden mods/admins wouldn't be properly recognised
Added an isHidden flag to the GroupMember
Reset the OpenGroup 'infoUpdates' value to force a re-fetch of the data and fix users affected by this bug
Fixed the broken unit tests
2022-08-16 13:56:40 +10:00
Morgan Pretty 9f4d1a678a Fixed a bug where deleted incoming messages could incorrectly be counted as unread 2022-08-16 11:44:11 +10:00
Morgan Pretty 0ce96976bf Fixed an issue where the open group seqNo wasn't updated for deletions 2022-08-15 16:04:07 +10:00
ryanzhao 9c9f1e3cd3 tweak: encode and sign reaction endpoints with raw emoji 2022-08-12 10:52:35 +10:00
Morgan Pretty e007870c34 Fixed a bug where disappearing messages weren't working for local outgoing messages 2022-08-12 08:32:31 +10:00
Ryan Zhao 88e419aac0 clean 2022-08-11 15:21:19 +10:00
Ryan Zhao 645f8e1d24 tweak: add update types of reaction to query parameter 2022-08-11 14:50:31 +10:00
Ryan Zhao 4a5674f7b3 tweak: keep the old logic of removing open group messsages 2022-08-11 11:51:15 +10:00
Ryan Zhao 4cb2d81670 clean up 2022-08-11 11:32:29 +10:00
ryanzhao ba578fcb3c Merge branch 'dev' into emoji-reacts 2022-08-09 16:00:30 +10:00
Morgan Pretty 201c59fd2b Updated the logic for the background fetch timeout
Updated the logic for the background fetch timeout to happen in the AppDelegate and be based on a system property to avoid a few edge-cases
Removed the ID Blinding error handling 'e' suffix (as it's not actually part of the error)
2022-08-09 15:18:57 +10:00
Ryan Zhao aaf91c3327 Merge branch 'database-refactor' into emoji-reacts 2022-08-08 15:00:00 +10:00
Morgan Pretty 2025fd2638 Fixed a crash and the SOGS deletion logic to continue to support the deprecated approach for the time being
Fixed an issue where the app could crash when entering the background during migration
Added the old 'messageServerIdsToRemove' code back for the time being to support the deprecated deletion behaviour
2022-08-08 13:56:11 +10:00
Ryan Zhao 7383ddad04 update sortId logic after open group reaction index 2022-08-08 13:07:29 +10:00
Ryan Zhao 91afad99d5 Merge branch 'database-refactor' into emoji-reacts 2022-08-08 10:16:07 +10:00
Morgan Pretty 1224e539ea Reduced unneeded DB write operations and fixed a few minor UI bugs
Updated the database to better support the application getting suspended (0xdead10cc crash)
Updated the SOGS message handling to delete messages based on a new 'deleted' flag instead of 'data' being null
Updated the code to prevent the typing indicator from needing a DB write block as frequently
Updated the code to stop any pending jobs when entering the background (in an attempt to prevent the database suspension from causing issues)
Removed the duplicate 'Capabilities.Capability' type (updated 'Capability.Variant' to work in the same way)
Fixed a bug where a number of icons (inc. the "download document" icon) were the wrong colour in dark mode
Fixed a bug where the '@You' highlight could incorrectly have it's width reduced in some cases (had protection to prevent it being larger than the line, but that is a valid case)
Fixed a bug where the JobRunner was starting the background (which could lead to trying to access the database once it had been suspended)
Updated to the latest version of GRDB
Added some logic to the BackgroundPoller process to try and stop processing if the timeout is triggered (will catch some cases but others will end up logging a bunch of "Database is suspended" errors)
Added in some protection to prevent future deferral loops in the JobRunner
2022-08-05 17:10:01 +10:00
ryanzhao 073516ae78 feat: add sortId for reaction sorting 2022-08-05 14:23:28 +10:00
ryanzhao 99e4614bf8 Merge branch 'database-refactor' into emoji-reacts 2022-08-05 09:54:13 +10:00
Morgan Pretty ecbded3819 Cleaned up the poller logic a bit 2022-08-04 18:09:03 +10:00
Ryan Zhao a2c9bee269 WIP: add sortId 2022-08-04 17:10:24 +10:00
Ryan Zhao 37f876dffd deal with blinded id reactor 2022-08-04 13:43:47 +10:00
Morgan Pretty f8b2f73f7b Fixed a few issues found during QA
Fixed an issue where quotes containing images wouldn't send
Fixed an issue where a MessageSend job could get stuck in an infinite retry loop if it had an attachment in an invalid state
Fixed an issue where quotes containing non-media files wouldn't contain the correct data
Fixed an issue where the quote thumbnail was getting the wrong content mode set
Fixed an issue where the local disappearing messages config wasn't getting generated correctly
Fixed an issue where the format parameters for the disappearing message info message were the wrong way around in one case
Updated the AttachmentUploadJob to try to support images which haven't completed downloading (untested as it's not supported via the UI)
2022-08-04 13:25:46 +10:00
Ryan Zhao 4d0b47fa7f clean 2022-08-04 11:32:35 +10:00
Ryan Zhao 6e0c812c6d fix a crash where reactors in open group doesn't have a profile 2022-08-04 11:03:58 +10:00
ryanzhao 30e48209e2 feat: persist open group reactions into local database 2022-08-03 16:40:29 +10:00