Commit graph

676 commits

Author SHA1 Message Date
Morgan Pretty ef09d4d5aa Additional encryption work on id blinding
Got the updated blinding logic working (at least when authenticating a request - still need to deal with message signing and verification)
Storing the server capabilities in the database now so we can correctly blind requests based on them
Renamed the remaining 'v2' functions and classes to just be 'OpenGroup' since there isn't a 'V2' anymore
Cleaned up a few TODOs and functions
2022-02-17 18:33:23 +11:00
Morgan Pretty b655882cbd Started resolving TODOs
Added some new properties to the OpenGroupV2
Moved a number of methods and variables from OpenGroupAPI to OpenGroupManager (anything doing actual logic)
Moved the message signing into the OpenGroupAPI (since that's the only place it happens)
Renamed remaining old model classes to start with 'Legacy' to make clean up easier
Updated the OpenGroupAPI poll method to use the same logic as it previously did to determine if it should retrieve recent messages or messages since the last one
2022-02-16 10:31:08 +11:00
Morgan Pretty 8cc9caa0fd Renamed the OpenGroupPollerV2 and OpenGroupManagerV2 2022-02-15 16:44:10 +11:00
Morgan Pretty 63e6cdd9ec Renamed OpenGroupAPIV2 to OpenGroupAPI
Added the inbox endpoints
2022-02-15 16:30:11 +11:00
Morgan Pretty eb927c36a9 Started cleaning up some of the SOGS and Onion Requests structure
Cleaned up the OnionRequestAPI so we don't need the LegacyOnionRequestAPI
Added requests for the user endpoints
Added deprecated flags to the legacy endpoints and functions
Added some logic to start handling the new poll (batch) response
Started adding unit tests for the OpenGroupAPI functions
2022-02-15 13:55:59 +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 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
Ryan Zhao e543f86c8b Merge branch 'dev' of https://github.com/oxen-io/session-ios into 1.11.21 2022-02-03 11:02:19 +11:00
Morgan Pretty 4d62ddbd77 Merge branch 'dev' into fix/safari-sharing
# Conflicts:
#	Podfile.lock
2022-02-03 08:32:17 +11:00
Morgan Pretty 7f479bbca4 Merge branch 'dev' into feature/message-requests 2022-02-02 17:00:40 +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
Ryan Zhao ebb7507728 Merge branch 'dev' of https://github.com/oxen-io/session-ios into 1.11.21 2022-02-02 13:33:25 +11:00
Ryan Zhao 166fbff26c improve selected message animation for global search 2022-02-02 11:32:37 +11:00
Morgan Pretty bee36423da Fixed a couple of issue with sharing large attachments
Added back localized attachment error messages
Fixed an issue where sending an attachment could fail and the screen would be dismissed before the user had a chance to read the error
2022-02-01 14:55:03 +11:00
Ryan Zhao c81e0e517d fix ui issue after making unread message count 4 digits 2022-01-28 15:03:19 +11:00
Ryan Zhao 99022006da Make the unread message count 4 digits instead of 2 2022-01-28 14:21:54 +11:00
Ryan Zhao 2c7dfe6a37 fix conversation screen scrolling to bottom issue 2022-01-28 14:10:35 +11:00
Ryan Zhao 70a562344c minor issue fix 2022-01-28 14:09:57 +11:00
Ryan Zhao 8ed77435d8 update translation 2022-01-28 14:08:43 +11:00
Ryan Zhao d96d7468a4 fix read more button colour 2022-01-28 14:04:41 +11:00
Ryan Zhao 6ae84d3e37 update outgoing message text colour in light mode 2022-01-28 13:45:27 +11:00
Ryan Zhao d642d8a4ed improve image message ratio 2022-01-28 13:14:57 +11:00
Ryan Zhao bcc5da75b6 minor fix on debug mode to prevent crashing 2022-01-28 13:14:02 +11:00
Ryan Zhao 16f6d49cec add note to self to the default global search screen with empty search text 2022-01-28 09:59:05 +11:00
Ryan Zhao 124d908686 add author for group messages 2022-01-27 16:39:22 +11:00
Ryan Zhao be1fb789e8 hide recent search results behind the flag 2022-01-27 15:32:19 +11:00
Ryan Zhao e4b0ca9ebc fix not to self 2022-01-27 15:29:10 +11:00
Ryan Zhao d329740bd4 add clear for recent search results 2022-01-27 14:56:59 +11:00
Ryan Zhao 85c4b3d745 show recent search result as default for global search screen 2022-01-27 14:19:07 +11:00
Ryan Zhao a2db4a8330 add comments 2022-01-25 16:55:48 +11:00
Ryan Zhao 79fc9459a4 clean 2022-01-25 16:54:21 +11:00
Ryan Zhao 837b2ac157 fix a typo 2022-01-25 16:47:50 +11:00
Ryan Zhao 78af18413f show at most 500 search results 2022-01-25 16:43:03 +11:00
Ryan Zhao d583422c73 add some comments 2022-01-25 16:31:30 +11:00
Ryan Zhao 20a3b6ee26 move path button into setttings 2022-01-25 15:56:23 +11:00
Ryan Zhao 2a229bd663 minor fix 2022-01-25 15:25:48 +11:00
Ryan Zhao 68ec1654e8 rebuild global search UI 2022-01-25 15:04:11 +11:00
Ryan Zhao e718cee611 WIP: rebuild global search UI 2022-01-25 09:46:22 +11:00
Ryan Zhao 3cc6a6b7c4 add comments 2022-01-24 11:55:37 +11:00
Ryan Zhao 0ddb4f355a minor improvements on dismissing the keyboard 2022-01-24 11:43:32 +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
Ryan Zhao 037d70b185 handle seed view reminder and search bar 2022-01-20 12:13:25 +11:00
Ryan Zhao 715c9eff98 clean 2022-01-20 10:58:43 +11:00
Ryan Zhao c1c5678056 implement animation for selected search result message flickering 2022-01-20 10:48:01 +11:00
Ryan Zhao 675dde9b1e improve unhighlighted text colour and contrast 2022-01-19 11:25:20 +11:00
Ryan Zhao af7dd3e82f highlight Note to Self 2022-01-19 10:59:49 +11:00
Ryan Zhao 5c112064da UI improvements on contact search results 2022-01-19 10:54:00 +11:00
Ryan Zhao 994a2e9c89 hide cancel button when the keyboard is hidden 2022-01-18 15:28:54 +11:00