Commit Graph

67 Commits (4963a84ddd092646f44ab5680933a24ef23ec5dd)

Author SHA1 Message Date
Morgan Pretty 4963a84ddd Added more unit tests for the OpenGroupAPI (fixed a couple bugs as well) 3 years ago
Morgan Pretty c90f346d6a Further SOGS V4 integration work
Added in the v4 onion requests logic
Added in the new pin/unpin APIs
Split up additional legacy methods to try and simplify the refactoring
Added a number of TODOs around usage of legacy request methods
3 years ago
Morgan Pretty 4f3900771e More work on getting SOGS V4 integrated
Updated the MessageSendJob to support V4 messages (V2 messages will be upgraded to V4 if they get re-encoded)
Renamed the Message+Destination from 'openGroup' & 'openGroupV2' to 'legacyOpenGroup' and 'openGroup'
Started plugging in more of the V4 APIs
Renamed a number of the V2 APIs to start with 'legacy'
3 years ago
Morgan Pretty 2284375fc0 Started work on updated SOGS support
Split the OpenGroupAPIV2 into separate files
Started working on the new auth and blinded-id approaches (new auth working with un-blinded id suggesting blinded-id code is incorrect)
Updated the SOGS request/response types to use Codable
Updated the SOGS Request type to use enums instead of strings for keys (to reduce likelihood of typos breaking things)
Updated SessionMessagingKit to use Codable and JSONEncoder/JSONDecoder instead of the legacy JSONSerialization
Cleaned up some naming conventions in the SessionMessagingKit (calling a URLRequest body 'parameters' is very confusing...)
Removed the custom TSRequest class (just using standard URLRequest everywhere instead)
Added a number of extension functions to enable some more functional-coding styles
Added extensions to Sodium methods to allow scalar multiplication and the ability to hash providing a salt and a personalisation value (both needed for new SOGS auth)
Fixed an issue where the legacy auth for SOGS could crash due to threading issues (multiple threads accessing the same variable)
Fixed an issue where if you were in two rooms in a single SOGS and deleted one of them, the other room would stop getting updates as the server public key was getting removed
3 years ago
Morgan Pretty 394b0646a3 Updated the code to support additional session id prefixes 3 years ago
Morgan Pretty cd61fb8df0 Merge branch 'dev' into feature/message-requests
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SignalUtilitiesKit/Utilities/UIColor+Extensions.swift
3 years ago
Morgan Pretty 9db5083cc5 Built out the Message Request functionality
Added the MessageRequestsViewController
Added a 'Message Requests' button to the settings screen
Added accept/reject buttons for message requests to the ConversationVC
Added the ability to hide the message request item on the HomeVC (re-appears if you get a new message request)
Added code to handle an edge-case where the message request approval state wouldn't be returned to the sender due to the recipient running an old version of the app
Prevented contacts which aren't associated with an approved thread from appearing when creating a closed group
Disabled notifications for threads which aren't approved
Updated the app notification count to exclude unapproved messages
Updated the app to ignore closed group creation messages if the group has no admins which are approved contacts
Fixed up the keyboard avoidance behaviour in the ConversationVC
Fixed a couple of minor interaction issues which affected some devices
Fixed an issue where the database migrations would run on the 2nd launch when creating a new account (causing odd behaviours)
3 years ago
Morgan Pretty dd9eeb5d61 Added initial support for sharing URLs and text
Updated the share extension to load URL previews.
Updated the ThreadPickerVC to send plain text & URLs in the same way they are sent for normal messages.
3 years ago
Morgan Pretty 4f3faa28bc Refactored SessionShareExtension code to Swift 3 years ago
ryanzhao ccbc819cc4 include more info in logs 4 years ago
ryanzhao fde5083de8 improve link preview images 4 years ago
Niels Andriesse 5202bde4a4 Supply fake User-Agent & Accept-Language headers 4 years ago
nielsandriesse c98cfe420d Fix spacing 4 years ago
nielsandriesse bf9d860214 Batch thread updates 4 years ago
Niels Andriesse 601062c9ef Fix timeSinceLastOpen usage 4 years ago
Brice-W 51ba97827d open group polling limit implementation 4 years ago
nielsandriesse e1ad33e832 Clean 4 years ago
Niels Andriesse d742fc1548 Delete V1 OGS & file server 4 years ago
Niels Andriesse f552d51423 Remove unused code 4 years ago
Niels Andriesse e9df213bfe Put feature flags in one place 4 years ago
nielsandriesse f7a75a1b80 Debug 4 years ago
nielsandriesse 75f5591fe0 Store certificates in DER format 4 years ago
Niels Andriesse 2687d9c968 Use proper API 4 years ago
Niels Andriesse 8d2e81ddde Trust only self-signed seed node certificates 4 years ago
Niels Andriesse edc4a7a71b Move files 4 years ago
Niels Andriesse 58748471a4 Set up skeleton code 4 years ago
Niels Andriesse d4b745a322 Cache open group preview images 4 years ago
Niels Andriesse 7558e0b32a Re-enable joining V1 open groups 4 years ago
Niels Andriesse 34bbff1ab4 Implement OpenGroupAPIV2 4 years ago
Niels Andriesse 1a09ee3619 Scroll to last unread message upon opening a conversation 4 years ago
Niels Andriesse 10e6d114a0 Sync profile updates 4 years ago
Niels Andriesse e4aca65af0 Clean 4 years ago
nielsandriesse 810aa42f03 Finish link preview UI 4 years ago
nielsandriesse 1924e01edc Merge branch 'multi-device' into ui 4 years ago
nielsandriesse 4803b96eb1 Only handle the first config sync message after restoration 4 years ago
Niels Andriesse 90e53e5cef Redesign conversation screen part 1 4 years ago
Niels Andriesse 7acb6c9ac3 Merge branch 'dev' into multi-device 4 years ago
Niels Andriesse 54e902c848 Fix various warnings 4 years ago
Niels Andriesse be877bbeaf Improve onion request path loading efficiency 4 years ago
Niels Andriesse e38aaa4e0e Merge branch 'closed-groups' into multi-device 4 years ago
Niels Andriesse cf333d5e3d Merge branch 'closed-groups' into multi-device 4 years ago
Niels Andriesse bbac6cc5ed Attempt to fix extensions 4 years ago
nielsandriesse 9eefc21eb9 Periodically send configuration messages 4 years ago
nielsandriesse d6314c8d30 Handle configuration messages 4 years ago
nielsandriesse 28e3705f7e Implement multi device UI 4 years ago
Niels Andriesse 0d01480cd0 Debug 4 years ago
Niels Andriesse 6e673945c5 Re-organize files 4 years ago
Niels Andriesse 61a0672824 Merge branch 'dev' into link-previews 4 years ago
Niels Andriesse 7583661cca Implement auto-migration 4 years ago
Niels Andriesse a46e9e3eb5 Recommend that users migrate 4 years ago