Commit graph

178 commits

Author SHA1 Message Date
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
2022-02-14 14:07:45 +11:00
Morgan Pretty 1b820c48c6 Added support for Microsoft Word, Excel & Powerpoint previews 2022-02-14 10:02:33 +11:00
Morgan Pretty 161a90ad28 Updated the code to show the document interaction controller for text files as well 2022-02-14 09:54:17 +11:00
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'
2022-02-11 16:48:16 +11:00
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
2022-02-10 11:17:41 +11:00
Morgan Pretty 394b0646a3 Updated the code to support additional session id prefixes 2022-02-08 16:37:01 +11:00
Ryan Zhao 2d9f962a97 Merge branch 'dev' of https://github.com/oxen-io/session-ios into voice-calls-2 2022-02-04 14:21:54 +11:00
Morgan Pretty 185b2d2a97 Merge branch 'dev' into feature/pdf-preview
# Conflicts:
#	Session/Conversations/ConversationVC+Interaction.swift
2022-02-04 11:51:51 +11:00
Morgan Pretty cd61fb8df0 Merge branch 'dev' into feature/message-requests
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SignalUtilitiesKit/Utilities/UIColor+Extensions.swift
2022-02-04 11:49:54 +11:00
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)
2022-02-02 16:59:56 +11:00
Morgan Pretty b85c113da6 Added code to preview PDF attachments 2022-01-28 16:24:18 +11:00
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.
2022-01-12 09:40:53 +11:00
Morgan Pretty 4f3faa28bc Refactored SessionShareExtension code to Swift 2022-01-11 12:38:19 +11:00
Ryan Zhao 0df2630a70 enable CBR 2021-12-07 16:30:14 +11:00
Ryan Zhao f3206416e0 WIP: show missed call tips 2021-11-30 13:46:53 +11:00
Ryan Zhao 570c3fbe3b add ringtone and other UI improvement 2021-11-29 16:32:02 +11:00
Ryan Zhao 78971b7d09 ignore call messages over 60s 2021-11-25 16:50:30 +11:00
ryanzhao bcf0ecfb69 show modal of ip exposure for calls 2021-10-25 11:49:54 +11:00
ryanzhao 3de81ef2a0 imporvements 2021-10-14 16:01:50 +11:00
ryanzhao 9b9a5d7a39 improve vibration for incoming calls 2021-10-12 16:42:53 +11:00
ryanzhao ccbc819cc4 include more info in logs 2021-10-05 15:45:54 +11:00
ryanzhao fde5083de8 improve link preview images 2021-09-15 14:02:52 +10:00
Niels Andriesse 5202bde4a4 Supply fake User-Agent & Accept-Language headers 2021-07-09 15:07:39 +10:00
nielsandriesse c98cfe420d Fix spacing 2021-05-28 09:58:33 +10:00
nielsandriesse bf9d860214 Batch thread updates 2021-05-28 09:47:05 +10:00
Niels Andriesse 601062c9ef Fix timeSinceLastOpen usage 2021-05-24 16:39:18 +10:00
Brice-W 51ba97827d open group polling limit implementation 2021-05-24 16:00:42 +10:00
nielsandriesse e1ad33e832 Clean 2021-05-05 14:22:29 +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 e9df213bfe Put feature flags in one place 2021-04-27 08:53:18 +10:00
nielsandriesse f7a75a1b80 Debug 2021-04-07 11:34:28 +10:00
nielsandriesse 75f5591fe0 Store certificates in DER format 2021-04-07 09:26:27 +10:00
Niels Andriesse 2687d9c968 Use proper API 2021-04-07 09:26:00 +10:00
Niels Andriesse 8d2e81ddde Trust only self-signed seed node certificates 2021-04-01 15:51:14 +11:00
Niels Andriesse edc4a7a71b Move files 2021-04-01 15:28:52 +11:00
Niels Andriesse 58748471a4 Set up skeleton code 2021-04-01 15:27:44 +11:00
Niels Andriesse d4b745a322 Cache open group preview images 2021-03-30 09:54:40 +11:00
Niels Andriesse 7558e0b32a Re-enable joining V1 open groups 2021-03-29 11:33:52 +11:00
Niels Andriesse 34bbff1ab4 Implement OpenGroupAPIV2 2021-03-24 10:54:38 +11:00
Niels Andriesse 1a09ee3619 Scroll to last unread message upon opening a conversation 2021-03-01 14:23:55 +11:00
Niels Andriesse 10e6d114a0 Sync profile updates 2021-02-23 16:01:06 +11:00
Niels Andriesse e4aca65af0 Clean 2021-02-23 14:20:21 +11:00
nielsandriesse 810aa42f03 Finish link preview UI 2021-02-15 13:51:26 +11:00
nielsandriesse 1924e01edc Merge branch 'multi-device' into ui 2021-02-10 11:27:39 +11:00
nielsandriesse 4803b96eb1 Only handle the first config sync message after restoration 2021-02-10 10:19:46 +11:00
Niels Andriesse 90e53e5cef Redesign conversation screen part 1 2021-02-09 15:14:18 +11:00
Niels Andriesse 7acb6c9ac3 Merge branch 'dev' into multi-device 2021-01-28 15:44:04 +11:00
Niels Andriesse 54e902c848 Fix various warnings 2021-01-28 15:40:45 +11:00
Niels Andriesse be877bbeaf Improve onion request path loading efficiency 2021-01-27 16:14:35 +11:00
Niels Andriesse e38aaa4e0e Merge branch 'closed-groups' into multi-device 2021-01-27 10:16:17 +11:00
Niels Andriesse cf333d5e3d Merge branch 'closed-groups' into multi-device 2021-01-25 13:50:18 +11:00
Niels Andriesse bbac6cc5ed Attempt to fix extensions 2021-01-25 10:28:33 +11:00
nielsandriesse 9eefc21eb9 Periodically send configuration messages 2021-01-13 14:08:41 +11:00
nielsandriesse d6314c8d30 Handle configuration messages 2021-01-13 13:38:07 +11:00
nielsandriesse 28e3705f7e Implement multi device UI 2021-01-13 10:52:07 +11:00
Niels Andriesse 0d01480cd0 Debug 2021-01-07 16:40:01 +11:00
Niels Andriesse 6e673945c5 Re-organize files 2020-12-18 15:37:29 +11:00
Niels Andriesse 61a0672824 Merge branch 'dev' into link-previews 2020-12-18 11:57:11 +11:00
Niels Andriesse 7583661cca Implement auto-migration 2020-12-16 16:22:46 +11:00
Niels Andriesse a46e9e3eb5 Recommend that users migrate 2020-12-14 10:20:10 +11:00
Niels Andriesse 2a4977d269 Implement Session protocol 2020-12-14 09:49:02 +11:00
Niels Andriesse 905b829de2 Refresh snode pool at least once a day 2020-12-07 09:29:46 +11:00
nielsandriesse d6c115bc2a Fix module linking issue 2020-12-02 16:25:16 +11:00
nielsandriesse 5f2ec37db7 Fix message duplication bug 2020-12-01 11:40:37 +11:00
Niels Andriesse ac6baec6f2 Make things compile again 2020-11-26 10:37:56 +11:00
nielsandriesse 1037ce5113 WIP 2020-11-25 16:21:04 +11:00
nielsandriesse 5dfd4b1965 Restructure 2020-11-25 16:15:16 +11:00
Niels Andriesse d7c71a8c06 Make things compile again 2020-11-23 10:24:40 +11:00
nielsandriesse b218a16b05 Implement attachment downloading 2020-11-20 15:53:56 +11:00
Niels Andriesse a48fc40aa6 WIP 2020-11-19 15:35:43 +11:00
nielsandriesse f36f447bec Ditch unused Signal code 2020-11-17 15:35:52 +11:00
nielsandriesse 1c0b32af3c Fix ECKeyPair usage 2020-11-12 10:41:45 +11:00
nielsandriesse 000e907d47 Clean up Podfile 2020-11-12 07:55:24 +11:00
nielsandriesse c475f895e8 Create SignalUtilitiesKit 2020-11-11 10:58:56 +11:00
nielsandriesse 82127bfe4d Clean 2020-11-10 15:48:47 +11:00
nielsandriesse 362e2e9c03 Update SessionMessagingKit for open groups 2020-11-09 11:53:07 +11:00
nielsandriesse a3382f41d4 Re-organize files 2020-11-09 10:58:47 +11:00