Ryan ZHAO
04d734ef87
use local disappearing messages setting for call messages and data extraction notifications
1 year ago
Ryan ZHAO
10d1c64c29
remove outdated client banner when receiving a message from new version
1 year ago
Ryan ZHAO
7693e53183
minor refactor and fix expiration update message for control messages
1 year ago
Ryan ZHAO
42f2440067
fix disappearing messages update control messages for legacy groups and linked devices
1 year ago
Ryan ZHAO
74efe8cc72
fix an issue for legacy groups disappearing message update control message
1 year ago
Ryan ZHAO
490cde57ce
fix disappearing messages update control messages for legacy groups
1 year ago
Ryan ZHAO
4ec1d730cd
remove previous logic for expiring control messages indicating disappearing messages turned off
1 year ago
Ryan ZHAO
5d2a307d5e
WIP: update copies and implement following setting
1 year ago
Ryan ZHAO
e8ec91ba8b
keep disappearing message update control message for legacy mode
1 year ago
Ryan ZHAO
adf1a76acc
fix outdated client version check
1 year ago
Ryan ZHAO
21c4a17a85
minor fix: only show banner when V2 is enabled
1 year ago
Ryan ZHAO
5f0835c41b
feat : display outdated client banner for linked devices
1 year ago
Ryan Zhao
928d7f2b1e
add comments and minor refactor
2 years ago
Ryan Zhao
e1f5f86743
try to fix unit test
2 years ago
Ryan Zhao
a7a19abccf
update unit test
2 years ago
Ryan Zhao
acbf6fb126
clean
2 years ago
ryanzhao
5063feeb6a
fix an issue where message is not received & minor refactor on disappearing message job
2 years ago
Ryan Zhao
2d3b42a53a
minor refactor
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
f4c25fa697
fix disappearing message control messages won't start disappearing
2 years ago
ryanzhao
96804e73e6
WIP: fix first handling user config messages makes expire timer update message not handled
2 years ago
Ryan Zhao
4ac8aa2aea
fix an issue where visible message received after expire timer update message could be dropped
2 years ago
Ryan Zhao
a7db4485df
resolve a race condition of expireTimerUpdate and configUpdate
2 years ago
ryanzhao
ae78abc5a4
fix an issue where expire timer update message being invalid
2 years ago
ryanzhao
eb8f50c29f
minor fix
2 years ago
ryanzhao
6658c5edd5
fix issue of syncing disappearing messages
2 years ago
Ryan Zhao
43e38c5644
Merge branch 'updated-user-config-handling' into disappearing-message-redesign
2 years ago
Morgan Pretty
c455a13a7b
Finished adding logic to ignore messages invalidated by config
...
Added timestamps to the Profile table to avoid overriding current profile info with older info
Updated the MessageReceiver to ignore the rest of the messages invalidated by the config
Updated to the latest libSession
Updated the JobRunner to expose some more info about the currently running jobs
Made some tweaks to the ConfigurationSyncJob to better support concurrent jobs running for different targets
2 years ago
Ryan Zhao
58740d9639
sync disappearing messages config through libSession
2 years ago
ryanzhao
31af9c2ab9
refactor & fix default duration of legacy disappearing message, and fix typo
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
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
2 years ago
Morgan Pretty
7ee84fe0d3
Cleaned up a bunch of code, added pinned and hidden handling
...
Added in logic to handle the 'hidden' state
Replaced the 'Group Created' message with an empty state
Cleaned up a bunch of boilerplate code
2 years ago
Ryan Zhao
71449c22b1
feat: remove previous disappearing messages change info message when adding a new one
2 years ago
ryanzhao
123c458c32
update disappearing messages off config info message's expiration
2 years ago
ryanzhao
491ca58e9d
fix an issue where the info message won't disappearing if it is from expiration timer update message
2 years ago
Ryan Zhao
8e64cda138
re-enable the handling for expiration timer update messages until the new design is enabled
2 years ago
ryanzhao
14a853ab07
feat: send expire timer update message
2 years ago
Ryan Zhao
aa81a907a5
update disappearing messages info message
3 years ago
Morgan Pretty
eeccfb47d5
Fixed all of the build errors from merge, migrated Call logic, started idBlinding migration and bug fixes
...
Fixed some broken file paths
Fixed a couple of bugs with closed groups
Fixed a few migration issues
Fixed a bug with the ProfilePictureView in open groups (was including the open parenthesis in the initials)
Migrated the Id Blinding changes to work with GRDB
Migrated the call logic to work with GRDB
Updated the code to work the with hard fork changes
3 years ago
Morgan Pretty
290bce5ce0
Merge branch 'feature/session-id-blinding-part-2' into feature/database-refactor
...
# Conflicts:
# Podfile
# Podfile.lock
# Session.xcodeproj/project.pbxproj
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/Context Menu/ContextMenuVC+Action.swift
# Session/Conversations/Context Menu/ContextMenuVC.swift
# Session/Conversations/ConversationMessageMapping.swift
# Session/Conversations/ConversationSearch.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewItem.h
# Session/Conversations/ConversationViewItem.m
# Session/Conversations/ConversationViewModel.m
# Session/Conversations/Input View/InputView.swift
# Session/Conversations/Input View/MentionSelectionView.swift
# Session/Conversations/LongTextViewController.swift
# Session/Conversations/Message Cells/Content Views/LinkPreviewView.swift
# Session/Conversations/Message Cells/MessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Conversations/Settings/OWSConversationSettingsViewController.m
# Session/Conversations/Views & Modals/ConversationTitleView.swift
# Session/Conversations/Views & Modals/DownloadAttachmentModal.swift
# Session/Conversations/Views & Modals/JoinOpenGroupModal.swift
# Session/Conversations/Views & Modals/LinkPreviewModal.swift
# Session/Conversations/Views & Modals/MessagesTableView.swift
# Session/Conversations/Views & Modals/URLModal.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/Message Requests/MessageRequestsViewController.swift
# Session/Media Viewing & Editing/MediaDetailViewController.m
# Session/Media Viewing & Editing/MediaPageViewController.swift
# Session/Meta/AppDelegate.m
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/Signal-Bridging-Header.h
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/hi.lproj/Localizable.strings
# Session/Meta/Translations/si.lproj/Localizable.strings
# Session/Meta/Translations/zh-Hant.lproj/Localizable.strings
# Session/Notifications/AppNotifications.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Settings/NukeDataModal.swift
# Session/Settings/SeedModal.swift
# Session/Settings/SettingsVC.swift
# Session/Settings/ShareLogsModal.swift
# Session/Shared/ConversationCell.swift
# Session/Shared/UserSelectionVC.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/MentionUtilities.swift
# Session/Utilities/MockDataGenerator.swift
# SessionMessagingKit/Database/OWSPrimaryStorage.m
# SessionMessagingKit/Database/SSKPreferences.swift
# SessionMessagingKit/Database/Storage+Contacts.swift
# SessionMessagingKit/Database/Storage+Jobs.swift
# SessionMessagingKit/Database/Storage+Messaging.swift
# SessionMessagingKit/Database/Storage+OpenGroups.swift
# SessionMessagingKit/Database/TSDatabaseView.m
# SessionMessagingKit/File Server/FileServerAPIV2.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Jobs/JobQueue.swift
# SessionMessagingKit/Jobs/MessageReceiveJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/NotifyPNServerJob.swift
# SessionMessagingKit/Messages/Control Messages/ClosedGroupControlMessage.swift
# SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift
# SessionMessagingKit/Messages/Message+Destination.swift
# SessionMessagingKit/Messages/Signal/TSIncomingMessage.h
# SessionMessagingKit/Messages/Signal/TSIncomingMessage.m
# SessionMessagingKit/Messages/Signal/TSInfoMessage.h
# SessionMessagingKit/Messages/Signal/TSInfoMessage.m
# SessionMessagingKit/Messages/Signal/TSInteraction.h
# SessionMessagingKit/Messages/Signal/TSInteraction.m
# SessionMessagingKit/Messages/Signal/TSMessage.h
# SessionMessagingKit/Messages/Signal/TSMessage.m
# SessionMessagingKit/Open Groups/OpenGroupAPIV2+ObjC.swift
# SessionMessagingKit/Open Groups/OpenGroupAPIV2.swift
# SessionMessagingKit/Open Groups/OpenGroupManagerV2.swift
# SessionMessagingKit/Open Groups/OpenGroupMessageV2.swift
# SessionMessagingKit/Sending & Receiving/Mentions/MentionsManager.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver+Decryption.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+ClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Encryption.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/NotificationsProtocol.h
# SessionMessagingKit/Sending & Receiving/Pollers/ClosedGroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupPollerV2.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Storage.swift
# SessionMessagingKit/Threads/Notification+Thread.swift
# SessionMessagingKit/Threads/TSContactThread.h
# SessionMessagingKit/Threads/TSContactThread.m
# SessionMessagingKit/Threads/TSGroupModel.h
# SessionMessagingKit/Threads/TSGroupModel.m
# SessionMessagingKit/Threads/TSGroupThread.m
# SessionMessagingKit/Utilities/General.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionSnodeKit/OnionRequestAPI+Encryption.swift
# SessionSnodeKit/OnionRequestAPI.swift
# SessionSnodeKit/SnodeAPI.swift
# SessionSnodeKit/SnodeMessage.swift
# SessionSnodeKit/Storage+SnodeAPI.swift
# SessionSnodeKit/Storage.swift
# SessionUtilitiesKit/General/Array+Utilities.swift
# SessionUtilitiesKit/General/Dictionary+Utilities.swift
# SessionUtilitiesKit/General/SNUserDefaults.swift
# SessionUtilitiesKit/General/Set+Utilities.swift
# SessionUtilitiesKit/Meta/SessionUtilitiesKit.h
# SessionUtilitiesKit/Utilities/Optional+Utilities.swift
# SessionUtilitiesKit/Utilities/Sodium+Conversion.swift
# SignalUtilitiesKit/Configuration.swift
# SignalUtilitiesKit/Database/Migrations/OpenGroupServerIdLookupMigration.swift
# SignalUtilitiesKit/Messaging/FullTextSearcher.swift
# SignalUtilitiesKit/Messaging/Sending & Receiving/MessageSender+Convenience.swift
# SignalUtilitiesKit/Profile Pictures/Identicon+ObjC.swift
# SignalUtilitiesKit/To Do/OWSProfileManager.m
# SignalUtilitiesKit/Utilities/NoopNotificationsManager.swift
# SignalUtilitiesKit/Utilities/UIView+OWS.swift
3 years ago