Commit Graph

197 Commits (2e4c11f4b9dc033412c47551d65b1cffb2a1c632)

Author SHA1 Message Date
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
ryanzhao 15694aeeb0 minor fix to adapt to theming 2 years ago
ryanzhao 3dfa3ac5ee Merge branch 'theming' into ipad-landscape-support 2 years ago
ryanzhao fbcdd1358c WIP: fix video call view 2 years ago
ryanzhao 2968a3cf06 fix mini call screen size 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 f7fd15dae0 Finished removing usages to non-theme colour variables
Updated theming throughout
Fixed a couple of bugs with the media gallery
2 years ago
Ryan Zhao 10ecd32e4b increase call connecting time from 30s to 60s 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
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
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 87c2bc3700 tweaks on the logic to suspend database when call is ended in background 2 years ago
ryanzhao 7c1d332763 move database suspending logic when handling calls in background after writeAsync 2 years ago
Ryan Zhao ae7895c18e fix a issue where the call info message won't be updated 2 years ago
Ryan Zhao e3479107f3 feat: give more time for calls to connect 2 years ago
Ryan Zhao 31605672e2 fix call threading issues 2 years ago
Morgan Pretty b029728b6c Did some more theming, removed some files and fixed a couple of minor call issues
Applied theming logic to the ConversationTitleView, blocked banner
Removed a few redundant modals (replaced them with the "Confirmation Modal")
Removed some duplicate code
Fixed an issue where a synchronous start/stop behaviour was running on the main thread causing some UI blocking
Fixed an issue where the minimised call view could be covered by presenting view controllers
2 years ago
ryanzhao 80894bc198 suspend database when call is ended in background 2 years ago
ryanzhao a5ede8c6a2 fix a case when the app goes into background with an ongoing call 2 years ago
Ryan Zhao 3cfee13768 minor refactor to prevent fake calls 2 years ago
Morgan Pretty b47e5accd6 Updated some more message types and modals
Added a disabled state to the OutlineButton
Finished of the last bits for the BlockedContacts screen
Applied theming to the LinkPreview
Applied theming to the Call info message (and it's prompt)
Fixed a minor issue where showing the ContextMenu (via long press) could look odd due to the input field being dismissed
Swapped the LinkPreviewModal to use the standard ConfirmationModal
Removed a redundant closure from the ConfirmationModal
2 years ago
Morgan Pretty 9859cf95a4 Attempted to fix the notification & call reporting issues
Fixed an issue where fileIds weren't correctly getting sent along with open group messages
Fixed an issue where the screens could miss updates if the device was locked with the app in the foreground and then later unlocked after receiving notifications
Added an optimisation to prevent attempting to send a message after it has been deleted
Added logic to report fake calls if the code goes down an invalid code path when handling a call (to prevent Apple blocking the app)
Delayed the core which clears notifications to increase the time the app has to handle interactions (just in case it was a race condition)
2 years ago
Morgan Pretty 3c07a2d044 Added linting for the localized strings, updated the quote & mention behaviour for the current user
Added a script and build step to error if we have localised a string in code bug don't have an entry in the localisable files
Added the logic and UI to replace the current users public key (or blinded key) with 'You' in mentions and quotes
Cleaned up some duplicate & missing localised strings
Fixed a bug where new closed groups weren't getting setup locally correctly
Updated the id truncating behaviour to always truncate from the middle
2 years ago
Morgan Pretty 4afddd6fbb Fixed a number of reported bugs, some cleanup, added animated profile support
Added support for animated profile images (no ability to crop/resize)
Updated the message trimming to only remove messages if the open group has 2000 messages or more
Updated the message trimming setting to default to be on
Updated the ContextMenu to fade out the snapshot as well (looked buggy if the device had even minor lag)
Updated the ProfileManager to delete and re-download invalid avatar images (and updated the conversation screen to reload when avatars complete downloading)
Updated the message request notification logic so it will show notifications when receiving a new message request as long as the user has read all the old ones (previously the user had to accept/reject all the old ones)
Fixed a bug where the "trim open group messages" toggle was accessing UI off the main thread
Fixed a bug where the "Chats" settings screen had a close button instead of a back button
Fixed a bug where the 'viewsToMove' for the reply UI was inconsistent in some places
Fixed an issue where the ProfileManager was doing all of it's validation (and writing to disk) within the database write closure which would block database writes unnecessarily
Fixed a bug where a message request wouldn't be identified as such just because it wasn't visible in the conversations list
Fixed a bug where opening a message request notification would result in the message request being in the wrong state (also wouldn't insert the 'MessageRequestsViewController' into the hierarchy)
Fixed a bug where the avatar image wouldn't appear beside incoming closed group message in some situations cases
Removed an error log that was essentially just spam
Remove the logic to delete old profile images when calling save on a Profile (wouldn't get called if the row was modified directly and duplicates GarbageCollection logic)
Remove the logic to send a notification when calling save on a Profile (wouldn't get called if the row was modified directly)
Tweaked the message trimming description to be more accurate
Cleaned up some duplicate logic used to determine if a notification should be shown
Cleaned up some onion request logic (was passing the version info in some cases when not needed)
Moved the push notification notify API call into the PushNotificationAPI class for consistency
2 years ago
Morgan Pretty 8cf2a57fcc Renamed GRDBStorage to Storage (no use having the prefix anymore since the old DB is deprecated) 2 years ago
Morgan Pretty a998cadbb7 Fixed the broken unit tests
Fixed a few bugs uncovered by the unit tests
2 years ago
Morgan Pretty 4133a49a34 Made a couple of tweaks to the GRDBStorage interface
Updated the ControlMessageProcessRecord to allow for duplicate handling of UnsendRequest messages
2 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
2 years ago
Morgan Pretty 531ddcb079 Replaced the GoogleWebRTC library (deprecated) with WebRTC-lib 2 years ago
Ryan Zhao 4da0ccdd44 fix an issue where current call implementation won't compile for simulators 2 years ago
Ryan Zhao 95d120266d show incoming call banner for CallKit disabled cases 2 years ago
Ryan Zhao fba6dbcf9b refactor to make CallKit disabled for China mainland 2 years ago
ryanzhao 5ebb2ceee3 fix call duration label get hidden 2 years ago
ryanzhao 343df684d9 fix race condition for callkit 2 years ago
ryanzhao 6cb3e1db22 add interaction for showing missed call tips if the permission is denied 2 years ago
ryanzhao 5fa63286da refactor timeout logic for calls incoming and reconnecting 2 years ago
ryanzhao f2cfa29b21 add call related logs to log file 2 years ago
Ryan Zhao 07c18927f2 minor fix to prevent redundant offer 2 years ago
Ryan Zhao 9df52a0a89 implement new approach for call reconnection 2 years ago
Ryan Zhao e7c564914d makes more sense on call timeout 2 years ago
Ryan Zhao 952a3d3414 minor fix for merging 2 years ago
Ryan Zhao 3fb7babecb clean 2 years ago
Ryan Zhao 7333d50825 rotate button if needed 2 years ago
Ryan Zhao 7d00897907 minor clean up 2 years ago
Ryan Zhao f7af8141c0 fix CallKit failed to report new incoming calls in focus mode 2 years ago
Ryan Zhao 54493e56ef minor fix on top & bottom margin 2 years ago
Ryan Zhao 657f91ccf9 fix mini call view (remote video view) rotation and dragging issue 2 years ago
Ryan Zhao be1767a4ba clean 2 years ago
Ryan Zhao 65d78533c9 add comments 2 years ago
Ryan Zhao 80b18f0715 fix local video view weird rotation behaviour 2 years ago
Ryan Zhao e563353842 improve video scale 2 years ago
Ryan Zhao 782dd20ddd implement screen rotation for video calls 2 years ago
Ryan Zhao 29cd6fb312 fix minor issues 3 years ago
Ryan Zhao fb99bc6abd minor refactor on the local video view to make it draggable 3 years ago
Ryan Zhao 36985f6fa7 operation panel UI fix 3 years ago
Ryan Zhao e413b9da86 enable calls 3 years ago
ryanzhao f2e3ae909f disable making calls 3 years ago
Ryan Zhao 71e6ccd94b add flag for enable/disable call function 3 years ago
Ryan Zhao 4658e76d46 fix linked device answering/ending call issues 3 years ago
Ryan Zhao cfcd52c5bb minor refactoring to prevent crash after making a call 3 years ago
Ryan Zhao 4560f7e122 fix unreasonable ending call actions 3 years ago
Ryan Zhao a75ecb30db minor fix 3 years ago
Ryan Zhao 8cab6d1013 show short session id for callee/caller name 3 years ago
Ryan Zhao 3a6d125724 minor improve on call UI 3 years ago
Ryan Zhao 6b505880fe minor improvement for small screen call UI 3 years ago
Ryan Zhao b0a9268cfd minor refactoring 3 years ago
Ryan Zhao 5e7c8513ed add call duration & update UI 3 years ago
Ryan Zhao 9e4e126ef3 add call missed tips 3 years ago
Ryan Zhao 9aad1e0e29 minor improvement 3 years ago
Ryan Zhao 44837b57e5 improve the audio output device displaying 3 years ago
Ryan Zhao 82400c6734 clean 3 years ago
Ryan Zhao 570c3fbe3b add ringtone and other UI improvement 3 years ago
Ryan Zhao 9e6c81d28b improve call message UI 3 years ago
Ryan Zhao 0a3d84d5c8 WIP: Call message Ui improvements 3 years ago
Ryan Zhao e504e23f92 minor fix 3 years ago
Ryan Zhao e9f19b9c62 fix duplicated incoming call 3 years ago
Ryan Zhao 81dd4557a5 sync answer and end call message 3 years ago
Ryan Zhao d3a2b456f1 handle permission request for voice and video calls 3 years ago
ryanzhao dd891063bd minor fix 3 years ago
ryanzhao 95c8606408 deal with audio I/O change 3 years ago
ryanzhao 67f979e014 update icons 3 years ago
ryanzhao 716378ccd3 handle offer message might come in earlier than pre offer message 3 years ago
ryanzhao ee83523621 clean 3 years ago
ryanzhao 925bc8538c minor refactor on answering call logic 3 years ago
ryanzhao 02d0499618 seperate CallKit uuid from session call id 3 years ago
ryanzhao 9346864843 end call if there is no answer in 60s 3 years ago
ryanzhao fa79124bb7 minor refactoring & handle network change 3 years ago
ryanzhao 336c694b52 refactoring on showing call ip exposure 3 years ago
ryanzhao da14539639 handle busy 3 years ago
ryanzhao 18afb4ae1c fix call kit UI audio nor working 3 years ago
ryanzhao 248a02e1e9 minor fix 3 years ago
ryanzhao 9d42c73de1 disable add call 3 years ago
ryanzhao 2942168030 fix call kit not working when the screen is locked 3 years ago
ryanzhao ff79c58f44 update call message after a call ended 3 years ago
ryanzhao f019fe7733 use CallKit for all cases 3 years ago
ryanzhao 888df37581 fix call connection 3 years ago
ryanzhao bef20e2f9a refactor for CallKit 3 years ago
ryanzhao 6f78d6dfbe refactoring for CallKit 3 years ago
ryanzhao e530b50938 WIP: notification for voip call 3 years ago
ryanzhao 4db87992b2 refactor for voip push notification 3 years ago