Morgan Pretty
417976995b
Removed YYImage and libWebP, fixed a couple of bugs
...
• Removed YYImage and libWebP dependencies (replaced with custom `AnimatedImageView` class)
• Fixed an issue where animated images (WebP/GIF) may not correctly render in the "All Media" grid UI
• Fixed an issue where selecting a GIF for the display picture would incorrectly convert it into a JPG instead of keeping the GIF
8 months ago
Morgan Pretty
a524a265a5
Merge remote-tracking branch 'upstream/dev' into feature/refactor-screen-lock
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
9 months ago
Morgan Pretty
fd2b9b92ee
Merge pull request #381 from mpretty-cyro/fix/default-display-picture-not-updating
...
Fixed a bug where changing the display name wouldn't result in a default display pic update
9 months ago
Ryan ZHAO
a6c0762d2b
Merge branch 'dev' into fix-highlight-background
9 months ago
Morgan Pretty
7c4249b082
Cleaned up some of the ScreenLock logic
9 months ago
Morgan Pretty
4b54d242fe
Updated the placeholder icon cache key to include the 'initials'
9 months ago
Ryan ZHAO
3aaa6b36f3
Merge branch 'dev' into fix-highlight-background
9 months ago
Morgan Pretty
4399a5a5bb
Fixed a few issues that came up when testing
...
• Attempt to fix an issue where the CI couldn't find a test simulator because it didn't exist (now try to grab the latest)
• Refactored the notification service extension logging to be more helpful and allow for better tracking
• Fixed a minor layout issue on devices with a home button
• Fixed an issue where display pictures could be given the wrong file extension because we were assuming jpeg
• Fixed an issue where disabling the "Auto dark-mode" setting may not correctly trigger a theme update
• Fixed an issue where returning to the settings screen from a child screen would result in the screen jumping
• Fixed an issue where migrating the community display picture would fail
• Fixed an issue where failing to decrypt a config message push notification would incorrectly result in the fallback notification being shown
9 months ago
Morgan Pretty
1f3f7ba7c6
Fixed QA issues
...
• Refactored the 'performOperation' function to have cleaner control flow and resolve another EXC_BAD_ACCESS edge case
• Updated the code to allow legacy groups to be unpinned after they are deprecated
• Fixed an issue where the default state of the global search screen wouldn't be populated if you had a contact with no SessionThread record
• Fixed an issue with display picture placeholder generation
• Fixed an issue where the edit group screen would show the group display picture back to front
10 months ago
Ryan ZHAO
2ccf442aa4
fix highlight mention background for RTL
10 months ago
Morgan Pretty
3f3d4dde26
Fixed a number of issues found during general testing
...
• Added a 'forceSlowDatabaseQueries' dev setting to help track down main thread database queries
• Updated the unit tests to use a NoopNetworkCache by default when running unit tests
• Updated the custom debug sync query timer to poll more frequently for the first few iterations
• Fixed the broken unit tests
• Fixed the bad memory issue again (wasn't properly fixed...)
• Fixed an issue where the keyboard wouldn't reappear after deleting a message
• Fixed an issue where the toast shown after deleting a message could do a weird appearance animation
• Fixed an issue where legacy group invites were incorrectly still being handled once legacy groups were deprecated
• Fixed an issue where control messages could incorrectly leave a deletion artifact when triggering "delete before now"
• Fixed an issue where the typing indicator logic could run on the main thread (was also overly complex)
• Fixed an issue where we were clearing the incoming typing indicator too quickly (5s vs 15s like other platforms)
• Fixed an issue where the GroupPoller could incorrectly wait for longer than it should between polls if a message was deleted (there will be a better approach we should use in the future when we have an `active_at` flag for the conversation)
10 months ago
Morgan Pretty
44b1d69551
Fixed a number of issues found during testing, and some QA issues
...
• Updated the SyncPushTokensJob to wait for a bit for paths to build before failing
• Updated the PushNotification service to be selectable via the dev settings
• Updated the database timeout code to be a little more developer friendly
• Updated the code to stop blocked contacts from appearing in the main conversation list
• Removed the invalid "push-testnet" push server
• Removed the logic to configure the APNS push service based on the service network (was incorrect)
• Removed the 'Int' raw type constraint for the 'FeatureOption'
• Fixed an issue where the initial conversation query for groups would fail due to an invalid join
• Fixed an issue where the initial conversation query wouldn't include the 'markedUnread' flag (meaning the conversation wouldn't correctly get marked as read)
• Fixed a rare bad memory crash
• Fixed an issue where the modal wouldn't be dismissed after updating the group display name
• Fixed an issue where the "Recreate Group" button was the wrong height
10 months ago
Ryan ZHAO
4dddeebabc
fix highlight background and add paddings to the trailing of @You
10 months ago
Morgan Pretty
c414e1b5fc
Fixed build issues from the merge
10 months ago
Morgan Pretty
7b9f8cb45e
Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
10 months ago
Morgan Pretty
11402b124f
Fixed a few minor issues
...
• Fixed a possible incorrect crash report after importing data via the dev settings
• Fixed an issue where modals displayed after clearing the database data would have broken theming
• Fixed an issue where admin display name and pictures may not appear correctly in the message list when interleaved with control messages
10 months ago
Morgan Pretty
e1f093edd4
Fixed up a couple of issues with the debug import/export process
...
• Updated the ConfirmationModal explanation to be automatically scrollable by default
• Updated the DirectoryArchiver to ignore hidden files (based on the '.' prefix) by default as they wouldn't have been created by Session
10 months ago
Morgan Pretty
d5add5bb79
Fixed a few more issues
...
• Minor tweak to config load order
• Pulled across reentrancy PR fixes
• Fixed an issue where some UI changes were occurring on background threads (causing crashes)
• Fixed an issue where editing a group name/description was performing a blocking action but not showing a loading indicator
• Fixed an issue where the group display picture modal would have it's "save" button enabled even when the picture hadn't been changed
10 months ago
Ryan ZHAO
8ca0b19391
potentially fix a accessibility id issue.
10 months ago
Morgan Pretty
6a4fa224ac
Fixed a few more QA issues
...
• Added the updated light-mode warning colour
• Updated the group version warning banner to explicitly use the primary orange colour
• Fixed an incorrect colour for radio options in the modal
• Fixed an issue where non-admins would incorrectly try to remove obsolete group config hashes (which is not allowed)
11 months ago
Morgan Pretty
a5df142c69
Fixed a number of QA issues
...
• Fixed some incorrect copy when joining a community
• Fixed a missing space in the legacy groups banner
• Fixed an issue where voice recordings weren't working
• Fixed an issue where the clear data modal wouldn't timeout quickly enough
• Fixed an issue where the clear data modal wasn't showing the fallback modal
• Fixed an issue where the clear data request wasn't structured correctly
• Fixed an issue where modals with input fields would always reposition (rather than only when keyboard avoidance required it)
12 months ago
Morgan Pretty
08c7a2cf7f
Refactored `Atomic<T>` to `@ThreadSafe` and `@ThreadSafeObject`
...
• Refactored `Atomic<T>` to `@ThreadSafe` and `@ThreadSafeObject` (the latter supports reentrancy
• Added some logging to the debug import process
12 months ago
Morgan Pretty
7c4f0e8ef2
Fixed a number of QA issues
...
• Added some missing accessibility identifiers
• Added the inline Lucide icon on the Conversation screen for legacy groups
• Added a temporary fix for a crash when restoring an account (really need to fix up the reentrant Atomic<T> access issues)
• Updated the in-conversation blocked state as per UX feedback
• Updated the code to insert the "members added" control message on the admins device after creating a group
• Minor copy tweak
• Fixed a crash which could happen during onboarding due to the poller getting incorrectly created when entering the background before the account is created
• Fixed a bug where sync messages weren't working correctly
• Fixed an issue where the "delete before" behaviours weren't leaving behind the "this message was deleted" messages
• Fixed an issue where group admins wouldn't appear in mentions
12 months ago
Morgan Pretty
c398fa01ae
Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
...
# Conflicts:
# Session.xcodeproj/project.pbxproj
# Session.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
# Session/Calls/Call Management/SessionCall.swift
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/CallVC.swift
# Session/Calls/Views & Modals/IncomingCallBanner.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/Message Requests/MessageRequestsViewModel.swift
# Session/Home/New Conversation/NewMessageScreen.swift
# Session/Home/New Conversation/StartConversationScreen.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/SessionApp.swift
# Session/Notifications/NotificationPresenter.swift
# Session/Notifications/PushRegistrationManager.swift
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/DisplayNameScreen.swift
# Session/Onboarding/LoadingScreen.swift
# Session/Onboarding/Onboarding.swift
# Session/Onboarding/PNModeScreen.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Settings/BlockedContactsViewModel.swift
# Session/Settings/DeveloperSettingsViewModel.swift
# Session/Settings/PrivacySettingsViewModel.swift
# Session/Settings/QRCodeScreen.swift
# Session/Settings/SettingsViewModel.swift
# Session/Settings/Views/VersionFooterView.swift
# Session/Shared/Types/ObservableTableSource.swift
# Session/Utilities/MockDataGenerator.swift
# Session/Utilities/UIContextualAction+Utilities.swift
# SessionMessagingKit/Calls/CallManagerProtocol.swift
# SessionMessagingKit/Database/Migrations/_013_SessionUtilChanges.swift
# SessionMessagingKit/Database/Migrations/_014_GenerateInitialUserConfigDumps.swift
# SessionMessagingKit/Database/Migrations/_018_DisappearingMessagesConfiguration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/BlindedIdLookup.swift
# SessionMessagingKit/Database/Models/ClosedGroup.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/Jobs/Types/GroupLeavingJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+ConvoInfoVolatile.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Shared.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserProfile.swift
# SessionMessagingKit/LibSession/Database/QueryInterfaceRequest+Utilities.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/LibSession/Types/Config.swift
# SessionMessagingKit/Open Groups/OpenGroupManager.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+MessageRequests.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+UnsendRequests.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Shared Models/SessionThreadViewModel.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKit/Utilities/SessionEnvironment.swift
# SessionMessagingKitTests/Jobs/MessageSendJobSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionUIKit/Utilities/Localization+Style.swift
# SessionUtilitiesKit/Database/Storage.swift
# SessionUtilitiesKit/LibSession/LibSessionError.swift
12 months ago
Morgan Pretty
5d9b97e354
Added Lucide as a dependency, added standard font styling
12 months ago
Morgan Pretty
35758b2946
Added logic for dev setting import/export
...
• Added the dev settings UI
• Added export and import functionality (import is unfinished)
• Updated the export logs to allow for either sharing or saving direct to files
1 year ago
Morgan Pretty
03020ad556
Merge remote-tracking branch 'upstream/dev' into feature/groups-rebuild
...
# Conflicts:
# Scripts/LintLocalizableStrings.swift
# Session.xcodeproj/project.pbxproj
# Session/Calls/Call Management/SessionCall.swift
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/WebRTC/WebRTCSession+DataChannel.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/Message Cells/Content Views/OpenGroupInvitationView.swift
# Session/Conversations/Message Cells/Content Views/QuoteView.swift
# Session/Conversations/Message Cells/Content Views/SwiftUI/OpenGroupInvitationView_SwiftUI.swift
# Session/Conversations/Message Cells/Content Views/SwiftUI/VoiceMessageView_SwiftUI.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Database/Migrations/_001_ThemePreferences.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeViewModel.swift
# Session/Home/Message Requests/MessageRequestsViewModel.swift
# Session/Home/New Conversation/NewMessageScreen.swift
# Session/Media Viewing & Editing/GIFs/GiphyAPI.swift
# Session/Media Viewing & Editing/GIFs/GiphyDownloader.swift
# Session/Media Viewing & Editing/PhotoLibrary.swift
# Session/Meta/MainAppContext.swift
# Session/Meta/SessionApp.swift
# Session/Meta/Translations/remove_unused_strings.swift
# Session/Notifications/PushRegistrationManager.swift
# Session/Onboarding/Onboarding.swift
# Session/Settings/HelpViewModel.swift
# Session/Settings/SettingsViewModel.swift
# Session/Settings/Views/VersionFooterView.swift
# Session/Shared/FullConversationCell.swift
# Session/Shared/SessionHostingViewController.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/UIContextualAction+Utilities.swift
# SessionMessagingKit/Configuration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/ClosedGroup.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/RecipientState.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/Jobs/FailedMessageSendsJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserProfile.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Messages/Visible Messages/VisibleMessage.swift
# SessionMessagingKit/Sending & Receiving/Attachments/ThumbnailService.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+MessageRequests.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/SubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/UnsubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupPoller.swift
# SessionMessagingKit/Utilities/OWSAudioPlayer.m
# SessionMessagingKit/Utilities/Preferences.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKitTests/Jobs/MessageSendJobSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionShareExtension/ShareNavController.swift
# SessionSnodeKit/LibSession/LibSession+Networking.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/ProxiedContentDownloader.swift
# SessionUIKit/Components/ConfirmationModal.swift
# SessionUtilitiesKit/Database/Models/Identity.swift
# SessionUtilitiesKit/General/AppContext.swift
# SessionUtilitiesKit/General/FileSystem.swift
# SessionUtilitiesKit/General/NSTimer+Proxying.m
# SessionUtilitiesKit/General/SNUserDefaults.swift
# SessionUtilitiesKit/General/UIDevice+featureSupport.swift
# SessionUtilitiesKit/Media/MediaUtils.swift
# SignalUtilitiesKit/Media Viewing & Editing/Image Editing/ImageEditorCropViewController.swift
# SignalUtilitiesKit/Media Viewing & Editing/MediaMessageView.swift
# SignalUtilitiesKit/Media Viewing & Editing/OWSVideoPlayer.swift
# SignalUtilitiesKit/Screen Lock/ScreenLockViewController.swift
1 year ago
Morgan Pretty
a32af018a7
Refactored the LintLocalizableStrings script
...
• Added new 'LintControl' mechanisms to allow for ignoring sections of code
• Added new 'MatchType' mechanisms for excluding unlocalized cases
• Updated the code to explicitly handle localized template strings (both single and multiline)
• Updated the code to process files across multiple threads to improve performance
• Updated the code to use Swift 5.7 regex and store in static variables to prevent reconstruction every time they are used
• Removed the list of individual files which are ignored (now just output a count)
• Fixed an issue where having a localized string on a subsequent line could result in an unlocalized (or incorrectly localized) string not being detected
• Fixed an issue where having multiple strings on a single line could result in an unlocalized string not being detected
• Fixed an issue where zero-width characters would result in the variable count comparison between translations failing
• Fixed a number of localization warnings
1 year ago
Morgan Pretty
8bd2468fb6
Profile info update change, RadioButton bugfix, unit test changes
...
• Update group member profile info on invite acceptance
• Fixed a bug with the default RadioButton enabled state
• Added a few more unit tests
1 year ago
Morgan Pretty
bbab93327b
Cleaned up the updated message deletion logic
1 year ago
Morgan Pretty
42721db399
Added additional developer settings and fixed some bugs
...
• Added a setting to show the string keys instead of localised values
• Added settings to test the updated groups delete all messages settings
• Updated the onboarding UI to indicate whether it's currently pointing at Testnet
• Tweaked the 'isRTL' dependency setting to be clearer that it's not an injected value
• Fixed a bug with dependency name collision between the different storage types
• Fixed a bug with attachment file path creation
1 year ago
Morgan Pretty
c1b11a6196
Some code clean up and bug fixes
...
• Fixed a couple of layout issues with the incoming call banner
• Fixed an issue with the network callback registration
• Cleaned up the libSession Cache interface a bit
1 year ago
Ryan ZHAO
57ca0dad8e
make explicit accessibility label for modals and error messages of text input
1 year ago
Morgan Pretty
ea95508a92
Fixed unit tests, minor code cleanup
...
• Fixed the ThreadSettingsViewModel unit tests
• Fixed a rare issue which could occur where the libSession network change callbacks could be called before the network finished initialising and being stored in dependencies
• Hardcoded a bunch of future groups functionality strings (so at least there is something for testing)
• Updated the 'performAndPushChange' function to be on the LibSessionCacheType so it can be mocked
• Updated the Mock logic to support specifying a dynamic return value via a closure
• Tweaked some variable naming to remove ambiguity
1 year ago
Morgan Pretty
fc612c1d0f
Conversation settings tweaks and bug fixes (tests WIP)
...
• Updated the app and conversation settings to use modals to set names/descriptions
• Updated the ThreadSettingsViewModel to allow non-admins to view a larger version of the display picture in groups and communities
• Removing the logic to set display pic, name & description from the EditGroupViewModel
• Fixed a couple of unlocalised strings
• Fixed an issue where downloading files was failing due to the URL reconstruction being invalid
1 year ago
Morgan Pretty
bbadc038f6
Merge remote-tracking branch 'RyanFork/strings' into feature/groups-rebuild
...
# Conflicts:
# Scripts/LintLocalizableStrings.swift
# Session.xcodeproj/project.pbxproj
# Session.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
# Session.xcodeproj/xcshareddata/xcschemes/Session.xcscheme
# Session/Calls/Call Management/SessionCall.swift
# Session/Calls/Call Management/SessionCallManager.swift
# Session/Calls/CallVC.swift
# Session/Closed Groups/EditClosedGroupVC.swift
# Session/Closed Groups/NewClosedGroupVC.swift
# Session/Conversations/Context Menu/ContextMenuVC+Action.swift
# Session/Conversations/Context Menu/ContextMenuVC+ActionView.swift
# Session/Conversations/ConversationVC+Interaction.swift
# Session/Conversations/ConversationVC.swift
# Session/Conversations/ConversationViewModel.swift
# Session/Conversations/Emoji Picker/EmojiPickerCollectionView.swift
# Session/Conversations/Message Cells/CallMessageCell.swift
# Session/Conversations/Message Cells/Content Views/MediaAlbumView.swift
# Session/Conversations/Message Cells/Content Views/MediaView.swift
# Session/Conversations/Message Cells/Content Views/QuoteView.swift
# Session/Conversations/Message Cells/Content Views/ReactionContainerView.swift
# Session/Conversations/Message Cells/Content Views/SwiftUI/QuoteView_SwiftUI.swift
# Session/Conversations/Message Cells/InfoMessageCell.swift
# Session/Conversations/Message Cells/VisibleMessageCell.swift
# Session/Conversations/Settings/ThreadDisappearingMessagesSettingsViewModel.swift
# Session/Conversations/Settings/ThreadSettingsViewModel.swift
# Session/Conversations/Views & Modals/ConversationTitleView.swift
# Session/Conversations/Views & Modals/MessageRequestFooterView.swift
# Session/Emoji/Emoji+Available.swift
# Session/Home/GlobalSearch/GlobalSearchViewController.swift
# Session/Home/HomeVC.swift
# Session/Home/HomeViewModel.swift
# Session/Home/Message Requests/MessageRequestsViewModel.swift
# Session/Home/New Conversation/NewConversationVC.swift
# Session/Home/New Conversation/NewConversationViewModel.swift
# Session/Home/New Conversation/NewDMVC.swift
# Session/Media Viewing & Editing/DocumentTitleViewController.swift
# Session/Media Viewing & Editing/GIFs/GifPickerCell.swift
# Session/Media Viewing & Editing/GIFs/GifPickerLayout.swift
# Session/Media Viewing & Editing/GIFs/GifPickerViewController.swift
# Session/Media Viewing & Editing/GIFs/GiphyAPI.swift
# Session/Media Viewing & Editing/GIFs/GiphyDownloader.swift
# Session/Media Viewing & Editing/ImagePickerController.swift
# Session/Media Viewing & Editing/MediaTileViewController.swift
# Session/Media Viewing & Editing/MessageInfoScreen.swift
# Session/Media Viewing & Editing/PhotoCapture.swift
# Session/Media Viewing & Editing/PhotoCaptureViewController.swift
# Session/Media Viewing & Editing/PhotoCollectionPickerViewModel.swift
# Session/Media Viewing & Editing/PhotoLibrary.swift
# Session/Media Viewing & Editing/SendMediaNavigationController.swift
# Session/Meta/AppDelegate.swift
# Session/Meta/AppEnvironment.swift
# Session/Meta/MainAppContext.swift
# Session/Meta/SessionApp.swift
# Session/Meta/Translations/ar.lproj/Localizable.strings
# Session/Meta/Translations/be.lproj/Localizable.strings
# Session/Meta/Translations/bg.lproj/Localizable.strings
# Session/Meta/Translations/bn.lproj/Localizable.strings
# Session/Meta/Translations/cs.lproj/Localizable.strings
# Session/Meta/Translations/da.lproj/Localizable.strings
# Session/Meta/Translations/de.lproj/Localizable.strings
# Session/Meta/Translations/el.lproj/Localizable.strings
# Session/Meta/Translations/en.lproj/Localizable.strings
# Session/Meta/Translations/eo.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/hu.lproj/Localizable.strings
# Session/Meta/Translations/id.lproj/Localizable.strings
# Session/Meta/Translations/it.lproj/Localizable.strings
# Session/Meta/Translations/ja.lproj/Localizable.strings
# Session/Meta/Translations/ko.lproj/Localizable.strings
# Session/Meta/Translations/ku.lproj/Localizable.strings
# Session/Meta/Translations/lt.lproj/Localizable.strings
# Session/Meta/Translations/lv.lproj/Localizable.strings
# Session/Meta/Translations/ne-NP.lproj/Localizable.strings
# Session/Meta/Translations/nl.lproj/Localizable.strings
# Session/Meta/Translations/no.lproj/Localizable.strings
# Session/Meta/Translations/pl.lproj/Localizable.strings
# Session/Meta/Translations/pt-BR.lproj/Localizable.strings
# Session/Meta/Translations/pt-PT.lproj/Localizable.strings
# Session/Meta/Translations/ro.lproj/Localizable.strings
# Session/Meta/Translations/ru.lproj/Localizable.strings
# Session/Meta/Translations/si-LK.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/tr.lproj/Localizable.strings
# Session/Meta/Translations/uk.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
# Session/Notifications/NotificationPresenter.swift
# Session/Notifications/PushRegistrationManager.swift
# Session/Notifications/SyncPushTokensJob.swift
# Session/Notifications/UserNotificationsAdaptee.swift
# Session/Onboarding/DisplayNameVC.swift
# Session/Onboarding/FakeChatView.swift
# Session/Onboarding/LandingVC.swift
# Session/Onboarding/LinkDeviceVC.swift
# Session/Onboarding/Onboarding.swift
# Session/Onboarding/PNModeVC.swift
# Session/Onboarding/RegisterVC.swift
# Session/Onboarding/RestoreVC.swift
# Session/Onboarding/SeedVC.swift
# Session/Open Groups/JoinOpenGroupVC.swift
# Session/Path/PathVC.swift
# Session/Settings/BlockedContactsViewModel.swift
# Session/Settings/ConversationSettingsViewModel.swift
# Session/Settings/HelpViewModel.swift
# Session/Settings/NotificationSettingsViewModel.swift
# Session/Settings/NukeDataModal.swift
# Session/Settings/PrivacySettingsViewModel.swift
# Session/Settings/QRCodeVC.swift
# Session/Settings/SeedModal.swift
# Session/Settings/SettingsViewModel.swift
# Session/Settings/Views/VersionFooterView.swift
# Session/Shared/FullConversationCell.swift
# Session/Shared/OWSBezierPathView.m
# Session/Shared/ScanQRCodeWrapperVC.swift
# Session/Shared/SessionCarouselView+SwiftUI.swift
# Session/Shared/SessionTableViewController.swift
# Session/Shared/Types/NavigatableState.swift
# Session/Shared/Types/ObservableTableSource.swift
# Session/Shared/Types/SessionCell+Accessory.swift
# Session/Shared/Views/SessionCell+AccessoryView.swift
# Session/Utilities/BackgroundPoller.swift
# Session/Utilities/IP2Country.swift
# Session/Utilities/MentionUtilities.swift
# Session/Utilities/MockDataGenerator.swift
# Session/Utilities/UIApplication+OWS.swift
# Session/Utilities/UIContextualAction+Utilities.swift
# SessionMessagingKit/Crypto/Crypto+Attachments.swift
# SessionMessagingKit/Crypto/Crypto+SessionMessagingKit.swift
# SessionMessagingKit/Database/Migrations/_004_RemoveLegacyYDB.swift
# SessionMessagingKit/Database/Migrations/_014_GenerateInitialUserConfigDumps.swift
# SessionMessagingKit/Database/Migrations/_015_BlockCommunityMessageRequests.swift
# SessionMessagingKit/Database/Migrations/_018_DisappearingMessagesConfiguration.swift
# SessionMessagingKit/Database/Models/Attachment.swift
# SessionMessagingKit/Database/Models/DisappearingMessageConfiguration.swift
# SessionMessagingKit/Database/Models/Interaction.swift
# SessionMessagingKit/Database/Models/LinkPreview.swift
# SessionMessagingKit/Database/Models/Profile.swift
# SessionMessagingKit/Database/Models/RecipientState.swift
# SessionMessagingKit/Database/Models/SessionThread.swift
# SessionMessagingKit/Jobs/AttachmentDownloadJob.swift
# SessionMessagingKit/Jobs/AttachmentUploadJob.swift
# SessionMessagingKit/Jobs/CheckForAppUpdatesJob.swift
# SessionMessagingKit/Jobs/ConfigMessageReceiveJob.swift
# SessionMessagingKit/Jobs/ConfigurationSyncJob.swift
# SessionMessagingKit/Jobs/DisappearingMessagesJob.swift
# SessionMessagingKit/Jobs/MessageSendJob.swift
# SessionMessagingKit/Jobs/RetrieveDefaultOpenGroupRoomsJob.swift
# SessionMessagingKit/Jobs/Types/GroupLeavingJob.swift
# SessionMessagingKit/Jobs/UpdateProfilePictureJob.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Contacts.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+ConvoInfoVolatile.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+Shared.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserGroups.swift
# SessionMessagingKit/LibSession/Config Handling/LibSession+UserProfile.swift
# SessionMessagingKit/LibSession/LibSession+SessionMessagingKit.swift
# SessionMessagingKit/Messages/Control Messages/ClosedGroupControlMessage.swift
# SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift
# SessionMessagingKit/Messages/Message.swift
# SessionMessagingKit/Open Groups/Crypto/Crypto+OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/Models/SOGSMessage.swift
# SessionMessagingKit/Open Groups/OpenGroupAPI.swift
# SessionMessagingKit/Open Groups/OpenGroupManager.swift
# SessionMessagingKit/Sending & Receiving/Attachments/SignalAttachment.swift
# SessionMessagingKit/Sending & Receiving/Attachments/ThumbnailService.swift
# SessionMessagingKit/Sending & Receiving/Errors/MessageSenderError.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+Calls.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+DataExtractionNotification.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+ExpirationTimers.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+MessageRequests.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageReceiver+VisibleMessages.swift
# SessionMessagingKit/Sending & Receiving/Message Handling/MessageSender+LegacyClosedGroups.swift
# SessionMessagingKit/Sending & Receiving/MessageReceiver.swift
# SessionMessagingKit/Sending & Receiving/MessageSender+Convenience.swift
# SessionMessagingKit/Sending & Receiving/MessageSender.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/SubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/Models/UnsubscribeRequest.swift
# SessionMessagingKit/Sending & Receiving/Notifications/PushNotificationAPI.swift
# SessionMessagingKit/Sending & Receiving/Pollers/ClosedGroupPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/CurrentUserPoller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/OpenGroupAPI+Poller.swift
# SessionMessagingKit/Sending & Receiving/Pollers/Poller.swift
# SessionMessagingKit/Shared Models/MessageViewModel.swift
# SessionMessagingKit/Utilities/Preferences.swift
# SessionMessagingKit/Utilities/ProfileManager.swift
# SessionMessagingKit/Utilities/ProfileManagerError.swift
# SessionMessagingKitTests/Jobs/MessageSendJobSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionSpec.swift
# SessionMessagingKitTests/LibSession/LibSessionUtilSpec.swift
# SessionMessagingKitTests/LibSession/Utilities/LibSessionTypeConversionUtilitiesSpec.swift
# SessionMessagingKitTests/Open Groups/Models/SOGSMessageSpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupAPISpec.swift
# SessionMessagingKitTests/Open Groups/OpenGroupManagerSpec.swift
# SessionMessagingKitTests/Utilities/CryptoSMKSpec.swift
# SessionNotificationServiceExtension/NSENotificationPresenter.swift
# SessionNotificationServiceExtension/NotificationServiceExtension.swift
# SessionShareExtension/ShareAppExtensionContext.swift
# SessionShareExtension/ShareNavController.swift
# SessionShareExtension/ThreadPickerVC.swift
# SessionSnodeKit/Crypto/Crypto+SessionSnodeKit.swift
# SessionSnodeKit/Database/Models/SnodeReceivedMessageInfo.swift
# SessionSnodeKit/LibSession/LibSession+Networking.swift
# SessionSnodeKit/Models/DeleteAllBeforeResponse.swift
# SessionSnodeKit/Models/DeleteAllMessagesResponse.swift
# SessionSnodeKit/Models/DeleteMessagesResponse.swift
# SessionSnodeKit/Models/RevokeSubkeyRequest.swift
# SessionSnodeKit/Models/RevokeSubkeyResponse.swift
# SessionSnodeKit/Models/SendMessageResponse.swift
# SessionSnodeKit/Models/SnodeAuthenticatedRequestBody.swift
# SessionSnodeKit/Models/UpdateExpiryAllResponse.swift
# SessionSnodeKit/Models/UpdateExpiryResponse.swift
# SessionSnodeKit/Networking/Network+OnionRequest.swift
# SessionSnodeKit/Networking/PreparedRequest+OnionRequest.swift
# SessionSnodeKit/Networking/SnodeAPI.swift
# SessionSnodeKit/Types/IPv4.swift
# SessionSnodeKit/Types/PreparedRequest.swift
# SessionSnodeKit/Types/ProxiedContentDownloader.swift
# SessionSnodeKit/Types/ValidatableResponse.swift
# SessionSnodeKitTests/Types/BencodeResponseSpec.swift
# SessionSnodeKitTests/_TestUtilities/SSKMockedExtensions.swift
# SessionTests/Conversations/Settings/ThreadDisappearingMessagesViewModelSpec.swift
# SessionTests/Conversations/Settings/ThreadSettingsViewModelSpec.swift
# SessionTests/Database/DatabaseSpec.swift
# SessionTests/Settings/NotificationContentViewModelSpec.swift
# SessionUIKit/Components/ConfirmationModal.swift
# SessionUIKit/Components/PlaceholderIcon.swift
# SessionUIKit/Components/ToastController.swift
# SessionUIKit/Components/TopBannerController.swift
# SessionUIKit/Style Guide/ThemeManager.swift
# SessionUIKit/Style Guide/Values.swift
# SessionUtilitiesKit/Crypto/Crypto+SessionUtilitiesKit.swift
# SessionUtilitiesKit/Crypto/Crypto.swift
# SessionUtilitiesKit/Database/Models/Identity.swift
# SessionUtilitiesKit/Database/Storage.swift
# SessionUtilitiesKit/Database/Types/Migration.swift
# SessionUtilitiesKit/General/AppContext.swift
# SessionUtilitiesKit/General/Data+Utilities.swift
# SessionUtilitiesKit/General/Features.swift
# SessionUtilitiesKit/General/FileSystem.swift
# SessionUtilitiesKit/General/General.swift
# SessionUtilitiesKit/General/Logging.swift
# SessionUtilitiesKit/General/String+Trimming.swift
# SessionUtilitiesKit/General/String+Utilities.swift
# SessionUtilitiesKit/General/UIEdgeInsets.swift
# SessionUtilitiesKit/JobRunner/JobRunner.swift
# SessionUtilitiesKit/LibSession/LibSession.swift
# SessionUtilitiesKit/Media/Data+Image.swift
# SessionUtilitiesKit/Media/DataSource.swift
# SessionUtilitiesKit/Media/MediaUtils.swift
# SessionUtilitiesKit/Media/MimeTypeUtil.swift
# SessionUtilitiesKit/Meta/SessionUtilitiesKit.h
# SessionUtilitiesKit/Networking/Network.swift
# SessionUtilitiesKit/Types/Threading.swift
# SessionUtilitiesKit/Utilities/Bencode.swift
# SessionUtilitiesKit/Utilities/UIImage+Utilities.swift
# SessionUtilitiesKitTests/Database/Models/IdentitySpec.swift
# SessionUtilitiesKitTests/Database/Utilities/PersistableRecordUtilitiesSpec.swift
# SessionUtilitiesKitTests/General/SessionIdSpec.swift
# SessionUtilitiesKitTests/JobRunner/JobRunnerSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeDecoderSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeResponseSpec.swift
# SessionUtilitiesKitTests/Utilities/BencodeSpec.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalInputAccessoryView.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentApprovalViewController.swift
# SignalUtilitiesKit/Media Viewing & Editing/Attachment Approval/AttachmentCaptionToolbar.swift
# SignalUtilitiesKit/Media Viewing & Editing/Image Editing/ImageEditorModel.swift
# SignalUtilitiesKit/Media Viewing & Editing/MediaMessageView.swift
# SignalUtilitiesKit/Meta/SignalUtilitiesKit.h
# SignalUtilitiesKit/Screen Lock/ScreenLock.swift
# SignalUtilitiesKit/Utilities/AppSetup.swift
# SignalUtilitiesKit/Utilities/Bench.swift
# SignalUtilitiesKit/Utilities/NoopNotificationsManager.swift
# SignalUtilitiesKit/Utilities/SwiftSingletons.swift
# _SharedTestUtilities/CommonMockedExtensions.swift
# _SharedTestUtilities/GRDBExtensions.swift
# _SharedTestUtilities/MockCrypto.swift
# _SharedTestUtilities/MockJobRunner.swift
# _SharedTestUtilities/Mocked.swift
# _SharedTestUtilities/SynchronousStorage.swift
1 year ago
Ryan ZHAO
b2ce98ea83
standardize modal & input error accessibility ids
1 year ago
Morgan Pretty
0f549ae77d
Renamed 'ScrollableLabelView' to 'ScrollableLabel'
1 year ago
Morgan Pretty
7bfc533882
Created a ScrollableLabelView component for the ConfirmationModal
1 year ago
Ryan ZHAO
b8b8419fdb
minor fix on the tool bar theme and bump up build number
1 year ago
Ryan ZHAO
3dc0ed255c
fix text got cut off unexpectedly in modals
1 year ago
Ryan ZHAO
a749f8d656
further fix on scrollable modal
1 year ago
Ryan ZHAO
37f142f1eb
fix an UI issue for confirmation model
1 year ago
Ryan ZHAO
22a353112b
minor fix on how we render the <span> tag
1 year ago
Ryan ZHAO
f8fb647752
fix some modals
1 year ago
Ryan ZHAO
803d91c051
fix an issue on styling the localized strings
1 year ago
Ryan ZHAO
0413baa06e
refactor localized string with style
1 year ago
Ryan ZHAO
5881b36384
implement Open URL modal
1 year ago
Ryan ZHAO
fc47cf3961
Merge branch 'standardised-strings' of https://github.com/RyanRory/loki-messenger-ios into standardised-strings
1 year ago
Ryan ZHAO
b78a7691af
fix an nav bar issue
1 year ago