Commit Graph

311 Commits (5e0a29f5afbf9135029900fd01fd57b0b96b4631)

Author SHA1 Message Date
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
9 months ago
Morgan Pretty 3a9ada581d Fixed an issue where theme changes stopped updating nav styling 9 months ago
ryanzhao d415ea5781 Merge branch 'dev' into disappearing-message-redesign 10 months ago
Ryan Zhao 66e37cef07 Merge branch 'dev' into disappearing-message-redesign 10 months ago
Morgan Pretty 8cbd318cca Fixed an issue where the conversation screen was dismissed incorrectly
Fixed a bug where going to the settings screen in a conversation with no messages would pop to the conversation list
10 months ago
Morgan Pretty b79de0cf32 Fixed an issue where call messages wouldn't get marked as read when the last message in a conversation 10 months ago
Ryan Zhao 6c75007c0b Merge branch 'dev' into disappearing-message-redesign 10 months ago
Morgan Pretty 7a8941db5c Fixed a couple of config handling bugs
Fixed an bug where config messages could be processed in the wrong order
Tweaked the behaviour or removing threads (this would cause issues with future config-based settings changes that live on the thread getting lost)
10 months ago
Ryan Zhao 9e1f68380a Merge branch 'dev' into disappearing-message-redesign 11 months 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
11 months ago
Ryan Zhao 0eeb4fcd1a fix an UI issue when there is no message in an outdated conversation, the banner and empty state string will be overlapped 11 months ago
Ryan Zhao cbc8a7806d Merge branch 'dev' into disappearing-message-redesign 12 months ago
ryanzhao 18d3ab0e0e Merge branch 'dev' into disappearing-message-redesign 12 months ago
Morgan Pretty f373a989a8 Fixes for user config crashes
Added a method to determine if the database is suspended
Updated the code to show the "Failed" state if sending a message fails due to a suspended database
Prevented a crash which could occur in rare cases when accessing the Seed via the home screen prompt (direct user to share logs with session - db locked or device in an invalid state)
Prevented a crash which could occur when trying to send a message due to failing to retrieve the mnemonic (db locked or device in an invalid state)
Fixed a bug where optimistic messages could end up appearing multiple times
Fixed a crash with the QRCode scanner
Fixed a crash when trying to take a video attachment
Fixed a crash where the image picker grid could go out of bounds when selecting elements
Fixed a crash which could occur when a user provides a recovery password with a word that contains less than 3 characters
Fixed a potential issue where the dependency injection could result in a stale date being used in some places (removing the DI here, proper fix requires larger changes in another branch)
12 months ago
Morgan Pretty bc5d8d0931 Cleaning up final things before release
Added basic support for the '25' blinded prefix
Fixed a unit test CI issue
1 year ago
ryanzhao 31976048bd Merge branch 'feature/updated-user-config-handling' of https://github.com/mpretty-cyro/session-ios into disappearing-message-redesign 1 year ago
Morgan Pretty b72bf42605 Updated the CI and fixed a couple of config bugs
Updated to the 1.0.0 release of libSession
Set the User Config feature flag to July 31st 10am AEST
Shifted quote thumbnail generation out of the DBWrite thread
Stopped the CurrentUserPoller from polling the user config namespaces if the feature flag is off
Fixed an issue where the scrollToBottom behaviour could be a little buggy when an optimistic update is replaced with the proper change
Fixed an issue where the 'attachmentsNotUploaded' error wouldn't result in a message entering an error state
Fixed a bug where sync messages with attachments weren't being sent
1 year ago
Ryan Zhao defd7e3cfe Merge branch 'updated-user-config-handling' into disappearing-message-redesign 1 year ago
Morgan Pretty f45568644e Fixed a somehow reproducable crash
Fixed a crash when autoLoadNextPageIfNeeded was run after the table data was updated but before the tableView was reloaded resulting in a index out of bounds exception
1 year ago
Ryan Zhao d81a8743ac Merge branch 'updated-user-config-handling' into disappearing-message-redesign 1 year ago
Morgan Pretty b6328f79b9 Reworked the app startup process
Shifted the initial HomeVC population to a background thread to avoid blocking launch processing
Added some logging for database 'ABORT' errors to better identify cases of deadlocks
Added a launch timeout modal to allow users to share their logs if the startup process happens to hang
Updated the notification handling (and cancelling) so it could run on background threads (seemed to take up a decent chunk of main thread time)
Fixed an issue where the IP2Country population was running sync which could cause a hang on startup
Fixed an issue where the code checking if the UIPasteBoard contained an image was explicitly advised against by the documentation (caused some reported hangs)
Fixed a hang which could be caused by a redundant function when the ImagePickerController appeared
1 year ago
ryanzhao ee5de25d4a Merge branch 'feature/updated-user-config-handling' of https://github.com/mpretty-cyro/session-ios into disappearing-message-redesign 1 year ago
Morgan Pretty d8ae9669c8 Fixed a breaking issue and a few other minor bugs
Fixed a busted version comparison
Fixed an issue where the config dump population wasn't setting the 'created' timestamp for contacts
Fixed an issue where the 'SyncPushTokensJob' could run logic on the wrong thread
Fixed a bug where the 'scroll to bottom' button wouldn't initial be visible in some cases
Fixed a bug where the 'scroll to bottom' button would fade out when there were subsequent pages
Fixed a bug where an open group image might not get downloaded in some cases
Fixed an issue where we would incorrectly append a wildcard character to the end of a search term that ended in a quotation mark
Finished refactoring the OpenGroupAPI to use PreparedSendData
1 year ago
Ryan Zhao 9ae6d2f506 Merge branch 'updated-user-config-handling' into disappearing-message-redesign 1 year 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)
1 year ago
Ryan Zhao f8d0ac2075 fix an issue where disappearing messages config messages could not be marked as read when opening a conversation 1 year ago
Ryan Zhao f7c7c75527 Merge branch 'updated-user-config-handling' into disappearing-message-redesign 1 year ago
Morgan Pretty f07313c7ac Fixed a number of bugs found during internal testing
Updated to the latest libSession to increase the available size for config message content (size check now happens after compression rather than before)
Added some additional logs for config size info
Fixed a bug where the database could be accessed before the migrations ran which could result in unexpected behaviours
Fixed a bug where you couldn't mark a non one-to-one thread as read/unread
Fixed a bug where a database initialization failure wouldn't result in a migration failure (user would be stuck on the splash screen indefinitely)
Fixed a bug where if a message was too large for the screen the conversation would open it centered on the screen (now it will be positioned to the top)
Started looking at broken unit tests
Increased the build number
1 year ago
ryanzhao 40f1d6491d Merge branch 'feature/updated-user-config-handling' of https://github.com/mpretty-cyro/session-ios into disappearing-message-redesign 1 year ago
Morgan Pretty 1ba060b7f0 Cleaned up the outdated message logic and fixed a few bugs
Fixed a bug where showing hidden conversations would appear at the bottom of the list
Fixed a bug where you would be kicked from a one-to-one conversation when opening it if you had hidden it
Fixed a bug where joining a community via URL wasn't automatically opening the community
Fixed a bug where the community poller could trigger again before the previous poll completed
Fixed an edge-case where community messages could be missed if the app crashed at the right time when processing a poll response
1 year ago
Ryan Zhao afb456b710 Merge branch 'updated-user-config-handling' into disappearing-message-redesign 1 year 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
1 year ago
Morgan Pretty 2d792e4e3e Updated the profile picture modal and standardised the ProfilePictureView sizes
Fixed an issue where 'CurrentAppContext().isMainAppAndActive' wasn't called on the main thread
Updated the ProfilePictureView to have the updated icon UI
1 year ago
ryanzhao 86705d88e3 Merge branch 'feature/updated-user-config-handling' into disappearing-message-redesign 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 6be759d39c
Merge pull request #851 from mpretty-cyro/feature/updated-profile-picture-modal
Updated the profile picture management UI & functionality
1 year 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
1 year ago
Morgan Pretty 5b5f4a4e88 Various tweaks and fixes
Fixed an issue where the GlobalSearch push animation could be jittery
Fixed a crash which could occur when returning from the background on certain screens
Removed the keyboard dismiss animation when pushing from global search to a conversation (apparently this is how iMessage avoids the animation bug...)
Updated to the latest version of GRDB
Updated the Atomic wrapper to use the ReadWrite lock for less blocking behaviours
Updated the audio attachment icon to be consistent with Android & Desktop
Updated the QuoteView to omit the "author" if we don't have their name and the quote can't be found
1 year ago
Morgan Pretty 977c2051ed Fixed a few bugs uncovered with further testing
Added some more logs to libSession build script and tweaked the stdout location
Added shadow threads to the GarbageCollectionJob
Changed the seed node retries to 2 because it's likely we will swap to another seed node pretty quickly which could resolve the issue
Fixed a bug where the user could get kicked from a draft conversation if they get a contacts update before sending a message
Fixed a bug where message status or media message download statuses would trigger the conversation to jump to the bottom
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 6685dc0572 Dropping messages which shouldn't be processed without a thread
Removed an extra localised string value
1 year ago
Morgan Pretty a9afb2d1d1 Accessibility and copy tweaks 1 year ago
Morgan Pretty 08853e7333 Fixed an issue where mentions weren't working 1 year ago
Morgan Pretty 8c8453d922 Updated to the latest libSession, fixed remaining items
Updated to the latest libSession version
Updated the 'hidden' logic to be based on a negative 'priority' value
Added an index on the Quote table to speed up conversation query
Fixed an odd behaviour with GRDB and Combine (simplified the interface as well)
Fixed an issue where migrations could fail
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 70ce967df6 Made a few optimisations and fixes
Made a couple of DB query optimisations for the Home and Conversation screens
Removed some compiler-complex global generic functions
Increased the timeout for file uploads
Fixed a few import issues
Fixed an issue preventing calls on the simulator from working (disable CallKit on the simulator)
Fixed an issue where opening a conversation with a draft would result in a typing indicator notification being sent (if enabled)
Fixed a truncation issue on the CallVC
1 year 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
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
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