Commit graph

207 commits

Author SHA1 Message Date
RyanZhao f05c695756
Merge pull request #588 from mpretty-cyro/fix/message-request-count-bug
Performance: Count unread message requests thread-first rather than unread-message-first
2022-03-28 14:00:41 +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
Ryan Zhao fc093a0157 Merge branch 'dev' into bug-fix-for-call 2022-03-24 16:37:29 +11:00
Morgan Pretty b815a9f348 Fixed up a potential threading issue with the sync configuration logic
Moved all the sync configuration calls to be within the existing 'write' blocks instead of waiting until the completion
2022-03-24 15:08:24 +11:00
Morgan Pretty 5bb3bd7bc1 Cleaned up some config sync logic and allowed migrations to trigger them
Updated the migrations so they can specify whether a configuration sync is required
Moved the config sync logic into a MessageSender extension (makes far more sense than AppDelegate)
Fixed a bug where the ShareVC was triggering the 'versionMigrationsDidComplete' twice
Removed a couple of imports for files that had been deleted
2022-03-24 10:03:51 +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 01742af16b Added an initial call to isRTL on the main thread to prevent a background thread calling it first 2022-03-21 17:18:12 +11:00
Morgan Pretty 1ed3328aac Updated how the HomeVC counts unread message request threads
Updated the HomeVC to count the threads with unread messages using the TSMessageRequestGroup instead of using the UnreadDatabaseView
Removed the OWSMessageUtils 'unreadMessageRequestCount' method
2022-03-17 13:40:32 +11:00
Ryan Zhao a68ed28a7a Merge branch 'dev' into voice-calls-2 2022-03-09 11:33:18 +11:00
Morgan Pretty 3e0ccaea4c Merge branch 'dev' into feature/session-id-blinding-part-2
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Utilities/MentionUtilities.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupPollerV2.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
#	SignalUtilitiesKit/Messaging/Sending & Receiving/MessageSender+Convenience.swift
2022-03-09 09:49:23 +11:00
Morgan Pretty d298bcdb4e Merge branch 'dev' into feature/session-id-blinding-part-2
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Utilities/ContactUtilities.swift
#	SessionUtilitiesKit/General/Array+Utilities.swift
2022-03-08 10:41:05 +11:00
Ryan Zhao 88876138db Merge branch 'ipad-support-1' into voice-calls-2 2022-03-04 15:27:20 +11:00
Ryan Zhao c08b1617c2 slim the button width again 2022-03-03 13:35:27 +11:00
Ryan Zhao 52407aec03 Merge branch 'ipad-support-1' into voice-calls-2 2022-03-02 14:31:31 +11:00
Ryan Zhao 9b075efe0c Merge branch 'dev' into ipad-support-1 2022-03-02 11:32:45 +11:00
Ryan Zhao 1fb4952f5e Merge branch 'dev' into preformance-improvement 2022-03-02 11:31:53 +11:00
Ryan Zhao e243fb8817 fix unread message request count issues 2022-03-02 11:31:33 +11:00
Morgan Pretty cb288ca09c Merge branch 'dev' into feature/session-id-blinding-part-2
# Conflicts:
#	Session/Conversations/ConversationVC+Interaction.swift
#	SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift
2022-03-02 11:29:07 +11:00
Ryan Zhao daf0705d42 Merge branch 'dev' into preformance-improvement 2022-03-02 10:53:42 +11:00
Ryan Zhao 167d68870a show conversation settings button after approving message requests 2022-03-02 10:50:15 +11:00
Morgan Pretty 1b3f6c0ca6 Minor tweaks to the message request banner on the HomeVC
Fixed the unread message counting for message requests
Updated the message request banner to indicate the number of message requests with an unread message
Updated the message request banner to automatically disappear if the user has no unread message requests
Renamed a variable for ReadReceipt management to make it a bit more self-documenting (it looked like it would trigger a read receipt to be sent regardless of the setting)
2022-03-01 17:25:53 +11:00
Ryan Zhao 04d25577f4 Merge branch 'dev' into ipad-support-1 2022-03-01 13:26:41 +11:00
Ryan Zhao 7e92391740 Merge branch 'dev' of https://github.com/oxen-io/session-ios into preformance-improvement 2022-03-01 10:30:51 +11:00
Morgan Pretty 110c7bb01a Addressed PR comments
Moved the 'backBarButtonItem' into the BaseVC (and removed it for being duplicated in various view controllers)
Removed a redundant line of code
2022-03-01 10:25:54 +11:00
Morgan Pretty e6b941ea8a Fixed a number of tweaks and bugs with message requests
Removed the "Back" text from the back buttons
Removed the inset on the 'Path' settings button so the text remains horizontally centered
Hid the settings button from message request threads
Fixed an issue where the back button would remain visible in a conversation when the search field was visible
Fixed an issue where the tintColor of the conversation search field didn't match the global search field
Fixed an issue where sending an attachment response to a message request wouldn't approve the message request
Updated the size and positioning of the message request 'Clear All' button to match the DM 'Next' button
Updated the message request 'Clear All' button to start visible (so it's visible during the push animation) since that's the most likely state it'll be in
Updated the 'Message Requests' cell to use the pinned background colour
Updated the fallback for contact thread names to be a middle-truncated string (4 characters either side)
2022-02-28 17:23:34 +11:00
Morgan Pretty 3e97782d18 Merge branch 'dev' into feature/session-id-blinding-part-2
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC.swift
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fr.lproj/Localizable.strings
#	Session/Meta/Translations/hi.lproj/Localizable.strings
#	Session/Meta/Translations/hr.lproj/Localizable.strings
#	Session/Meta/Translations/id-ID.lproj/Localizable.strings
#	Session/Meta/Translations/it.lproj/Localizable.strings
#	Session/Meta/Translations/ja.lproj/Localizable.strings
#	Session/Meta/Translations/nl.lproj/Localizable.strings
#	Session/Meta/Translations/pl.lproj/Localizable.strings
#	Session/Meta/Translations/pt_BR.lproj/Localizable.strings
#	Session/Meta/Translations/ru.lproj/Localizable.strings
#	Session/Meta/Translations/si.lproj/Localizable.strings
#	Session/Meta/Translations/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sv.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi-VN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
#	Session/Meta/Translations/zh_CN.lproj/Localizable.strings
2022-02-28 10:46:45 +11:00
Ryan Zhao f22672ccd7 Merge branch 'dev' of https://github.com/oxen-io/session-ios into preformance-improvement 2022-02-25 14:58:20 +11:00
Ryan Zhao c0615fe11d Merge branch 'dev' of https://github.com/oxen-io/session-ios into ipad-support-1 2022-02-25 13:43:49 +11:00
Ryan Zhao b32a8cbab2 fix alert vc for iPad 2022-02-24 16:02:24 +11:00
Ryan Zhao 348331d9ab fix present view controller UI issue for iPad 2022-02-24 14:03:50 +11:00
Ryan Zhao 9ff369fbd0 fix settings screen presentation on iPad 2022-02-24 13:19:16 +11:00
Morgan Pretty faa8918cd4 Replaced the remaining non-file legacy methods with their non-legacy equivalents
Updated the OpenGroup polling to run on a non-main thread
Updated the TSGroupModel to store moderatorIds as well as the adminIds (new endpoint is only going to give diffs)
Updated the BatchRequest to support json, base64 encoded strings and raw bytes for it's body
Replaced the 'lastMessageServerID' methods with 'OpenGroupSequenceNumber' methods (since we have swapped the property over)
Added an alert when banning fails (previously it would fail silently)
Fixed a bug where sent blinded messages were appearing as incoming messages
Fixed a bug where the OpenGroup infoUpdates wasn't getting decoded correctly
Fixed an issue where the ConversationVC wouldn't become the first responder again after the ban alerts disappeared
Fixed an issue where I'd incorrectly used the message 'seqNo' in place of the message server id
Fixed an issue where open group messages were setting their `sentTimestamp` to seconds instead of milliseconds for incoming messages
2022-02-24 10:39:22 +11:00
Morgan Pretty 4c89c165d8 Fixed a few bugs uncovered by QA
Fixed a bug where the ConfigurationMessage was getting generated before the contact state was persisted to the database in the message request flow causing odd behaviours (now generating the ConfigurationMessage within the same transaction)
Fixed a bug where sending a message to an existing message request thread once the message requests item has been hidden would show the message requests notification and trigger the section to re-appear on the home screen
Fixed a bug where blocked contacts weren't getting excluded from the contacts list in the configuration message
2022-02-23 17:12:57 +11:00
Morgan Pretty 582ff0997a Fixed a couple of crashes and added some mock data generation logic
Possibly fixed a crash due to a database deadlock
Fixed a crash when the first message requests gets added if there are no other threads
Added code to generate a bunch of random thread data (Needs some testing to ensure no data leaves the device)
2022-02-22 15:51:17 +11:00
Morgan Pretty 47314bd639 Added a notification to indicate the user has a new message request
Fixed a bug where the notification count could be increased for message requests
Fixed a bug where an approved contact could be 'unapproved' due to an order of execution issue when generating the config sync message
Fixed a check to avoid registering for push notifications when on the simulator (old check didn't cater for M1 Macs)
Moved the 'hasHiddenMessageRequests' into the group user defaults so it can be accessed within the notification extension
Added code to handle an edge case where an old client could incorrectly un-approve a contact via a legacy configuration message
2022-02-21 14:48:53 +11:00
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
Ryan Zhao a8fd6d9d18 fix home screen not reloading when coming into foreground 2022-02-17 15:31:27 +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 6009c30805 Removed a resolved todo and fixed some variable naming 2022-02-11 17:17:09 +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
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 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 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 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
ryanzhao 10abbb0552 search result view UI 2022-01-17 16:56:51 +11:00
ryanzhao fed1218538 WIP: global search UI 2022-01-14 16:41:36 +11:00
ryanzhao 9ec749285f minor clean 2022-01-13 11:45:05 +11:00
Ryan Zhao 912f8d80a6 Merge branch 'pin-chats' into voice-calls-2 2021-11-30 13:53:14 +11:00
Ryan Zhao 7e5573c96f fix cell updating and pin icon color 2021-11-30 13:52:31 +11:00
Ryan Zhao a6a297048c Merge branch 'pin-chats' into voice-calls-2 2021-11-23 14:34:19 +11:00
Ryan Zhao 1cc2f17469 pin conversations 2021-11-17 15:51:53 +11:00
ryanzhao daee269a7a Merge branch 'dev' into voice-calls-2 2021-09-20 12:00:06 +10:00
ryanzhao 17b15f2cd9 fix threading issue 2021-09-14 13:33:27 +10:00
Niels Andriesse b54cd3b026 Add call button to conversation screen 2021-08-16 16:24:49 +10:00
Niels Andriesse 662fc945e2 Refactor CallVC 2021-08-16 14:40:07 +10:00
Niels Andriesse 691f931dde Hook up CallVC 2021-08-12 15:37:31 +10:00
nielsandriesse a9f81a17f9 Fix code style & unnecessary changes 2021-06-03 11:39:52 +10:00
coo1k e328ab9bfd Support for App Links 2021-06-01 00:39:11 -07:00
Niels Andriesse 3fda8daec9 Merge branch 'dev' into cleanup 2021-05-20 16:25:59 +10:00
Niels Andriesse 1e246389be Clean 2021-05-20 14:29:28 +10:00
nielsandriesse 1d028e5f6c Add file server instability modal 2021-05-20 11:02:24 +10:00
nielsandriesse 340b9fcdf0 Update build number 2021-05-20 11:02:08 +10:00
Ryan ZHAO 9cbc2921e3 fix move-insert conflict 2021-05-20 11:01:56 +10:00
Niels Andriesse 26b0a1f08a Possibly fix crash 2021-05-17 09:51:14 +10:00
nielsandriesse 17688a66e6 Make closed group polling variable rate 2021-05-12 10:33:29 +10:00
Niels Andriesse e3671291c5 Merge branch 'dev' into cleanup 2021-05-07 13:06:48 +10:00
Niels Andriesse ea668f0344 Use newly translated strings 2021-05-07 11:05:16 +10:00
nielsandriesse e1ad33e832 Clean 2021-05-05 14:22:29 +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 371222098b Fix snode pool updating bug 2021-05-03 09:08:50 +10:00
Niels Andriesse e9df213bfe Put feature flags in one place 2021-04-27 08:53:18 +10:00
nielsandriesse 330e4ce8ad Fix unnecessary V2 open group requests 2021-04-07 13:18:24 +10:00
Niels Andriesse a7dd7e1bf0 Hook up suggestion grid 2021-03-26 13:28:40 +11:00
nielsandriesse c6f4443eed Update more logic for V2 open groups 2021-03-24 14:36:26 +11:00
Niels Andriesse 54fc54e7b9 Minor refactoring 2021-03-05 09:18:45 +11:00
Niels Andriesse 92304fa590 Clean & debug 2021-03-04 13:50:13 +11:00
Niels Andriesse 9969284a2b Clean 2021-02-26 14:42:46 +11:00
nielsandriesse 109e673bad Debug 2021-02-24 15:30:41 +11:00
nielsandriesse 881bd9b00f Add missing sync 2021-02-24 10:01:23 +11:00
Niels Andriesse e4aca65af0 Clean 2021-02-23 14:20:21 +11:00
Niels Andriesse 66a00d4167 Clean 2021-02-22 15:10:01 +11:00
Niels Andriesse 49c825eb43 Remove old conversation screen 2021-02-19 15:46:52 +11:00
Niels Andriesse 547f5bf540 Make replies tappable 2021-02-19 14:43:49 +11:00
Niels Andriesse bc58dfd94e Update build number 2021-02-19 13:43:59 +11:00
nielsandriesse ebd91dcc73 Merge branch 'dev' into ui 2021-02-15 09:12:10 +11:00
Niels Andriesse 2736d1c6a0 Don't show key pair migration modal anymore 2021-02-12 14:46:15 +11:00
nielsandriesse 1924e01edc Merge branch 'multi-device' into ui 2021-02-10 11:27:39 +11:00
Niels Andriesse 90e53e5cef Redesign conversation screen part 1 2021-02-09 15:14:18 +11:00
Niels Andriesse e7b9017992 Enable V2 closed group control messages 2021-02-09 13:55:32 +11:00
Niels Andriesse 82cbf2ab41 Clean 2021-01-28 15:56:33 +11:00
Niels Andriesse 57f7bc88eb Fix leftover merge conflicts 2021-01-28 15:49:43 +11:00
Niels Andriesse 7acb6c9ac3 Merge branch 'dev' into multi-device 2021-01-28 15:44:04 +11:00
Niels Andriesse 4ee5c66653 Send old closed group control messages for now 2021-01-28 10:15:46 +11:00
Niels Andriesse cf333d5e3d Merge branch 'closed-groups' into multi-device 2021-01-25 13:50:18 +11:00
Niels Andriesse 017e4f7d50 Hook up the new system 2021-01-25 10:28:01 +11:00
Niels Andriesse 867e9114a6
Merge branch 'dev' into multi-device 2021-01-22 13:29:13 +11:00
Niels Andriesse c9c83da3dc Rename ClosedGroupUpdateV2 → ClosedGroupControlMessage 2021-01-22 10:28:26 +11:00
Niels Andriesse 2fa62bd2ca Fix threads not updating on home screen 2021-01-21 09:36:26 +11:00
nielsandriesse e38dae5a05 Replace PublicChatManager 2021-01-14 09:42:52 +11:00
nielsandriesse b8d9334d19 Force sync upon creating a closed group or joining an open group 2021-01-13 15:25:38 +11:00
nielsandriesse a915c5ddaa Re-organize files 2021-01-12 11:05:52 +11:00
Renamed from Session/View Controllers/HomeVC.swift (Browse further)