Commit Graph

835 Commits (c02c3abd735de8b98a035b01cff2eb7cc28444ab)

Author SHA1 Message Date
Morgan Pretty 4330a40f6f Started working on integrating the updated push APIs
Updated the PushNotificationAPI to be more consistent with the SnodeAPI and OpenGroupAPI structures
Updated the logic so if the database key can't be retrieved the app will no longer throw a fatalError (now just fail to initialise Storage and rely on the App/Extensions to properly handle this case)
Fixed a couple of bugs where the share extension wouldn't populate correctly
1 year ago
ryanzhao eae5d463e6 add existing scripts to project 1 year ago
ryanzhao 86705d88e3 Merge branch 'feature/updated-user-config-handling' into disappearing-message-redesign 1 year ago
Morgan Pretty 9799297e15 Fixed build issues from merge 1 year 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
1 year ago
Morgan Pretty 03d879804f Increased build and version numbers 1 year 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
1 year 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
1 year ago
Morgan Pretty 2983086837 Fixed an accessibility regression 1 year ago
Morgan Pretty 0e1dea8f62 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
1 year ago
Morgan Pretty 6fd574916b Fixed a few bugs and build libSession-util from source
Added libSession-util as a submodule and wired into build
Updated the logic to run migrations when returning from the background as well (since we will have feature-flag controlled migrations it's possible for a "new" migration to become available at this point)
Fixed an issue where the 'Note to Self' conversation could appear when linking a device for a new user
Fixed an issue where the app would process the ConfigSyncJob before completing onboarding
1 year ago
Morgan Pretty 11b4c82bc3 Updated permission descriptions to appease Apple 1 year ago
Morgan Pretty 6832b788d9 Increase build number 1 year ago
Morgan Pretty 27e494dcb5 Increased build and version numbers 1 year ago
Morgan Pretty ad3e53d235 Fixed issues found during QA
Fixed a crash when removing a member from a group
Fixed an issue with accepting a message request breaking the UI
Fixed an issue where the mute optimistic update wasn't working
1 year ago
Morgan Pretty fa39b5f61c Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Calls/CallVC.swift
#	Session/Conversations/Message Cells/Content Views/DocumentView.swift
#	Session/Conversations/Settings/OWSMessageTimerView.m
#	SessionMessagingKit/File Server/FileServerAPI.swift
#	SessionMessagingKit/Messages/Visible Messages/VisibleMessage.swift
#	SessionMessagingKit/Open Groups/OpenGroupManager.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
#	SessionMessagingKit/Shared Models/MessageViewModel.swift
#	SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
#	SessionSnodeKit/SnodeAPI.swift
#	SessionUtilitiesKit/Networking/HTTP.swift
#	SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentTextToolbar.swift
1 year ago
Morgan Pretty b5004f38df Increased build and version numbers 1 year ago
ryanzhao 73f5608f16 Merge branch 'dev' into message-and-image-info 1 year ago
ryanzhao 6699e7ea0d Merge branch 'dev' into message-and-image-info 1 year ago
Morgan Pretty 2a693df4c1 Updated the seed node certificates and removed the workaround 1 year ago
Morgan Pretty b270133f68 Fixed a couple of issues with seed node requests
Updated the seed node certificates to use the new 10 year ones
Fixed an issue where multiple seed node requests could be triggered at once
Increased the version & build numbers
1 year ago
ryanzhao cac8d22e0b Merge branch 'dev' into message-and-image-info 1 year 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
1 year ago
Morgan Pretty fbdb033365 Increased build & version numbers 1 year ago
ryanzhao 06172777a5 Merge branch 'dev' into message-and-image-info 1 year ago
Morgan Pretty 4801ebd7c2 Merge remote-tracking branch 'upstream/dev' into feature/job-runner-unit-tests
# Conflicts:
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Jobs/Types/AttachmentDownloadJob.swift
#	SessionMessagingKit/Jobs/Types/AttachmentUploadJob.swift
#	SessionMessagingKit/Jobs/Types/MessageReceiveJob.swift
#	SessionMessagingKit/Jobs/Types/MessageSendJob.swift
#	SessionMessagingKit/Jobs/Types/NotifyPushServerJob.swift
#	SessionMessagingKit/Jobs/Types/SendReadReceiptsJob.swift
#	SessionUtilitiesKit/JobRunner/JobRunner.swift
1 year ago
Morgan Pretty ffdc59b704 Fixed a few issues with the JobRunner
Updated the JobRunner to support dependency injection
Updated the DataExtractionNotification to take a 'sentTimestamp' when created to reduce the chance for duplicates being sent
Fixed an issue where checking current and pending jobs wasn't including blocking jobs
Fixed an issue where the 'hasPendingOrRunningJob' check didn't actually include running jobs
Fixed some odd behaviours with job dependencies
Fixed an incorrect failure count check
1 year ago
ryanzhao 26ca3541ce Merge branch 'dev' into message-and-image-info 1 year ago
Morgan Pretty a7af1ca768 Started laying the ground work for unit testing the JobRunnner
Starting injecting dependencies for the JobRunner
Turned the JobRunner into a singleton instance
1 year ago
Morgan Pretty fde34a6c45 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling 1 year ago
Morgan Pretty 5fdfd6df3b Fixed issues raised during QA
Fixed a bug where the legacy group invitation was getting sent to the wrong location
Fixed a bug where outgoing typing indicators would be sent to blocked contacts
Fixed a bug where the call button was visible for blocked contacts
Fixed a bug where read receipts could be sent to blocked contacts
Fixed a bug where the conversation nav buttons wouldn't get updated correctly in some cases
Fixed a bug where we could incorrectly include the current user in the contacts syncing
Fixed a bug where the initial state of the Note to Self conversation wasn't getting synced
Fixed a bug where the Note to Self conversation could get removed
Fixed a bug with where the conversation title would be misaligned in some cases
Fixed a bug where link previews and quotes with images weren't getting sent correctly
Fixed a crash when removing a user from a legacy group
Added some missing accessibility info
Updated the code to ensure the user is kicked from the conversation if it's deletion gets synced while it's open
Updated the conversation empty state copy
1 year ago
ryanzhao 620d69ada9 Merge branch 'dev' into conversation-swipe-actions 1 year ago
Morgan Pretty 65e7009b0a Updated build and version numbers 1 year ago
Morgan Pretty a8c4c3eb76 Updated migration numbers as a result from merge and bug fixes
Updated the CallVC to support an animated profile picture
Fixed a button layout issue with the landing screen
Fixed a bug where the input view could appear above the call UI when the app returns to the foreground
Fixed a bug where the push notification registration could incorrectly get triggered during onboarding when recovering from an onboarding crase
1 year ago
Morgan Pretty 9ddfbefd72 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SessionMessagingKit/Configuration.swift
1 year ago
ryanzhao 2e7325ce9a minor fix 1 year ago
ryanzhao 75d60f9d85 Merge branch 'dev' into conversation-swipe-actions 1 year ago
ryanzhao 723d8a79e1 bump up build number 1 year ago
ryanzhao 6f5052c0da WIP: make group leaving a job 1 year ago
ryanzhao 4c3a9e8cc1 fix FTS table and global search 1 year ago
Morgan Pretty 1334a64031 Removed usages of Box.KeyPair, removed a TODO 1 year ago
Morgan Pretty d463a459a2 Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling 1 year 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
1 year ago
ryanzhao 34d41d7d40 Merge branch 'dev' into conversation-swipe-actions 1 year ago
ryanzhao 4af96fb841 update build number 1 year ago
Morgan Pretty 7d47a36f9f Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/Settings/ThreadSettingsViewModel.swift
#	Session/Home/Message Requests/MessageRequestsViewController.swift
#	Session/Shared/Views/SessionAvatarCell.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ClosedGroups.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
1 year ago
Ryan Zhao b0cdce8acf Merge branch 'dev' into conversation-swipe-actions 1 year ago
Ryan Zhao 600637ec78 Merge branch 'dev' into disappearing-message-redesign 1 year ago
Ryan Zhao 2f909fbb55 Merge branch 'dev' into message-and-image-info 1 year ago
Ryan Zhao 37962fa071 update build number 1 year ago
Ryan Zhao 779e199d7d update build number 1 year ago
Morgan Pretty e28b4b4531 Fixed a number of bugs with the config handling
Added a number of feature flag checks to config updates
Added legacy group disappearing message timer handling
Updated the string linter to clean up the build logs a little
Split the initial config dump generation into it's own migration so it can run the launch after the feature flag is toggled
Fixed a few issues with the initial config dump creation
Fixed an issue where "shadow" conversations would be left in the database by opening a thread and never sending a message
Fixed a bug where duplicate members could be added to legacy groups
Fixed a bug with using animated images for the avatar
Fixed a bug where avatar images which were already on disk could be re-downloaded
1 year ago
Morgan Pretty 8eed08b5b4 Updated to the latest lib, started handling UserGroups
Added unit tests for the UserGroup config type
Updated the logic to use the 'pinnedPriority' and deprecated 'isPinned' (not sorting yet but using the value)
Updated the code to use the libSession community url parsing instead of custom parsing
Fixed an issue where initialising Data with a libSession value wasn't returning null when the data had no actual value
Fixed an issue where the OpenGroupPoller could user an incorrect failure could when handling poll responses
Fixed the UpdateExpiryRequest signature
1 year ago
Ryan Zhao 2aee7b8c05 Merge branch 'dev' into conversation-swap-action 1 year ago
Ryan Zhao 9d11cf87e0 update build number 1 year ago
Ryan Zhao 9112231f66 WIP 1 year ago
Ryan Zhao bf5f927ad0 Merge branch 'dev' into message-and-image-info 1 year ago
ryanzhao b3378992ed WIP: feat: modify conversation swap actions 1 year ago
Ryan Zhao b4f44d43e8 Merge branch 'dev' into disappearing-message-redesign 1 year ago
Ryan Zhao 52ba016b80 bump up version & build number 1 year ago
Morgan Pretty 742c4a161f Merge remote-tracking branch 'upstream/dev' into feature/updated-user-config-handling
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/ConversationViewModel.swift
#	Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
#	Session/Media Viewing & Editing/GIFs/GiphyAPI.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/Notifications/AppNotifications.swift
#	Session/Notifications/SyncPushTokensJob.swift
#	Session/Notifications/UserNotificationsAdaptee.swift
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Models/Interaction.swift
#	SessionMessagingKit/Database/Models/SessionThread.swift
#	SessionMessagingKit/Jobs/Types/MessageReceiveJob.swift
#	SessionMessagingKit/Jobs/Types/MessageSendJob.swift
#	SessionMessagingKit/Jobs/Types/SendReadReceiptsJob.swift
#	SessionMessagingKit/Messages/Message.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ReadReceipts.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionMessagingKit/Shared Models/MentionInfo.swift
1 year ago
Morgan Pretty f30b383bb8 Updated to the latest version of libSession-util
Updated the SharedConfigMessage type to have a TTL of 30 days
Updated the SnodeAPI to have a 'poll' method to be more consistent with the OpenGroupAPI (it also does multiple things now so is cleaner)
Added logic to limit the number of config messages to be retrieved per poll
Added the 'ValidatableResponse' protocol to standardise SnodeAPI response validation
Added the libSession version to the logs
Fixed an issue where the user profile pic wouldn't get synced correctly due to memory going out of scope
Fixed some threading issues
Refactored the thread variants to follow the updated terminology (will think about refactoring other code areas later)
Cleaned up the Combine error handling
Started fixing broken unit tests
1 year ago
Morgan Pretty e4d6400375 Merge remote-tracking branch 'upstream/dev' into fix/remaining-reachability-oddities
# Conflicts:
#	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
1 year ago
Morgan Pretty 08b1e9a131 Started caching pending ReadReceipt messages to resolve an edge-case
Fixed an issue where read receipts could be sent for already read messages
Fixed an issue where the read state change might not update the UI
1 year ago
ryanzhao 300eac51c0 Merge branch 'dev' into disappearing-message-redesign 1 year ago
ryanzhao efc9790a9a Merge branch 'dev' into message-and-image-info 1 year ago
Ryan Zhao 2f8ac7deaf update build & version number 1 year ago
Ryan Zhao 494e12adb6 Merge branch 'dev' into disappearing-message-redesign 1 year ago
ryanzhao 092864f918 Merge branch 'dev' into message-and-image-info 1 year ago
Morgan Pretty 617eae6858 Increased build and version numbers 1 year ago
Morgan Pretty 345b693225 Fixed build issues, bugs, added unit tests and added the ConvoInfoVolatile handling
Added the unit tests for the ConvoInfoVolatile
Added icons to the swipe actions
Updated jobs to be able to be prioritised (and added priorities to the launch jobs to avoid some odd behaviours)
Fixed some build issues resulting from merging
Fixed an issue with the open group pubkey encoding
Fixed an issue where an imageView could get it's image set on a background thread
Fixed a bug where the swipe actions weren't getting theming applied when the theme changed
Fixed a bug where scheduling code after the next db transaction completes couldn't be nested (resulting in code not running)
Fixed a bug where the PagedDataObserver might not notify of unobserved changes if they reverted previous unobserved changes
Fixed a couple of incorrect SQL ordering use cases (was overriding instead of appending ordering)
Fixed an issue where the app would re-upload the avatar every launch (only affected this branch)
Fixed an issue where the home screen wouldn't update group avatars when their profile data changed
1 year ago
ryanzhao 78cea3ac29 implement carousel view delegate 1 year ago
ryanzhao 723beed101 Merge branch 'dev' into message-and-image-info 1 year ago
ryanzhao 54ef07402b update the build number 1 year ago
Ryan Zhao 838969efa6 WIP: encapsulate carousel view 1 year ago
Ryan Zhao d1aacf24c2 Merge branch 'dev' into message-and-image-info 1 year ago
ryanzhao 41f1b14066 bump up version & build number 1 year ago
Morgan Pretty 07046db4b6 Updated to the latest libSession, fixed a few bugs
Added the logic to sync the last read state for a conversation
Added the legacyClosedGroup thread variant
Updated the config handling to be able to update the 'mergeResult' and require a dump/push due to local changes
Fixed an issue where the name on the CallVC could go off the screen
Fixed an issue where OpenGroup info could sometimes incorrectly get deleted
Fixed an issue where the ConfirmationModal on a SessionTableViewController wouldn't trigger it's action
Fixed an issue where the config handling could incorrectly trigger a contacts update when there were no changes
1 year ago
ryanzhao 3f33caf91a wip: carousel view 1 year ago
ryanzhao 8a2264e95f wip: add media preview view 1 year ago
Ryan Zhao 0c91f3e258 clean 1 year ago
Ryan Zhao 94456edd2e wrap up media info container view 1 year ago
ryanzhao 107231d5db WIP: media info screen 1 year ago
ryanzhao 7515e81b4b WIP: add message info view to contextMenuVC 1 year ago
ryanzhao 4c366dedc2 clean up SyncedExpiries 2 years ago
Morgan Pretty 8f3dcbc6be Sorted out a bunch of the config syncing logic
Updated the onboarding to attempt to retrieve the current user profile config and skip display name collection if it already exists
Updated the logic to get the snode pool and build paths immediately on launch even if the user hasn't been created yet (faster onboarding)
Removed the iOS-specific concurrent dual snode '/store' behaviour
Cleaned up the profile updating logic
Fixed an issue where the pollers could end up deadlocking the main thread if too many tried to start concurrently
2 years ago
Ryan Zhao f736e4709b refactor: make sync expiries to a job & only save sync message server hash for outgoing messages 2 years ago
Morgan Pretty 893967e380 Updated to the latest config lib and added it's unit tests 2 years ago
Morgan Pretty 174725c7fd Removed unneeded imports of libraries to understand usage
Refactored some 3rd-part standard encryption to use CryptoKit
Removed the PromiseKit pod
Fixed the broken tests
2 years ago
Morgan Pretty f1e9412c7a Added in missing code changes unrelated to closed groups rebuild 2 years ago
Morgan Pretty 70ff2b49f0 Fixed the broken tests and resolved some warnings
Stopped migration logs from appearing in unit tests

# Conflicts:
#	Session/Settings/RemoveUsersModal.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
2 years ago
Morgan Pretty ca4ce52402 Fixing the broken unit tests, resolved the remaining TODOs
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SessionMessagingKitTests/Open Groups/Models/BatchRequestInfoSpec.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
#	SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
#	SessionMessagingKitTests/_TestUtilities/TestOnionRequestAPI.swift
#	SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
#	SessionUtilitiesKit/Networking/BatchResponse.swift
#	SessionUtilitiesKitTests/Networking/BatchResponseSpec.swift
2 years ago
Morgan Pretty 6970ff22cc Refactored the remaining references to PromiseKit
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Media Viewing & Editing/PhotoCapture.swift
#	SessionMessagingKit/Jobs/Types/GarbageCollectionJob.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
#	SessionMessagingKit/Utilities/Promise+Utilities.swift
#	SessionShareExtension/ShareVC.swift
#	SessionShareExtension/ThreadPickerVC.swift
#	SessionSnodeKit/OnionRequestAPI+Encryption.swift
#	SessionSnodeKit/OnionRequestAPI.swift
#	SessionUtilitiesKit/Database/Storage.swift
#	SessionUtilitiesKit/Networking/HTTP.swift
2 years ago
Morgan Pretty 8ac6b25ced Further refactoring work
Refactored usages and removed AFNetworking
Updated the media screens to use Combine

# Conflicts:
#	Session/Closed Groups/GroupMembersViewModel.swift
#	Session/Media Viewing & Editing/GIFs/GifPickerCell.swift
#	Session/Media Viewing & Editing/GIFs/GiphyAPI.swift
#	Session/Media Viewing & Editing/PhotoCapture.swift
2 years ago
Morgan Pretty c9fdee9f24 Work on the PromiseKit refactor
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Home/Message Requests/MessageRequestsViewModel.swift
#	Session/Notifications/AppNotifications.swift
#	Session/Notifications/PushRegistrationManager.swift
#	Session/Notifications/SyncPushTokensJob.swift
#	Session/Notifications/UserNotificationsAdaptee.swift
#	Session/Settings/BlockedContactsViewModel.swift
#	Session/Settings/NukeDataModal.swift
#	Session/Settings/SettingsViewModel.swift
#	Session/Utilities/BackgroundPoller.swift
#	SessionMessagingKit/Database/Models/ClosedGroup.swift
#	SessionMessagingKit/File Server/FileServerAPI.swift
#	SessionMessagingKit/Open Groups/OpenGroupAPI.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ClosedGroups.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+UnsendRequests.swift
#	SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+ClosedGroups.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/ClosedGroupPoller.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
#	SessionMessagingKit/Utilities/ProfileManager.swift
#	SessionSnodeKit/Networking/SnodeAPI.swift
#	SessionSnodeKit/OnionRequestAPI.swift
#	SessionUtilitiesKit/Networking/HTTP.swift
2 years ago
Morgan Pretty 1345e89809 Further config util logic
Removed the usage of the OWSAES256Key (using CryptoKit and raw data instead)
Removed the pre-compiled headers to speed up builds with minor changes (explicit imports instead)

# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SessionMessagingKit/Database/Models/ClosedGroup.swift
#	SessionMessagingKit/Protos/Generated/SNProto.swift
#	SessionMessagingKit/Protos/Generated/SessionProtos.pb.swift
#	SessionMessagingKit/Protos/SessionProtos.proto
#	SessionMessagingKit/Sending & Receiving/MessageSender.swift
#	SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
#	SessionMessagingKit/Utilities/ProfileManager.swift
#	SessionSnodeKit/Models/DeleteAllMessagesRequest.swift
#	SessionSnodeKit/Models/GetMessagesRequest.swift
#	SessionSnodeKit/Models/SendMessageRequest.swift
#	SessionSnodeKit/Types/SnodeAPINamespace.swift
2 years ago
Morgan Pretty f721178b49 Added in a migration to create the user profile config and trigger a sync
# Conflicts:
#	Session.xcodeproj/project.pbxproj
2 years ago
Morgan Pretty d03d2ce8ab Fixed remaining issues, cleaned up memory & logic
# Conflicts:
#	Session.xcodeproj/project.pbxproj
2 years ago
Morgan Pretty edf3bde573 Started working on the integration
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	SessionMessagingKit/Configuration.swift
#	SessionMessagingKit/Database/Migrations/_012_AddClosedGroupInfo.swift
#	SessionMessagingKit/Database/Migrations/_013_AutoDownloadAttachments.swift
#	SessionMessagingKit/Open Groups/Models/SOGSBatchRequest.swift
#	SessionSnodeKit/OnionRequestAPI.swift
#	SessionSnodeKit/SSKDependencies.swift
#	SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
#	SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
#	SessionTests/Settings/NotificationContentViewModelSpec.swift
#	SessionUtilitiesKit/Networking/BatchResponse.swift
2 years ago
Ryan Zhao 245682b40d feat: add database column for version detecting 2 years ago
ryanzhao 3b08339e0b feat: add column for contact using outdated client in database 2 years ago
ryanzhao eeb0f4e47c Merge branch 'dev' into disappearing-message-redesign 2 years ago
Morgan Pretty 8abe2a1d74 Increased the version numbers for release 2 years ago
ryanzhao 137b6c3a05 WIP: subtitle for session tableview vc 2 years ago
Ryan Zhao 8164d4400d feat: make the carousel looping infinitely 2 years ago
Ryan Zhao 715b4f6d4d add footer title for group disappearing messages setting 2 years ago
ryanzhao ff813e4376 update build number 2 years ago
ryanzhao 9d71ae141b bump up build & version number 2 years ago
ryanzhao 89a5739883 send sync expiries 2 years ago
ryanzhao fd14c50f61 add sync expires message and update protobuf 2 years ago
ryanzhao 387b5f953b apply disappearing message config to sync messages 2 years ago
ryanzhao f855e71d61 Merge branch 'dev' into disappearing-message-redesign 2 years ago
Morgan Pretty d740fe32c2 Added some copy to explain disabled buttons for message requests 2 years ago
Morgan Pretty c934415355 General bug fixing
Fixed an issue where the database could get suspended if the app is launched when the app is doing a background fetch
Fixed an incorrectly localized string
Fixed an issue where the author name on a message didn't have it's width constrained
Fixed a bug where the conversation message list inset wasn't getting updated properly in some cases
Tweaked some logic in the OpenGroupPoller when running from the background to try and close some of the odd cases
2 years ago
ryanzhao 8377da0876 lastChangeTimestamp migration 2 years ago
ryanzhao 1a98b0be62 Merge branch 'dev' into disappearing-message-redesign 2 years ago
Ryan Zhao d0f790421a WIP: disappearing message settings ui 2 years ago
Morgan Pretty 8907a33675 Fixed the broken unit tests
Increased the build & version numbers
2 years ago
Morgan Pretty 89df1261e3 Added a method to allow safer database inserts
Fixed an issue where the app settings were updating immediately making them seem to
Updated GRDB to version 6.1 and SQLCipher to 4.5.2
Added a method which allows for inserting into the database while omitting columns which exist in the object but not in the database (so allow for old migrations to run with less issues)
Updated all the migrations to use the migration safe insert method
Removed some ObjC support extension functions
2 years ago
Ryan Zhao 4e2eab9975 add localised string and paged scrollview 2 years ago
Morgan Pretty d8fd3b35b4 Theming tweaks and bug fixes
Made a tweak to prevent some odd looking keyboard transitions when going to conversation settings
Updated the PagedDatabaseObserver to not call 'onChangeUnsorted' on the main thread (now we can generate the changeset on the background thread so there is less main thread work)
Fixed an issue where the most recently received message from the swarm could be removed from the swarm yet the app would still poll for it, resulting in the swarm always returning the oldest possible messages until the user sends a new one-to-one message
Fixed an issue where the initial scroll offset could be incorrect due to certain message types
Fixed an issue where the title view inside a conversation could jump when pushing to the conversation settings screen
Refactored a couple of ObjC functions to Swift as they were crashing (due to memory allocation?) hopefully this will fix it
Tweaked some DispatchQueue priorities to ensure PagedDatabaseObserver loading is prioritised
Updated buttons to use a standard convention for highlighted states
Updated the new conversation button to follow the new highlighted state convention
2 years ago
Morgan Pretty 73bd4011a4 Increased build number 2 years ago
Morgan Pretty 5a758724b3 Made a few last minute tweaks and fixes
Updated a couple more translations
Updated the copy for the member count in communities
Deleted some more unused code
Fixed up another RTL issue
2 years ago
Morgan Pretty da1833a5f1 Increased build number 2 years ago
Morgan Pretty 0af00feed9 Added the version footer back to the settings screen 2 years ago
Morgan Pretty fc0ac730d0 Bumped build number 2 years ago
Morgan Pretty c33b555c3c Translations, better RTL support and minor animation fix
Added some better support for right-to-left languages
Added updated Farsi translations
Fixed a minor transition glitch
2 years ago
Morgan Pretty 47083cca38 Increased build and version numbers 2 years ago
Morgan Pretty 27e0981913 Added toast and info message deletion, fixed layout issues & unit tests
Added a toast when hitting the emoji reacts rate limit
Added the ability to delete info messages
Fixed some odd layout behaviours with the VisibleMessageCell
Fixed some layout issues with reactions
Removed some unneeded custom code
2 years ago
Morgan Pretty db54bf657e Fixed remaining bugs
Split the date out of the VisibleMessageCell into it's own cell to clean up deletion/insertion animations
Fixed a layout issue with the Open Group
Fixed an issue where the QRCode tinting wasn't working on iOS 16
Implemented a swift version of an ObjC function
2 years ago
Morgan Pretty 0c09f2bfc5 Fixed a few more QA issues, added a minor feature
Updated the document download UI
Minor font tweaks to match settings more closely
Added profile data to the MessageRequestResponse
Fixed the broken tests
2 years ago
Morgan Pretty 6eeb0ec7ac Fixed most of the styling issues raised during QA
Copy tweak
Added a toast when copying the sessionId or group URL (fixes to the toast UI as well)
Fixed the new conversation screen styling
Fixed the styling of the various attachment screens
Updated the buttons on the attachment screen to behave like the input view buttons
Removed the old OWSNavigationBar and OWSNavigationController (logic was buggy and not actually needed in most cases)
2 years ago
Morgan Pretty 37124c2185 Updated the alerts to use the custom styled ones
Removed some more unused code
Moved around some files to make them more reusable
2 years ago
Morgan Pretty 40109e0bea Cleaned up the config-based table view controller to be more reusable
Updated the settings screens to have the "rounded group" styling
Added a "loading conversations" label to the Message Requests screen before the conversations load
Removed the legacy UserCell (replaced with the more reusable 'SessionCell')
Renamed a few things to make them more generic and reusable
2 years ago
Morgan Pretty f98e2a157e Added rounding to the settings and updated the SettingVC to use the config approach
Removed some unused code
2 years ago
Morgan Pretty 8109a326cf Merge remote-tracking branch 'upstream/dev' into feature/theming
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Closed Groups/NewClosedGroupVC.swift
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/Message Cells/CallMessageCell.swift
#	Session/Conversations/Views & Modals/JoinOpenGroupModal.swift
#	Session/Home/HomeVC.swift
#	Session/Home/New Conversation/NewDMVC.swift
#	Session/Home/NewConversationButtonSet.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/Open Groups/JoinOpenGroupVC.swift
#	Session/Open Groups/OpenGroupSuggestionGrid.swift
#	Session/Settings/SettingsVC.swift
#	Session/Shared/BaseVC.swift
#	Session/Shared/OWSQRCodeScanningViewController.m
#	Session/Shared/ScanQRCodeWrapperVC.swift
#	Session/Shared/UserCell.swift
#	SessionMessagingKit/Configuration.swift
#	SessionShareExtension/SAEScreenLockViewController.swift
#	SessionUIKit/Style Guide/Gradients.swift
#	SignalUtilitiesKit/Media Viewing & Editing/OWSViewController+ImageEditor.swift
#	SignalUtilitiesKit/Screen Lock/ScreenLockViewController.m
2 years ago
Morgan Pretty 1045e79729 Merge remote-tracking branch 'upstream/dev' into menu-redesign
# Conflicts:
#	Session.xcodeproj/project.pbxproj
2 years ago
Morgan Pretty f7fd15dae0 Finished removing usages to non-theme colour variables
Updated theming throughout
Fixed a couple of bugs with the media gallery
2 years ago
Morgan Pretty a59d1b8153 Fixed a few bugs found during regression testing
Increased version & build numbers for release
Fixed a bug where the closed group info messages might not include names for members added/removed when the profile was unknown
Fixed a bug where removing members from closed groups wasn't showing an info message correctly
Fixed a minor layout issue in the CallMessageCell
2 years ago
Ryan Zhao 30e0e40ffa feat: disable typing and message requests in open groups if you don’t have "write" permission 2 years ago
Morgan Pretty 1bc6b0bdba Merge remote-tracking branch 'upstream/dev' into feature/theming
# Conflicts:
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/ConversationVC.swift
#	Session/Conversations/ConversationViewModel.swift
#	Session/Conversations/Message Cells/VisibleMessageCell.swift
#	Session/Home/HomeVC.swift
#	Session/Home/Message Requests/MessageRequestsViewController.swift
#	Session/Media Viewing & Editing/MediaTileViewController.swift
#	Session/Meta/AppDelegate.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/Onboarding/LandingVC.swift
#	SessionMessagingKitTests/_TestUtilities/MockGeneralCache.swift
2 years ago
RyanZhao cfecc71163
Merge pull request #665 from RyanRory/add-silence-audio
Fix notification sound None not working
2 years ago
Morgan Pretty 7715c5ea09 Did some more styling and fixed a few UI bugs
Fixed a bug where the time label would no longer appear in the context menu
Fixed a bug where the tile label in the context menu could be clipped
Tweaked the context menu appearance animation to look less jumpy when at the edges of the screen
2 years ago
ryanzhao b4d29c58c4 Merge branch 'dev' into menu-redesign 2 years ago
Morgan Pretty fe14bb1b31 Fixed a couple of bugs and did some more theming
Started trying to add the unit tests that were in the settings refactor branch (need to be refactored due to the implementation changes)
Fixed a bug where the typing indicators wouldn't get cleaned up in some cases
2 years ago
ryanzhao c121f99b22 Merge branch 'dev' into add-silence-audio 2 years ago
ryanzhao d840204bc2 Merge branch 'dev' into add-documents-section 2 years ago
Morgan Pretty c707a2f80c Started refactoring the conversation image picker screens
Fixed a bug where returning from the background on the conversation screen would result in the input view being hidden
Refactored the PhotoCollectionPickerViewController to use the SettingsTableViewController convention
Updated the SettingsTableViewModel to worked based on Combine instead of the DatabaseObservable so it's more reusable for non-db cases
2 years ago
Morgan Pretty face9da02b Fixed search performance, started styling in-conversaiton settings
Fixed a bug where the scroll to bottom button wasn't working
Fixed an issue where searching was running on the main thread (which could cause UI issues)
Updated the searching to interrupt the previous query when the search term changes
Updated the in-conversation settings to be use the new config-based approach (deleted the OWSConversationSettingsViewController)
2 years ago
ryanzhao 2213a99330 ui: new conversation screen contacts table 2 years ago