Commit Graph

86 Commits (7f2508d2d05ebb7809393fac3caaa08516d2210c)

Author SHA1 Message Date
Morgan Pretty 601ba9a9b2 Objective-C Refactoring, Removed PureLayout, General Cleanup 12 months ago
Morgan Pretty cf8b17fb27 Fixed a "kicked from group" bug, cleaned up some logic, added 'current user' logic 1 year ago
Morgan Pretty db633e69de Reworked the SessionCell.Accessory (same interface, builds much quicker) 1 year ago
Morgan Pretty 59fc7a53ef New DeveloperSettingsViewModel, bulk PN endpoints and updated group messages
Added the DeveloperSettingsViewModel and dependency-controlled feature flags
Added the generic 'SessionListViewModel' to reduce duplicate code when we want to just display a selectable list of items
Added an indicator on the home screen to show when using testnet
Added group promotions behind a feature flag
Updated the PushNotificationAPI to use bulk subscribe/unsubscribe requests
Updated the 'GroupUpdateDeleteMessage' and 'GroupUpdateDeleteMemberContentMessage' to support additional behaviours
Updated the SessionCell to have better RTL support (swapped some left/right things to leading/trailing)
Updated the revoke/unrevoke endpoints to take arrays of subaccount tokens
Refactored the Bencode logic to properly support Codable types
1 year ago
Morgan Pretty b90ee74c91 Added promotion handling, message deletion & deprecation banner
Added logic to handle promotion messages
Added a debounced toast for promotion failures
Added support for the 'delete_before' and 'attach_delete_before' functionality
Added in the deprecated legacy groups banner.
Cleaned up the UserListViewModel a little
Updated the 'User count' header subtitle to take the user to the 'Group Members' or 'Edit Group' screens based on admin status
Updated the sorting of the group member lists to match the requirements
Fixed the debounced group invite failure toast
Fixed an issue where some libSession errors wouldn't get propagated back into the Swift code resulting in invalid database changes
Fixed an issue where admins couldn't properly leave groups
2 years ago
Morgan Pretty a5118157b3 Finished invite statuses and toasts
Added invitation statuses for updated groups
Added the invite and failed invite toasts
Added proper support for the group description
Refactored the EditClosedGroupVC and UserSelectionVC to use the SessionTableViewModel
Updated the ObservableTableSource to support forcing a refresh either before or after the database observation
Removed support for the per-thread notification sound
2 years ago
Morgan Pretty 00f246a21e Added group message requests, admin message deletion, fixed a few bugs
Added logic for Group Message Requests
Added a 'ManualResultJob' which allows for a way to add a dependency to a job which can be resolved separately from the job system (it's not persistent though)
Added the ability for admins to delete select messages from updated groups
Swapped 'save'/'saved' calls to be 'upsert'/'upserted' as that's the actual behaviour we expect (unique key based rather than primary key based)
Fixed a bug where the 'limitedReuse' 'drainBehaviour' could get stuck in an invalid state
Fixed a bug where job dependencies could swap queues which could theoretically result in deadlocks in some cases
2 years ago
Morgan Pretty 417060a676 Added functionality for a bunch of GroupUpdate messages
Added logic to trigger and handle destroyed groups
Added logic to trigger and handle handle supplementary key rotations (libSession implementation is WIP)
Added logic for 'remove user and their content'
Added the ability to associate a callback to any arbitrary job
Added data support for the group description value
Added logic to handle being kicked from a group
Added logs for failed GROUP_KEYS merges (already have for other config types)
Fixed an issue where the initial key generation didn't include the initial members
Fixed a crash which could occur when creating a conversation via handling a USER_GROUPS config
Fixed an issue where manually triggering the ConfigurationSyncJob might not ever get a callback
Updated to have the latest Protobuf tweaks
Removed recognition of the LegacyConfigurationMessage
2 years ago
Morgan Pretty 0df6501265 Pushing up my WIP changes from the last few days
Got a number of the GroupUpdate messages working properly
Updated the DisplayPictureDownloadJob to support OpenGroup room images
Updated the Poller to process messages by namespace (sorted) and added support for synchronous handling of messages
Reworked the ProfileManager to be a more reusable DisplayPictureManager
Cleaned up the conversion from milliseconds to TimeInterval (which is documented as seconds) for clarity
Fixed a read/write crash due to the SnodeAPI cache setup
Fixed an issue where dependencies could incorrectly overwrite each other when based on protocols
2 years ago
Morgan Pretty 5ac05a41ec Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/groups-rebuild
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationViewModel.swift
#	Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Home/Message Requests/MessageRequestsViewController.swift
#	Session/Home/Message Requests/MessageRequestsViewModel.swift
#	Session/Meta/Translations/fil.lproj/Localizable.strings
#	Session/Meta/Translations/hi.lproj/Localizable.strings
#	Session/Meta/Translations/hr.lproj/Localizable.strings
#	Session/Meta/Translations/nl.lproj/Localizable.strings
#	Session/Meta/Translations/sl.lproj/Localizable.strings
#	Session/Meta/Translations/sv-SE.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi.lproj/Localizable.strings
#	Session/Meta/Translations/zh-TW.lproj/Localizable.strings
#	Session/Settings/ConversationSettingsViewModel.swift
#	Session/Settings/HelpViewModel.swift
#	Session/Settings/NotificationContentViewModel.swift
#	Session/Settings/NotificationSettingsViewModel.swift
#	Session/Settings/NotificationSoundViewModel.swift
#	Session/Settings/PrivacySettingsViewModel.swift
#	Session/Settings/SettingsViewModel.swift
#	Session/Shared/SessionTableViewController.swift
#	SessionSnodeKit/Database/Models/SnodeReceivedMessageInfo.swift
#	SessionTests/Settings/NotificationContentViewModelSpec.swift
#	SessionUIKit/Components/TopBannerController.swift
#	SessionUtilitiesKit/Configuration.swift
2 years ago
Morgan Pretty a6931bb922 Merge remote-tracking branch 'upstream/dev' into disappearing-message-redesign
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Shared/SessionTableViewController.swift
#	Session/Shared/SessionTableViewModel.swift
#	Session/Shared/Types/SessionTableSection.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionUIKit/Components/SessionButton.swift
2 years ago
Morgan Pretty b97c0955be Copy tweak to better support localization 2 years ago
Morgan Pretty f97170fdcd Fixed a crash on the blocked contacts screen and refactoring
Refactored the SessionThreadViewModel to reduce boilerplate and clean up the interface a little
Refactored the MessageRequestsViewController to use the SessionTableViewController
Fixed a crash when returning from the background on the BlockedContactsViewModel
Fixed some minor lag on the NotificationSoundViewModel
Added an optional initial loading message to the SessionTableViewController
2 years ago
Morgan Pretty 32495f0a8a Did some refactoring to better distinguish between publicKeys and sessionIds in the codebase 2 years ago
Morgan Pretty 691acf2a42 Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/groups-rebuild
# Conflicts:
#	_SharedTestUtilities/MockJobRunner.swift
2 years ago
Morgan Pretty d8b0f76902 Merge remote-tracking branch 'RyanFork/disappearing-message-redesign' into feature/groups-rebuild
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/LegacyDatabase/SMKLegacy.swift
#	SessionMessagingKit/Database/Models/Interaction.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+DataExtractionNotification.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
#	SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+ConvoInfoVolatile.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
#	SessionMessagingKitTests/Sending & Receiving/MessageReceiverSpec.swift
#	SessionSnodeKit/Database/LegacyDatabase/SSKLegacy.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionUtilitiesKit/Database/LegacyDatabase/SUKLegacy.swift
#	SessionUtilitiesKit/Database/Migrations/_003_YDBToGRDBMigration.swift
#	SessionUtilitiesKit/General/SNUserDefaults.swift
#	SignalUtilitiesKit/Utilities/AppVersion.m
2 years ago
Morgan Pretty 96b5403726 Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es-ES.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fil.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/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/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sl.lproj/Localizable.strings
#	Session/Meta/Translations/sv-SE.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi.lproj/Localizable.strings
#	Session/Meta/Translations/zh-CN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-TW.lproj/Localizable.strings
#	SessionMessagingKit/Calls/WebRTCSession.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Migrations/_003_YDBToGRDBMigration.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
#	SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+Contacts.swift
#	SessionMessagingKit/Utilities/ProfileManager.swift
#	SessionMessagingKitTests/Jobs/Types/MessageSendJobSpec.swift
#	SessionMessagingKitTests/LibSessionUtil/LibSessionSpec.swift
#	SessionMessagingKitTests/LibSessionUtil/SessionUtilSpec.swift
#	SessionMessagingKitTests/Open Groups/Models/BatchRequestInfoSpec.swift
#	SessionMessagingKitTests/Open Groups/Models/SOGSMessageSpec.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
#	SessionMessagingKitTests/Open Groups/Types/SOGSEndpointSpec.swift
#	SessionMessagingKitTests/Sending & Receiving/MessageReceiverDecryptionSpec.swift
#	SessionMessagingKitTests/Sending & Receiving/MessageSenderEncryptionSpec.swift
#	SessionMessagingKitTests/Shared Models/SessionThreadViewModelSpec.swift
#	SessionMessagingKitTests/Utilities/CryptoSMKSpec.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
#	SessionTests/Settings/NotificationContentViewModelSpec.swift
#	SessionUtilitiesKitTests/Database/Models/IdentitySpec.swift
#	SessionUtilitiesKitTests/Database/Utilities/PersistableRecordUtilitiesSpec.swift
#	SessionUtilitiesKitTests/General/DependenciesSpec.swift
#	SessionUtilitiesKitTests/JobRunner/JobRunnerSpec.swift
#	_SharedTestUtilities/MockCaches.swift
2 years ago
Ryan Zhao 8721d8c5f3 update accessibility ids 2 years ago
ryanzhao 2d0bbe4455 Merge branch 'dev' into disappearing-message-redesign
#	Session/Meta/Translations/de.lproj/Localizable.strings
#	Session/Meta/Translations/en.lproj/Localizable.strings
#	Session/Meta/Translations/es-ES.lproj/Localizable.strings
#	Session/Meta/Translations/fa.lproj/Localizable.strings
#	Session/Meta/Translations/fi.lproj/Localizable.strings
#	Session/Meta/Translations/fil.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/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/sk.lproj/Localizable.strings
#	Session/Meta/Translations/sl.lproj/Localizable.strings
#	Session/Meta/Translations/sv-SE.lproj/Localizable.strings
#	Session/Meta/Translations/th.lproj/Localizable.strings
#	Session/Meta/Translations/vi.lproj/Localizable.strings
#	Session/Meta/Translations/zh-CN.lproj/Localizable.strings
#	Session/Meta/Translations/zh-TW.lproj/Localizable.strings
2 years ago
ryanzhao 38c34f2977 trigger disappear after read for community invitaion 2 years ago
Morgan Pretty c4aadaff1c Fixed the broken tests and updated test dependencies
Properly fixed the busted migration issue
Updated to the latest version of Quick and Nimble (unit testing libraries)
Updated the tests based on the above
2 years ago
Morgan Pretty d6b92badc9 Fixed a couple of build errors 2 years ago
Morgan Pretty 65057fba21 Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC.swift
#	Session/Meta/AppDelegate.swift
#	SessionMessagingKit/Database/Models/Interaction.swift
#	SessionMessagingKit/Database/Models/SessionThread.swift
#	SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
#	SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+Contacts.swift
#	SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+ConvoInfoVolatile.swift
#	SessionMessagingKit/SessionUtil/Config Handling/SessionUtil+UserProfile.swift
#	SessionMessagingKit/SessionUtil/Database/QueryInterfaceRequest+Utilities.swift
#	SessionNotificationServiceExtension/NotificationServiceExtension.swift
#	SessionUtilitiesKit/Database/Storage.swift
#	SessionUtilitiesKit/Utilities/Bencode.swift
#	SignalUtilitiesKit/Utilities/AppSetup.swift
2 years ago
Morgan Pretty c77d7ecda1 [WIP] Refactored dependency access to be more generic 2 years ago
Morgan Pretty f1075e9123 Started adding logic and unit tests for group creation
Reworked the config store to better support different types of config objects
Added the logic to create a group (not final just yet)
2 years ago
Ryan Zhao 9e1f68380a Merge branch 'dev' into disappearing-message-redesign 2 years ago
Morgan Pretty 9c9fb09254 Merge remote-tracking branch 'upstream/dev' into feature/blinded-message-request-setting
# Conflicts:
#	SessionMessagingKit/Configuration.swift
2 years ago
Morgan Pretty d863004e6d Added a setting to control community message request polling
Added logic to broadcast the community message request acceptance to SOGS so we can communicate it to message request senders
Fixed an issue where database setting changes wouldn't trigger a live update on a settings screen
Fixed an issue where some setting toggles wouldn't animate the state change
Fixed a rarw force-unwrap crash
2 years ago
Morgan Pretty 5285d81177 Fixed a few more PN logic issues
Sorted out some more threading issues
Removed a redundant SyncPushTokensJob run
Fixed an issue where the NotificationServiceExtension could incorrectly setup the database before setting up it's context
Fixed a few warnings
Removed a bunch of legacy code
Refactored the MainAppContext from Objective C into Swift
2 years ago
Morgan Pretty 63be502434 Merge remote-tracking branch 'upstream/dev' into disappearing-message-redesign
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionSnodeKit/Networking/SnodeAPI.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionUtilitiesKit/General/Dictionary+Utilities.swift
#	SessionUtilitiesKit/JobRunner/JobRunner.swift
2 years ago
Morgan Pretty a41f1c1366 Fixed the broken tests
Cleaned up the Dependencies so that tests can run synchronously without having to custom set queues as much
Sorted out the crypto and network dependencies to avoid needing weird dependency inheritance
Fixed the flaky tests so they are no longer flaky
Fixed some unexpected JobRunner behaviours
Updated the CI config to use a local build directory for derivedData (now works with build tweaks)
2 years ago
Ryan Zhao 9ae6d2f506 Merge branch 'updated-user-config-handling' into disappearing-message-redesign 2 years ago
Morgan Pretty 53a5db0ea5 Fixed a number of issues found during internal testing
Added copy for an unrecoverable startup case
Added some additional logs to better debug ValueObservation query errors
Increased the pageSize to 20 on iPad devices (to prevent it immediately loading a second page)
Cleaned up a bunch of threading logic (try to avoid overriding subscribe/receive threads specified at subscription)
Consolidated the 'sendMessage' and 'sendAttachments' functions
Updated the various frameworks to use 'DAWRF with DSYM' to allow for better debugging during debug mode (at the cost of a longer build time)
Updated the logic to optimistically insert messages when sending to avoid any database write delays
Updated the logic to avoid sending notifications for messages which are already marked as read by the config
Fixed an issue where multiple paths could incorrectly get built at the same time in some cases
Fixed an issue where other job queues could be started before the blockingQueue finishes
Fixed a potential bug with the snode version comparison (was just a string comparison which would fail when getting to double-digit values)
Fixed a bug where you couldn't remove the last reaction on a message
Fixed the broken media message zoom animations
Fixed a bug where the last message read in a conversation wouldn't be correctly detected as already read
Fixed a bug where the QuoteView had no line limits (resulting in the '@You' mention background highlight being incorrectly positioned in the quote preview)
Fixed a bug where a large number of configSyncJobs could be scheduled (only one would run at a time but this could result in performance impacts)
2 years ago
Ryan Zhao afb456b710 Merge branch 'updated-user-config-handling' into disappearing-message-redesign 2 years ago
Morgan Pretty 5d88db7a8a Merge remote-tracking branch 'origin/feature/tweak-profile-modal-ui' into feature/updated-user-config-handling
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Calls/Call Management/SessionCall.swift
#	Session/Conversations/ConversationVC.swift
#	Session/Conversations/Input View/MentionSelectionView.swift
#	Session/Conversations/Message Cells/VisibleMessageCell.swift
#	Session/Settings/SettingsViewModel.swift
#	Session/Shared/Views/SessionAvatarCell.swift
#	Session/Shared/Views/SessionCell+AccessoryView.swift
#	SessionUIKit/Components/ConfirmationModal.swift
#	SessionUIKit/Components/PlaceholderIcon.swift
#	SignalUtilitiesKit/Profile Pictures/ProfilePictureView.swift
2 years ago
Morgan Pretty 2bb68ccbcf Fixed a few issues found during QA
Fixed an issue where you could be left on the settings screen after deleting/leaving a conversation
Fixed an issue where deleting the last contact/group/community from a device would result in linked devices not deleting the relevant conversation
Fixed an issue where leaving a group created a race condition where linked devices wouldn't remove the group
2 years ago
ryanzhao 86705d88e3 Merge branch 'feature/updated-user-config-handling' into disappearing-message-redesign 2 years ago
Morgan Pretty 9799297e15 Fixed build issues from merge 2 years ago
Morgan Pretty 534343f8b0 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session/Closed Groups/NewClosedGroupVC.swift
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/ConversationVC.swift
#	Session/Conversations/ConversationViewModel.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Home/GlobalSearch/GlobalSearchViewController.swift
#	Session/Home/HomeVC.swift
#	Session/Home/New Conversation/NewDMVC.swift
#	Session/Media Viewing & Editing/GIFs/GifPickerViewController.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
#	Session/Settings/BlockedContactsViewController.swift
#	Session/Settings/NukeDataModal.swift
#	Session/Settings/SettingsViewModel.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionUIKit/Components/ConfirmationModal.swift
2 years ago
Morgan Pretty 9c8653aa21 Updated the profile picture management UI
Updated the UI to use a modal
Added the ability to remove the profile picture
2 years ago
Morgan Pretty be7881ad2e Merge remote-tracking branch 'origin/feature/updated-user-config-handling' into disappearing-message-redesign
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC.swift
#	Session/Conversations/ConversationViewModel.swift
#	Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Conversations/Views & Modals/ConversationTitleView.swift
#	Session/Notifications/AppNotifications.swift
#	Session/Settings/NukeDataModal.swift
#	Session/Shared/SessionTableViewModel.swift
#	Session/Shared/Views/SessionCell.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Models/Contact.swift
#	SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
#	SessionMessagingKit/Messages/Control Messages/ClosedGroupControlMessage.swift
#	SessionMessagingKit/Messages/Message.swift
#	SessionMessagingKit/Messages/Visible Messages/VisibleMessage.swift
#	SessionMessagingKit/Protos/Generated/SNProto.swift
#	SessionMessagingKit/Protos/Generated/SessionProtos.pb.swift
#	SessionMessagingKit/Protos/SessionProtos.proto
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
#	SessionMessagingKitTests/_TestUtilities/TestOnionRequestAPI.swift
#	SessionSnodeKit/Models/SnodeAPIEndpoint.swift
#	SessionSnodeKit/SnodeAPI.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionUtilitiesKit/General/Features.swift
2 years ago
Morgan Pretty 5e3dd3c731 Merge remote-tracking branch 'upstream/dev' into disappearing-message-redesign
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/Settings/ThreadDisappearingMessagesViewModel.swift
#	Session/Shared/Views/SessionCell+AccessoryView.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Models/Interaction.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionUtilitiesKit/Database/Models/Job.swift
2 years ago
Morgan Pretty 2983086837 Fixed an accessibility regression 2 years ago
Morgan Pretty f4d6babca2 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Podfile.lock
#	Session.xcodeproj/project.pbxproj
#	Session/Closed Groups/EditClosedGroupVC.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Home/HomeVC.swift
#	Session/Home/HomeViewModel.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
#	Session/Shared/FullConversationCell.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Models/SessionThread.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+ClosedGroups.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionUIKit/Utilities/UIContextualAction+Theming.swift
#	SessionUtilitiesKit/Database/Models/Job.swift
#	SessionUtilitiesKit/General/Dictionary+Utilities.swift
#	SessionUtilitiesKit/JobRunner/JobRunner.swift
2 years ago
ryanzhao 7f24097343 update leave group copy in conversation settings view 2 years ago
Morgan Pretty c80b6c720e Fixed the QA issues and a few other bugs
Updated the convoInfoVolatile to only ever set `last_read` to the maximum between the current and updated values
Fixed an issue where deleting the Note to Self and One-to-one conversations wouldn't reset the 'pinnedPriority' value
Fixed an issue with updating legacy group members and losing admin status
Fixed an issue where receiving a 'NEW' legacy group control message could revert legacy group changes
Fixed a bug where the open group suggestion grid could have broken positioning depending on the number of items
Fixed a bug where the UI wouldn't update correctly when network access was lost
Fixed a fun bug where one-to-one conversations could reappear after deletion because a new snode was polled and the latest (locally deleted) message was received again
Fixed some incorrect accessibility values
2 years ago
Morgan Pretty 1c7eaed8b6 Added logic to update cached expiry after config TTL extension
Updated the UpdateExpiryResponse signature verification logic
Another couple of accessibility label/id tweaks
2 years ago
ryanzhao cea2e1522d WIP: make group leaving a job 2 years ago
Morgan Pretty 66fd2d4ff8 Finished off a few remaining bits and pieces
Added the 'outdated client' warning banner
Added a unit test to validate the 'group(by:)' method maintains ordering
Added an error when trying to message a non-standard session id directly
Removed the "hide" logic for groups (don't want it)
Removed some unneeded thread fetching
Updated the logic to use the 'lastHash' when fetching config messages
Updated the logic to use the libSession value restrictions instead of hard-coded values
Fixed an issue where members weren't getting removed from legacy groups
2 years ago
Morgan Pretty 972519d7d9 Fixed a couple of build issues 2 years ago