Commit graph

86 commits

Author SHA1 Message Date
Morgan Pretty
49dd341b6d Removed some more legacy code which has been refactored 2022-05-23 12:23:43 +10:00
Morgan Pretty
5de8d9c7a8 Removed a bunch of legacy database types
Removed the old OWSProfileManager and OWSUserProfile (refactored)
Removed all the old TSInteraction/etc. types (replaced with new database types)
Removed the old Quote models (refactored)
Removed the old Attachment models (refactored)
Removed the old recipient identity (unused)
Deleted a number of other unused files
2022-05-23 09:49:04 +10:00
Morgan Pretty
9ada8b84e0 Removed a bunch of legacy code
Renamed the 'Legacy' classes to have their library prefix (avoid confusion)
Removed the legacy Objective C Thread code (pulled only the NSCoding stuff into the 'SMKLegacy' type)
2022-05-21 12:25:10 +10:00
Morgan Pretty
aabf656d89 Finished off the MediaGallery logic
Updated the config message generation for GRDB
Migrated more preferences into GRDB
Added paging to the MediaTileViewController and sorted out the various animations/transitions
Fixed an issue where the 'recipientState' for the 'baseQuery' on the ConversationCell.ViewModel wasn't grouping correctly
Fixed an issue where the MediaZoomAnimationController could fail if the contextual info wasn't available
Fixed an issue where the MediaZoomAnimationController bounce looked odd when returning to the detail screen from the tile screen
Fixed an issue where the MediaZoomAnimationController didn't work for videos
Fixed a bug where the YDB to GRDB migration wasn't properly handling video files
Fixed a number of minor UI bugs with the GalleryRailView
Deleted a bunch of legacy code
2022-05-20 17:58:39 +10:00
Morgan Pretty
3f062c044c Added back the majority of the ConversationVC interactions
Removed some more legacy code
Added back logic similar to the pre-processing de-duping logic (was resulting in "unsent" messages reappearing)
Added a number of updated view files
2022-05-12 17:28:27 +10:00
Morgan Pretty
06eef99766 Cleared out some legacy code, fixed a few bugs, got typing indicators and mentions working
Got mentions working again
Got typing indicators working again
Got the notification sound and preview preferences working
Fixed a few issues with attachment image loading
Fixed an issue where enum settings weren't getting stored correctly
2022-05-10 17:42:15 +10:00
Morgan Pretty
f4ca219030 Re-added a bunch of functionality to the home and message requests screens
Cleared out some more legacy code which has been refactored
2022-05-06 18:07:57 +10:00
Morgan Pretty
b541666ef0 Got the ability to send message working again and other tweaks
Tested and fixed a couple of issues with the disappearingMessages job
Added a simple dependency system for jobs (primarily for the AttachmentUploadJob, but will likely be others later)
Setup the AttachmentUploadJob again (looks like there are cases which use it)
Prevented a possible infinite job deferral loop from causing the app to crash (the loop is still technically possible but the app will continue to run now)
Updated the interactions unique constraints based on testing and discussions around how the serverHash works
Deleted the legacy ReadReceipt handling (now managed via the 'interaction.wasRead' flag and 'SendReadReceiptsJob')
Deleted the unused SSKIncrementingIdFinder
2022-05-06 12:44:26 +10:00
Morgan Pretty
ed9f4ea6c6 Fixed a few closed group and job issues
Fixed a few job migration issues
Fixed an issue with the closed group key pair management (wasn't storing keys correctly)
Refactored the OWSSound (now Preferences.Sound)
Added the logic for the AttachmentDownloadJob and enabled jobs to be cascade deleted via interactions
Optimised the HomeViewModel database observation query (fetch specific columns so changes outside those don't trigger updates)
Updated to the latest GRDB (ran into a deadlock which should be fixed in a newer version)
2022-04-22 18:47:11 +10:00
Morgan Pretty
11231599db Further work on migrations and message pipeline refactoring
Refactored the AppDelegate from Objective C to Swift
Updated the HomeVC to use GRDB
Refactored a number of the Job types to be driven via GRDB and the new JobRunner
Fixed a bug where the LinkPreviewView wouldn't render correctly in dark mode
2022-04-21 16:42:35 +10:00
Morgan Pretty
cf66edb723 Further work on SessionMessagingKit migrations
Added migrations for contacts and started working through thread migration (have contact and closed group threads migrating)
Deprecated usage of ECKeyPair in the migrations (want to be able to remove Curve25519Kit in the future)
2022-04-06 15:43:26 +10:00
Morgan Pretty
a1b4554cdb Migrated the SessionSnodeKit from YapDatabase to GRDB
Changed the min OS version to iOS 13.0 (support for 'Identifiable')
Removed the alternate approaches to fetching the userKeyPair and userPublicKeyHexString (no consistently routed through the caching method)
Migrated the 'OWSIdentityManager' logic to use the new 'Identity' type
Added the 'Setting' table and got the pattern working fairly nicely (unfortunately there isn't a good way to avoid key collision without proper enums)
Updated the SessionSnodeKit to migration it's data from YDB to GRDB
Updated the SessionSnodeKit to use GRDB throughout it's logic
2022-04-01 17:22:45 +11:00
Morgan Pretty
7165b9e4f6 Merge branch 'dev' into feature/remove-OWSBlockingManager
# Conflicts:
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Meta/AppDelegate.swift
#	SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift
2022-03-24 16:51:34 +11:00
Morgan Pretty
1214005c59 Updated the cachedEncodedPublicKey to be Atomic
Added the Atomic wrapper for thread safe variables
2022-03-24 14:42:25 +11:00
Morgan Pretty
78c0d000be Removed the OWSBlockingManager replacing it with the config sync
Fixed an issue where the "block" button would appear in the NoteToSelf swipe menu
Removed the OWSBlockingManager and supporting files
Removed a number of unused classes and methods
Refactored the BlockListUIUtils to Swift
2022-03-23 09:59:38 +11:00
Morgan Pretty
2e10ccf99d Updated the code to cache the retrieval of the user public key 2022-03-15 16:06:53 +11:00
Ryan Zhao
7a677a1800 move pollers to one working queue to avoid race condition 2022-02-24 16:47:08 +11:00
ryanzhao
7c2e25e25a remove useless code 2022-02-23 15:31:06 +11:00
Ryan Zhao
16c9b7793a move pollers to background threads 2022-02-21 13:27:44 +11:00
Ryan Zhao
a86310b0f5 improve global search performance 2022-02-21 13:20:34 +11:00
Morgan Pretty
4d62ddbd77 Merge branch 'dev' into fix/safari-sharing
# Conflicts:
#	Podfile.lock
2022-02-03 08:32:17 +11:00
Ryan Zhao
18fea4ab73 Merge branch 'dev' into global-search 2022-01-27 15:43:54 +11:00
Morgan Pretty
09d63456b6 Merge branch 'dev' into fix/safari-sharing
# Conflicts:
#	Podfile
#	Podfile.lock
#	Session.xcodeproj/project.pbxproj
2022-01-27 15:17:28 +11:00
Morgan Pretty
03fb5cbeeb Cleanup and tweaks
Fixed some compilation issues.
Removed an unused dependency.
Cleaned up the Podfile to minimise duplication.
Pointed at an oxen fork of SignalCoreKit instead of a personal one.
2022-01-25 12:05:45 +11:00
Ryan Zhao
42903d835d search for name and nickname 2022-01-20 16:21:32 +11:00
Ryan Zhao
8be5768ad2 snippet for group members 2022-01-20 15:33:31 +11:00
ryanzhao
fed1218538 WIP: global search UI 2022-01-14 16:41:36 +11:00
Morgan Pretty
a7661da41a Revert "Fixed M1 build issues"
This reverts commit ba1a0a2ac6.
2022-01-14 12:51:18 +11:00
Morgan Pretty
f02f53fc49 Added code to show a HTTP LinkPreview error
Added code to indicate the app won't load LinkPreviews for HTTP urls.
Updated the title & subtitle layout to better handle LinkPreview errors.
Missed an Objective C change in the last commit.
2022-01-13 16:08:23 +11:00
Morgan Pretty
ba1a0a2ac6 Fixed M1 build issues
Included the Podfile changes for building on an M1 Mac (Need to shift from personal to session fork).
Fixed some additional build issues due to unwrapping a non-optional type (Swift version?).
2022-01-11 14:37:05 +11:00
ryanzhao
ecf92ceeea fix PN sound settings not applying to remote PNs 2021-10-19 15:11:47 +11:00
ryanzhao
b7c6eafa87 fix notification preview type nested transaction crash 2021-09-30 14:24:04 +10:00
Niels Andriesse
4f9d77017a Fix message updating race condition 2021-08-09 14:54:16 +10:00
Niels Andriesse
b8c4e6aa93 Avoid unnecessary conversation screen updates 2021-08-05 10:02:52 +10:00
Niels Andriesse
7f0b87a2b2 Avoid unnecessary conversation screen updates 2021-08-03 15:36:54 +10:00
Niels Andriesse
ca862096b4 Rename profilePictureEncryptionKey → profileEncryptionKey 2021-07-22 14:52:10 +10:00
Niels Andriesse
519ffa4405 Fully switch to the new contact API
This should improve performance significantly as it avoids many unnecessary sync transactions. It also makes the code more readable.
2021-07-22 14:41:27 +10:00
nielsandriesse
bf9d860214 Batch thread updates 2021-05-28 09:47:05 +10:00
nielsandriesse
06f795169b Merge branch 'dev' into cleanup 2021-05-05 14:10:19 +10:00
nielsandriesse
a098ba7125 Remove unused code 2021-05-05 12:13:48 +10:00
nielsandriesse
49f3b9f7db Rename contactIdentifier → contactSessionID 2021-05-05 10:00:39 +10:00
nielsandriesse
21acdfc835 Clean up thread model 2021-05-05 09:53:18 +10:00
Niels Andriesse
d742fc1548 Delete V1 OGS & file server 2021-05-04 15:46:48 +10:00
Niels Andriesse
f552d51423 Remove unused code 2021-05-04 15:06:41 +10:00
Niels Andriesse
2f67073a5a Implement new snode pool updating method 2021-04-20 15:21:28 +10:00
Ryan ZHAO
cf148fe845 handle access to selected photos & optimise the process of request photo library permission 2021-04-08 13:36:20 +10:00
Niels Andriesse
aaa0d736ed Fix desktop attachment compatibility 2021-03-02 11:05:40 +11:00
Niels Andriesse
dd0baf0d97 Unify contacts APIs 2021-03-01 09:36:18 +11:00
Niels Andriesse
c12593775c Fix potential padding issue 2021-02-26 13:59:19 +11:00
Niels Andriesse
90e53e5cef Redesign conversation screen part 1 2021-02-09 15:14:18 +11:00