Commit Graph

10333 Commits

Author SHA1 Message Date
Harry
a6664300d3
Remove a bunch of TSAttachment bridging in stories display 2024-04-25 10:21:57 -07:00
Max Radermacher
351ed2152f
Remove some unused profile manager methods 2024-04-25 12:21:25 -05:00
Harry
7bf53f305a
Remove some TSAttachment bridges 2024-04-25 10:21:13 -07:00
Harry
5b9fb46243
Delete CloneAsSignalAttachmentRequest, implement SignalAttachmentCloner 2024-04-25 10:20:27 -07:00
Harry
60795905d1
Fork+slight cleanup of VideoDurationHelper 2024-04-25 10:19:29 -07:00
Sasha Weiss
50e0e6a3ab
More aggressively mark group call records as .ringingAccepted 2024-04-24 12:25:24 -07:00
Sasha Weiss
c26ad8a4e5
Add an "inactive linked device" megaphone 2024-04-24 11:28:33 -07:00
Ehren Kret
70ac6f28d0 migrate NSString+SSK to swift 2024-04-24 09:26:12 -05:00
Ehren Kret
b753e0e6e2 move substring(Before|After)Range: to swift 2024-04-24 07:37:21 -05:00
Max Radermacher
d6aaa92ca3
Add DBWriteTransaction.addSyncCompletion 2024-04-23 15:49:03 -05:00
Max Radermacher
dd42e10e88
Smoosh together various places that fetch profiles 2024-04-23 15:22:37 -05:00
Max Radermacher
456f2037ee
Stop putting kLocalProfileUniqueId in addresses 2024-04-23 13:58:27 -05:00
Marissa Le Coz
4412a4763d
Add reaction send support for internal 2024-04-23 14:48:17 -04:00
Pete Walters
7ee4a1e48c
Add message backup zkparams 2024-04-23 11:16:14 -07:00
Ehren Kret
b489ab7353 remove unused swift to objc exports 2024-04-23 08:33:28 -05:00
Ehren Kret
f7582117d7 fix swiftlint warning 2024-04-23 08:19:14 -05:00
Ehren Kret
f1a74bd720 use screen scale for point dimensions 2024-04-23 08:15:02 -05:00
Ehren Kret
1dafc38d02 add missing format params 2024-04-23 07:58:23 -05:00
Ehren Kret
5068cd3782 finish migrating UIImage+OWS to swift 2024-04-23 07:47:47 -05:00
Ehren Kret
b31bdbc91a migrate resizedImageToSize: to swift 2024-04-22 22:01:29 -05:00
Ehren Kret
43748e64c3 remove unnecessary image normalization 2024-04-22 17:26:11 -05:00
Ehren Kret
f1ff2da960 migrate resizedImageToFillPixelSize: to swift 2024-04-22 17:26:11 -05:00
Ehren Kret
7b370f0602 remove unused resizedWithQuality:rate: method 2024-04-22 17:26:11 -05:00
Ehren Kret
0c554525f9 migrate normalizedImage to swift 2024-04-22 17:26:11 -05:00
Harry
b9413d882f
Move TSAttachment->SignalAttachment 'cloning' into dedicated class(es) 2024-04-22 15:16:41 -07:00
Ehren Kret
154132839f migrate validJpegDataFromAvatarData: to swift 2024-04-22 16:09:33 -05:00
Harry
cb0b0c666f
Dedupe private story send messages at creation time 2024-04-22 12:58:53 -07:00
Ehren Kret
672f8b9b5c move pixelWidth, pixelHeight, and pixelSize properties to swift 2024-04-22 14:31:13 -05:00
Jordan Rose
f78a4dfaa5 OWSChatConnection: disable shadowing requests under CC
The previous comment describes the planned behavior, but it isn't
actually working yet.
2024-04-22 10:01:13 -07:00
Jordan Rose
4afddfe93d
Add a RemoteConfig flag to turn off libsignal unauth request shadowing
It's not likely we'll need this, but just in case.
2024-04-22 10:00:54 -07:00
Jordan Rose
c3da50e5d5 OWSChatConnection: Bump the libsignal shadowing timeout to 3sec
Most requests on good networks happen well under 2sec, but there have
been a few timeouts that seem spurious (distinct from a series of
timeouts all happening in a row on the libsignal websocket).
2024-04-22 09:49:58 -07:00
Pete Walters
9dd6e3f8c1
Limit the number of gradient points for a TextAttachment 2024-04-22 11:52:00 -04:00
Ehren Kret
3b51f00f6a migrate two factory methods of UIImage+OWS to swift 2024-04-22 00:17:31 -05:00
Ehren Kret
e18aab9798 remove unused @objc attributes 2024-04-21 23:42:55 -05:00
Ehren Kret
ccf8bcc257 remove unused macro 2024-04-21 23:34:52 -05:00
Ehren Kret
039d2625b9 convert OWSMath.h to swift
OWSMath.swift overlaps somewhat with Math+OWS.swift but no worse than
OWSMath.h did previously. There are future refactoring efforts that
should occur there to use more of the extensions of Math+OWS.swift and
less of the extensions from OWSMath.swift
2024-04-21 23:26:16 -05:00
Ehren Kret
110a880d6c remove and disallow warnings in SignalServiceKitTests target 2024-04-21 09:55:30 -05:00
Ehren Kret
cd5b4c2b6a fix warning
This is a convenience initializer not a designated initializer
2024-04-20 13:35:00 -05:00
Ehren Kret
b3ecf6d071 fix warning 2024-04-19 23:41:47 -05:00
Ehren Kret
03aa10a6eb remove some simple to fix warnings 2024-04-19 23:36:23 -05:00
Ehren Kret
761bbb7f4e remove unused app readiness macros 2024-04-19 22:22:13 -05:00
Ehren Kret
81414d4e60 migrate DebugLogger to swift 2024-04-19 22:09:08 -05:00
Sasha Weiss
f1f4e6977d
Do away with ensureGroupIdMapping 2024-04-19 15:46:18 -07:00
Sasha Weiss
d8627324fa
Require a V2 group model for group creation 2024-04-19 15:37:45 -07:00
Jim Gustafson
218c6f4338
Support multi-recipient message sending
Co-authored-by: Max Radermacher <max@signal.org>
2024-04-19 16:46:09 -05:00
Max Radermacher
9a3edb9754
Compare credential times against requested times 2024-04-19 16:38:33 -05:00
Harry
ef2b8b56df
Copy paste methods only used in TSAttachmentMultisend 2024-04-19 14:28:08 -07:00
Harry
f2c112b5b5
Much ado about nothing 2024-04-19 14:27:05 -07:00
Harry
722331b9ab
Asyncify and simplify SharingThreadPickerViewController sending logic 2024-04-19 14:21:55 -07:00
Max Radermacher
b8c907a6de
Don’t reconcile badges unless they changed 2024-04-19 15:29:26 -05:00
Pete Walters
c9fb03a211
Add random IV to backup file 2024-04-19 13:11:43 -05:00
Pete Walters
f2f29ec9dd
Add padding to gzipped backups 2024-04-19 13:02:37 -05:00
Pete Walters
b58a7e0411
Change from Compression.framework to zlib 2024-04-19 12:39:44 -05:00
Harry
4921b0a083
Fix gifs redux 2024-04-19 10:12:10 -07:00
Max Radermacher
558a62dc2e
Download local avatar after Storage Service syncs 2024-04-18 17:43:41 -05:00
Sasha Weiss
df99ce0055
Post a Calls Tab notification when marking unended group calls as ended 2024-04-18 15:33:08 -07:00
Harry
ff772520c8
Fix animated stickers 2024-04-18 13:58:07 -07:00
Harry
f8f892af6a
Fix isAnimatedImage usage (gifs) 2024-04-18 11:32:20 -07:00
Pete Walters
ec9ce653a9
Joining by link can result in a group change action with a PNI 2024-04-18 13:30:25 -05:00
Max Radermacher
a241f40621
Fix a few build warnings 2024-04-17 19:11:13 -05:00
Max Radermacher
518398e2cd
Move RemoteMegaphoneFetcher to the Signal target 2024-04-17 19:10:49 -05:00
Max Radermacher
e9cdafcff4
Format sender certificate parameters correctly 2024-04-17 17:40:56 -05:00
Max Radermacher
b4325d543c
Clarify some confusing sender certificate code 2024-04-17 17:02:26 -05:00
Harry
26d85aa86c
Use provided auth's isPrimaryDevice in StorageServiceOperation instead of TSAccountManager 2024-04-17 13:07:16 -05:00
Max Radermacher
a7ec7fe131
Use version numbers that match the App Store 2024-04-17 12:49:20 -05:00
Pete Walters
37ee81baeb
Skip backing up default message expiration info. 2024-04-17 08:19:40 -05:00
Max Radermacher
bc74ec3953
Tweak or remove redundant/noisy info lines 2024-04-16 19:37:25 -05:00
Max Radermacher
2b85069f8e
Don’t use inheritance with CallService 2024-04-16 19:36:24 -05:00
Max Radermacher
ae75124475
Stop caching notification preview type 2024-04-16 19:35:19 -05:00
Harry
eb7c1a2563
Unify TSAttachmentMultisend sharesheet and main app methods 2024-04-16 16:23:34 -07:00
Max Radermacher
972bb6d37a
Tweak some info and warning lines 2024-04-16 18:10:49 -05:00
Max Radermacher
0b3fed060c
Reorganize fields on the Internal menu 2024-04-16 17:34:22 -05:00
Harry
de1cb662a1
Expose AttachmentUploadManager on deps bridge 2024-04-16 14:39:08 -07:00
Pete Walters
c8e9dcef62
Update some backup proto fields. 2024-04-16 11:36:31 -05:00
Alex Konradi
923314a147
Request new ZKC-based auth credential 2024-04-16 11:54:14 -04:00
Max Radermacher
a12ded917d
Update cdsi.proto to the latest version 2024-04-16 10:42:55 -05:00
Harry
e9c8d71a53
Rename BroadcastMediaMessageJob->TSAttachmentMultisendJob 2024-04-15 20:45:26 -07:00
Harry
d3362e2e77
Explicit compute vs cached value for TSResourceContentType metadata 2024-04-15 19:39:39 -05:00
Harry
7c1578f0db
Remove some easy-peasy TSAttachment usages 2024-04-15 19:37:30 -05:00
Harry
3c8d91b288
Define MediaGalleryAttachmentFinder 2024-04-15 14:38:59 -07:00
Harry
1eb1c377a2
Add receivedAtTimestamp to AttachmentReference 2024-04-15 14:38:20 -07:00
Max Radermacher
7b4598480b
Remove unused includeUuid query parameter 2024-04-15 16:18:50 -05:00
Harry
71e9d5571c
Remove now-unused TSResourceStore method 2024-04-15 09:45:37 -07:00
Harry
0be599960e
Add isVisualMedia equivalent to TSResourceStream 2024-04-15 09:44:57 -07:00
Harry
ec181d09b8
TSAttachment->TSResource cleanups 2024-04-15 09:44:21 -07:00
Marissa Le Coz
82752fcbd1
Add More button to Call Controls 2024-04-15 12:26:40 -04:00
Marissa Le Coz
4a638827e4
Remove old local member view 2024-04-15 12:25:33 -04:00
Harry
22209ec1a4
Use wrapped types in MediaGalleryResourceManager 2024-04-15 09:18:21 -07:00
Harry
6fdb7a2f5d
Protocolize MediaGalleryResourceManager 2024-04-15 09:17:11 -07:00
Harry
69c9dad519
Transparently wrap MediaGalleryRecordManager in MediaGalleryResourceManager 2024-04-15 09:16:45 -07:00
Harry
363868c46f
Expose wrapped types in MediaGalleryResourceFinder 2024-04-15 09:16:14 -07:00
Harry
4fca9517f4
Update a ton of CV code from TSAttachment->TSResource 2024-04-15 09:12:59 -07:00
Max Radermacher
73ad055674
Remove redundant phone numbers from OWSUserProfile 2024-04-12 22:22:49 -05:00
Max Radermacher
9ff799975f
Remove some unused code 2024-04-12 17:39:47 -05:00
Ehren Kret
f6f205b454 handle receiving a UIImage as public.image into the share extension 2024-04-12 13:43:55 -05:00
Pete Walters
425f7a5d3d
expose setProfileKeyData variant that doesn't do a fetch 2024-04-12 12:08:05 -05:00
Harry
d246764d58
Fix casting to TSAttachmentPointer 2024-04-12 10:01:47 -07:00
Harry
7108043338
Add more convenience types/methods for TSResourceReference 2024-04-12 08:00:58 -07:00
Ehren Kret
81d6bbc070 apply objective-c formatting utility 2024-04-11 22:19:16 -05:00
Ehren Kret
e9c97ba4c9 swift lint fixes 2024-04-11 22:19:16 -05:00
Ehren Kret
742d5bcec9 cleanup after MIMETypeUtil move completed 2024-04-11 22:19:16 -05:00
Ehren Kret
bdf6b9a4da remove MIMETypeUtil.h/m and finish swift conversion 2024-04-11 22:19:16 -05:00
Ehren Kret
cdc3dd6f11 remove unnecessary semicolon 2024-04-11 22:19:16 -05:00
Ehren Kret
89f131812c remove duplicate assignment 2024-04-11 22:19:16 -05:00
Ehren Kret
68fa68bcf2 cutover objc externed strings to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
4596c1d615 migrate two string constants to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
62954c6e49 migrate supported UTI type functions into swift 2024-04-11 22:19:16 -05:00
Ehren Kret
cf2a2c8148 move two more mime type util functions to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
9197f8ac8e move mimeTypeForFileExtension to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
7f90c41317 move conversion to uti type functions to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
72518cb6da add better decoration to MimeTypeUtil 2024-04-11 22:19:16 -05:00
Ehren Kret
1b3a47750f remove unused obj-c constants 2024-04-11 22:19:16 -05:00
Ehren Kret
3fe01cfc9e merge canMakeThumbnail and isVisualMedia into new function in swift 2024-04-11 22:19:16 -05:00
Ehren Kret
ed6cdb675a migrate isDefinitelyAnimated/isMaybeAnimated to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
de101a0c31 inline isAudio/isVideo/isImage/isBinaryData 2024-04-11 22:19:16 -05:00
Ehren Kret
b80ed0cdbf move getSupportExtension functions to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
1a87241194 migrate isSupported*File utility functions to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
1f05f4059c migrate isSupported mime type functions to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
ac7240a29d migrate generic extension to mime type dictionary to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
8ea47a44e2 migration supported extension to mime type dictionaries to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
76e90c3c05 decorate swift file 2024-04-11 22:19:16 -05:00
Ehren Kret
e220a1dde9 migrate generic mime type to extension map to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
99e21998f0 move animated and binary data mime type to extension dictionarys to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
47700c099a move supported mime types to extension maps to swift 2024-04-11 22:19:16 -05:00
Ehren Kret
fd94424be0 start migrating MIMETypeUtil to swift 2024-04-11 22:19:16 -05:00
Jordan Rose
582254c51a For testing, allow TLS proxies to use TCP for the outer connection
Invoke this non-recommended mode with URL username syntax of
"UNENCRYPTED_FOR_TESTING@my-proxy.net" (or more likely
"UNENCRYPTED_FOR_TESTING@my-dev-machine.local"). The connection to the
Signal servers is still secured by TLS; it's only the outer connection
from the client to the proxy that's now unauthenticated.
2024-04-11 17:08:19 -07:00
Jordan Rose
68901267fd OWSChatConnection: Improve shadowing logs
...mainly by including the original request ID, so they can be
correlated better.
2024-04-11 16:51:01 -07:00
Max Radermacher
761d328b48
Add vars for NotificationPresenter dependencies 2024-04-11 18:47:57 -05:00
Max Radermacher
5bad8c00e4
Use async-await for a few notification methods 2024-04-11 18:47:02 -05:00
Max Radermacher
d79865d1b9
Clean up some formatting in notification files 2024-04-11 18:46:10 -05:00
Max Radermacher
22c254eecd
Rename NotificationPresenter-related types 2024-04-11 18:45:25 -05:00
Max Radermacher
892b8833e0
Swiftify NotificationsProtocol 2024-04-11 18:42:33 -05:00
Max Radermacher
b5c90fb0ed
Always use #if for TESTABLE_BUILD & DEBUG 2024-04-11 18:41:25 -05:00
Pete Walters
102b8d3219
Backup AccountData 2024-04-11 16:24:01 -05:00
Harry
ae67a311ff
Replace foo as? TSAttachmentStream with foo.asResourceStream() 2024-04-11 13:46:40 -07:00
Harry
720b3f04db
Add convenience methods to TSResourcePointer 2024-04-11 13:54:20 -05:00
Max Radermacher
e82928b5e7
Move generated FeatureBuild constant 2024-04-11 12:42:57 -05:00
Harry
cae88b3c2e
Add convenience methods for fetching references and attachments 2024-04-11 09:32:05 -07:00
Harry
b63468b98b
Clean up MediaGalleryResourceFinder API 2024-04-11 09:30:36 -07:00
Harry
a6b2cd966f
Wrap MediaGalleryRecordFinder completely transparently in MediaGalleryResourceFinder 2024-04-11 09:29:47 -07:00
Harry
d9e54de6c4
Add wrapped Media Gallery types 2024-04-11 09:28:56 -07:00
Harry
c898c69ff6
Reorganize MediaGalleryFinder file with no code changes 2024-04-11 09:28:13 -07:00
Pete Walters
2c6cfd7f32
Clean up uses of AuthedAccount in profiles 2024-04-11 11:11:43 -05:00
Harry
80dd665843
Eliminate TSAttachment constructors from DebugUI and tests 2024-04-10 20:17:58 -07:00
Harry
dfaf09be1a
Download in IncomingContactSyncJobRecord without creating a TSAttachment 2024-04-10 20:17:18 -07:00
Elaine
72e812db96
Remove nicknames feature flag 2024-04-10 13:29:02 -06:00
Harry
086bc3775b
Add support for downloading transient attachments 2024-04-10 08:10:12 -07:00
Harry
2440a29d32
Set local master key if we have a PIN but no master key 2024-04-10 08:08:52 -07:00
Harry
dc1192b0ee
Rename IncomingGroupSyncJobRecord.attachmentId->legacyAttachmentId and make optional 2024-04-10 09:29:41 -05:00
Pete Walters
f7ba1643d6
Move story onboarding settings kvstore from view -> manager 2024-04-09 17:39:29 -05:00
Max Radermacher
585451a44b
Update notifications for unsealed edited messages 2024-04-09 16:30:55 -05:00
Harry
3c5682e653
Use TSResourceManager in story construction 2024-04-09 14:04:23 -07:00
Harry
d1e90cf097
Define AttachmentReference.OwnerBuilder 2024-04-09 14:03:26 -07:00
Harry
60738c592d
Move outgoing message attachment-owner proto building into respective managers 2024-04-09 14:02:53 -07:00
Harry
4fb5884c05
Build contact attachments from proto using TSResourceManager 2024-04-09 14:02:14 -07:00
Harry
8b7cb3d3e4
Add ContactShareManager 2024-04-09 14:01:37 -07:00
Harry
daf12dc7fd
Delete and reject incoming messages if attachment construction fails 2024-04-09 14:01:05 -07:00
Harry
c4b262536b
Fail parsing message params for transcripts if attachment builders fail 2024-04-09 14:00:15 -07:00
Harry
7049362a86
Delete and reject sent message transcripts if attachment construction fails 2024-04-09 13:59:44 -07:00
Harry
1d126c548a
Create MessageStickerManager 2024-04-09 13:59:01 -07:00
Harry
42d1aabb6c
Remove attachment-owner fields from MessageBuilder 2024-04-09 13:58:10 -07:00
Ehren Kret
02f736ec26 remove old NSItemProvider API usage 2024-04-09 10:48:17 -05:00
Elaine
bd3413b3eb
Sync Nicknames with Storage Service 2024-04-08 17:35:31 -06:00
Harry
8ef0ddf52e
Remove attachmentIds from MessageBuilder 2024-04-08 11:18:59 -07:00
Harry
5f6f340fad
When quoting a message with a v1 attachment, copy it as a v2 attachment 2024-04-08 11:18:03 -07:00
Harry
3e5f016915
Wrap EditManagerAttachments for v1 vs v2 2024-04-08 11:17:03 -07:00
Harry
d0a091a4f1
Add EditManagerAttachments 2024-04-08 08:43:39 -07:00
Harry
f7065ca3d1
Add LinkPreviewBuilder abstraction 2024-04-08 08:42:39 -07:00
Harry
1d4dd3ff9c
Add LinkPreview metadata for easy init 2024-04-08 08:41:29 -07:00
Harry
c5a71ed462
Clean up EditManager's final TSAttachment usage 2024-04-08 08:39:01 -07:00
Harry
4981aecba5
Reconcile EditMessage attachments 2024-04-08 08:37:21 -07:00
Max Radermacher
20783085bb
Replace SAMKeychain with direct keychain access 2024-04-05 21:50:00 -05:00
Max Radermacher
8cac7bccf8
Move StaleProfileFetcher into its own file 2024-04-05 20:12:46 -05:00
Max Radermacher
f1dd7f7bfd
Move SSK/Util/Profiles into SSK/Profiles/ 2024-04-05 20:09:40 -05:00
Max Radermacher
269e2cd972
Use streaming decryption for profile avatars 2024-04-05 20:08:42 -05:00
Max Radermacher
9e2d753bc0
Remove redundant profile avatar download triggers 2024-04-05 20:07:20 -05:00
Alex Konradi
b8d7683604
Reapply "Perform CDSI lookups via libsignal-net if flag set" 2024-04-05 20:06:55 -05:00
Max Radermacher
7a396ba9f7
Fix malformed request errors for long URLs 2024-04-05 20:05:17 -05:00
Marissa Le Coz
a2e56d74bf
Show incoming reactions in group calls for internal users 2024-04-05 19:21:33 -04:00
Max Radermacher
010b02bb6f
Add devices to recipients in both decryption paths 2024-04-05 16:59:03 -05:00
Sasha Weiss
2fcf2e9b78
Archive/restore username lookups if we have them 2024-04-05 13:47:03 -07:00
Sasha Weiss
517163db5c
Populate restored recipients into the SSA cache 2024-04-05 13:46:54 -07:00
Ehren Kret
b6d2d20a47 convert SignalAttachment compressVideoAsMp4 from promise to await 2024-04-05 15:25:13 -05:00
Max Radermacher
2eb55766f4 Revert "Perform CDSI lookups via libsignal-net if flag set"
This reverts commit c2798a9661.
2024-04-05 15:10:20 -05:00
Ehren Kret
90f61c96ad fix merge conflict 2024-04-05 15:06:53 -05:00
Alex Konradi
c2798a9661
Perform CDSI lookups via libsignal-net if flag set 2024-04-05 14:09:06 -05:00
Max Radermacher
c36ee0e631
Modernize error handling for file removal 2024-04-05 14:08:36 -05:00
Max Radermacher
52f13c3f14
Show “Deleted Account” for deleted accounts 2024-04-05 13:56:56 -05:00
Harry
9df9b17e7c
Add specific oversize attachment pointer proto initializer 2024-04-05 11:27:10 -07:00
Harry
39b1773c57
Return a v2 attachment instead of casting to Resource type 2024-04-05 11:26:33 -07:00
Harry
95326feaf2
Add some shim methods to EditManager 2024-04-05 11:25:56 -07:00
Harry
7eb91ee4ca
Combine back to back EditManager calls into one 2024-04-05 11:24:44 -07:00
Harry
fef8d8d109
Explicitly drop draft quoted replies for edits 2024-04-05 11:24:00 -07:00
Harry
9b49fd4abe
UnpreparedOutgoingMessage takes edits and builds the outgoing message later 2024-04-05 11:23:06 -07:00
Harry
90159be2ba
Split oversize text creation from media attachments 2024-04-05 11:20:51 -07:00
Harry
3380fc05df
Split UnpreparedOutgoingMessage init for edits, remove body media attachments 2024-04-05 11:19:13 -07:00
Elaine
659e897dc9
Allow nicknames to be saved and displayed 2024-04-05 09:35:57 -06:00
Harry
b4d6cf2670
Split oversize text from body media attachments in Unprepared message 2024-04-04 16:49:19 -07:00
Pete Walters
e76251c9d6
Remove unecessary finalize from ChunkedInputStream 2024-04-04 17:45:07 -05:00
Harry
c235c2b62a
Clean up EditMessageWrapper API 2024-04-04 15:31:59 -07:00
Harry
28a956937b
Add MessageEdits 2024-04-04 15:30:59 -07:00
Jordan Rose
e8eed60d35 Shadow successful unauth chat requests with a libsignal request
This will help identify scenarios where libsignal is deficient
compared to the current implementation.
2024-04-04 14:43:31 -07:00
Jordan Rose
32612376a9 OWSChatConnection: micro-optimization 2024-04-04 14:43:31 -07:00
Jordan Rose
70b3e6542b OWSChatConnection: remove unused variable 2024-04-04 14:43:31 -07:00
Jordan Rose
832fd61c82 OWSChatConnection: Simplify/consolidate request building 2024-04-04 14:43:31 -07:00
Harry
738a3bd199
Clean up EditManager API methods 2024-04-04 13:44:27 -07:00
Harry
63999b8dba
Give EditManager AttachmentStore and TSResourceManager 2024-04-04 13:43:43 -07:00
Harry
1b1fdccc2e
Add/Remove owner methods on AttachmentStore 2024-04-04 13:41:39 -07:00
Harry
2c2c839cd0
Clean up EditManager shims 2024-04-04 13:00:01 -07:00
Harry
741e52c119
Make EditManager a protocol + impl 2024-04-04 12:57:31 -07:00
Harry
24304e5d16
Throw on all attachment building errors 2024-04-04 12:56:42 -07:00
Harry
6acaf28187
Clean up PreparedOutgoingMessage 2024-04-04 12:55:20 -07:00
Harry
347b00b07a
Make TSMessage.hasRenderableContent safer 2024-04-03 13:28:45 -07:00
Harry
091e1e3e9b
Don't set body attachment ids on OutgoingStoryMessage 2024-04-03 13:28:13 -07:00
Harry
03cf9c22ff
Remove unused 'removeUnusedAttachments' method 2024-04-03 13:27:41 -07:00
Harry
3915fd14db
Use PreparedOutgoingMessage in MessageSender 2024-04-03 13:26:49 -07:00
Harry
ef97f3d8f1
Pre-upload contact syncs before sending 2024-04-03 13:26:05 -07:00
Harry
0b6fbed63e
Generate file extension for oversize text 2024-04-03 11:30:50 -07:00
Max Radermacher
f471dffa84
Clean up dependencies/ObjC in some calling types 2024-04-03 12:12:19 -05:00
Pete Walters
1ba87f9587
Clean up group state messaging around invites. 2024-04-02 18:38:09 -05:00
Harry
cc441abc16
Explicitly drop serialization support for OWSSyncContactsMessage 2024-04-02 14:24:10 -07:00
Max Radermacher
ec2866f576
Create PhoneNumberUtil instance for each test 2024-04-02 16:10:08 -05:00
Max Radermacher
b0d9c9cc87
Fix crash when using an unknown region 2024-04-02 16:08:58 -05:00
Sasha Weiss
330f510545
Push the ?? 0 for expiration seconds deeper into TSMessageBuilder 2024-04-02 14:05:03 -07:00
Harry
4abfa3ec8c
Remove legacy attachment Ids from new prepared message types 2024-04-02 15:51:15 -05:00
Max Radermacher
fa2c20067b
Format all version numbers the same way 2024-04-02 15:50:17 -05:00
Max Radermacher
fd27c212d5
Remove NSCoding conformance from SignalAccount 2024-04-02 13:52:16 -05:00
Max Radermacher
4cdae7175f
Stop using NSKeyedArchiver in SignalAccounts 2024-04-02 13:48:57 -05:00
Max Radermacher
ee490fbdf4
Standardize Contact nullability for primary/linked 2024-04-02 13:38:55 -05:00
Max Radermacher
c06d92f163
Split Contact & SystemContact 2024-04-02 13:37:36 -05:00
Max Radermacher
35a02b28d2
Don’t disambiguate numbers with the same label 2024-04-02 13:01:30 -05:00
Max Radermacher
638e4f9421
Simplify & stabilize system contact parsing 2024-04-02 12:54:03 -05:00
Max Radermacher
d2cc64ccf9
Clean up CallService object initialization 2024-04-02 12:20:57 -05:00
Harry
101f2982d0
Add separate transit tier encryption info 2024-04-02 09:57:59 -07:00
Harry
408be986d6
Group related cdn Attachment fields 2024-04-02 09:40:25 -07:00
Jordan Rose
b0de59f2e2 Remove required from every init that is not dynamically dispatched
This included:
- Removing unavailable inits wholesale if no longer `required`
- Marking a few classes `final` so they could continue using
  `Self(...)` rather than `OWSWhatever(...)`
2024-04-01 15:27:20 -07:00
Sasha Weiss
dbff017cde
Add better "unimplemented" handling for unrecognized frame types 2024-04-01 15:26:25 -07:00
Sasha Weiss
34f6206ad8
Generate models for Backup.proto using Wire 2024-04-01 15:04:24 -07:00
Harry
dd99474d04
Support transient in-memory uploads in AttachmentUploadManager 2024-04-01 12:32:39 -07:00
Elaine
dc71e48e2e
Add nickname record 2024-04-01 12:47:15 -06:00
Max Radermacher
0bde6b63bc
Fix a few small bugs in the calls tab 2024-04-01 12:26:16 -05:00
Max Radermacher
c864c949ee
Use shorter redactions & modern Swift regex syntax 2024-04-01 12:09:02 -05:00
Pete Walters
2b09546964
Stop filtering out messages with no expiration during backup creation 2024-04-01 11:02:02 -05:00
Pete Walters
8a2b1b57f2
Use the correct lookup id for sent receipt restore in backups 2024-04-01 11:01:39 -05:00
Harry Sanabria
67719290aa Fix albumMessageId on outgoing message attachments 2024-03-30 13:28:53 -07:00
Pete Walters
b365f6ffb8 Add missing TESTABLE_BUILD 2024-03-30 08:42:16 -05:00
Pete Walters
c83b75c95f
Add MessageBackupManager import call in registration step 2024-03-29 20:44:04 -05:00
Harry
85f08fdabe
Add TSResourceUploadManager and AttachmentUploadManager 2024-03-29 18:20:00 -07:00
Pete Walters
b1c3c14e68
Add dev-only backup restore option for registraion flow. 2024-03-29 19:18:06 -05:00
Max Radermacher
6927b97251
Clean up some payment model validation logic 2024-03-29 18:21:24 -05:00
Harry
3fce7676dc
Add row id fetcher to StoryStore/SDSCodableModel 2024-03-29 15:31:20 -07:00
Harry
a39308f9ab
Add reference enumeration to attachment store 2024-03-29 15:29:56 -07:00
Elaine
393a152a2b
Add more contact badges 2024-03-29 16:08:35 -06:00
Harry
16d810e9fa
Use TSResourceId in upload notifications 2024-03-29 14:44:00 -07:00
Harry
ca54b1d54f
rename UploadManager->TSAttachmentUploadManager 2024-03-29 15:43:41 -05:00
Harry
4ce5fbd7d9
Remove unsafe message getter from UnpreparedOutgoingMessage 2024-03-29 14:49:27 -05:00
Pete Walters
3ea62d8fc4
Add some logging around paymentAddressData and profile updates 2024-03-29 13:55:50 -05:00
Harry
f7b9b6f8bc
Be more efficient fetching all attachments for a message 2024-03-29 11:42:11 -07:00
Harry
164f19cfbe
Extend AttachmentDataSource to include copying existing attachments 2024-03-29 11:41:13 -07:00
Harry
600daabd6f
Build outgoing contact avatars using TSResourceManager 2024-03-29 11:36:11 -07:00
Harry
0e24aa35ff
Add edit message as an explicit type in the new message send preparers 2024-03-29 11:24:18 -07:00
adel-signal
eeb0658bb1
calling: update 1:1 calls to use new calling/relays endpoint 2024-03-28 10:59:08 -07:00
Jordan Rose
8f3b28c09c OWSChatConnection: percent-encode websocket request paths
The server decodes percent-escapes within these paths, so we should
leave them encoded, as URL provides by default.
2024-03-28 10:45:17 -07:00
Harry
71f06fc3c2
Remove OutgoingMessagePreparer from MessageSendJobQueue 2024-03-28 10:38:12 -07:00
Harry
03c726e99b
Use PreparedOutgoingMessage for sticker sends 2024-03-28 10:37:36 -07:00
Harry
b8c55601dd
Update a few simple callsites to use PreparedOutgoingMessage 2024-03-28 10:37:00 -07:00
Harry
4059335aac
Use PreparedOutgoingMessage for all transient message enqueuing 2024-03-28 10:36:24 -07:00
Harry
4119d9bd26
Use PreparedOutgoingMessage for gift badge sends 2024-03-28 10:35:42 -07:00
Harry
80961fc4d3
Use PreparedOutgoingMessage for contact share sends 2024-03-28 10:34:59 -07:00
Harry
0236ac4491
Use new PreparedOutgoingMessage in attachment multisend 2024-03-28 09:51:44 -07:00
Harry
038a5f0ac0
Accept PreparedOutgoingMessage in MessageSenderQueue 2024-03-28 09:50:02 -07:00
Harry
83e5d80dce
[RFC] Add (Prepared/Unprepared)OutgoingMessage definition 2024-03-28 09:26:59 -07:00
Max Radermacher
413e1411be
Call modern function for country names 2024-03-28 03:01:56 -05:00
Max Radermacher
2c1b883f5f
Don’t swallow profile decryption errors 2024-03-28 02:24:58 -05:00
Max Radermacher
2c2edb695a
Add checks for malformed payment addresses 2024-03-27 15:40:39 -05:00
Jordan Rose
2a01cbb2db Simplify IPv6 regex to accept invalid IPv4 addrs (like 900.000.01.1)
This is consistent with our handling of standalone IPv4 addresses,
which uses an even looser regex.
2024-03-27 12:45:10 -07:00
Jordan Rose
d0ef16998d Treat "0 bytes free" as "unknown", not "critically low on memory" 2024-03-27 11:51:53 -07:00
Jordan Rose
3df4d465fe Remove AtomicLock; it was just a simple wrapper around UnfairLock 2024-03-27 10:57:32 -07:00
Jordan Rose
e7068066c8 Fix unsafe @Atomic property wrapper 2024-03-27 10:57:32 -07:00
Jordan Rose
2727a70b90 Make AtomicValue's lock-sharing explicit
Also:
- Remove AtomicUInt's @objc, it's no longer used from ObjC
- Remove Codable conformances, they would implicitly use shared locks
  and weren't used in practice
2024-03-27 10:57:32 -07:00
Max Radermacher
0d8166682d
Run clang-format on SignalServiceKit/ files 2024-03-27 12:27:06 -05:00
Max Radermacher
e10faa8593
Remove src/ prefix from SignalServiceKit files 2024-03-27 12:22:52 -05:00
Sasha Weiss
c21511e52f
Add comments, organize, and standardize spacing in Groups.proto 2024-03-27 10:17:02 -07:00
Max Radermacher
be4cada92d
Clean up some info lines 2024-03-27 12:08:43 -05:00
Harry
f8213ccb38
Put the story message row id on OutgoingStoryMessage 2024-03-27 13:05:23 -04:00
Elaine
1a5bacd220
Create Nicknames View Controller 2024-03-27 10:38:03 -06:00
Harry
7f3ff959fb
Dont save OutgoingGroupUpdateMessage 2024-03-26 16:45:34 -07:00
Max Radermacher
517de6a9bd
Clean up some debug/verbose lines 2024-03-26 16:37:23 -05:00
Sasha Weiss
a1d91d8392
Rename isPlaceholderModel on TSGroupModel 2024-03-26 14:29:54 -07:00
Jordan Rose
377c340aa8
Asyncify ChatConnectionManager.makeRequest(_:) 2024-03-26 13:48:51 -07:00
Harry
9aa258b58c
Remove unneeded objc declarations on methods 2024-03-26 13:28:09 -07:00
Harry
8090e47a73
Use an explicit enum on MessageSenderJobRecord 2024-03-26 13:26:47 -07:00
Sasha Weiss
16f85e8a8a
Do away with UpsertGroupResult 2024-03-26 12:42:17 -07:00
Sasha Weiss
a6ad2a5c58
Remove the custom isEqual(_:comparisonMode:) from TSGroupModel 2024-03-26 12:41:45 -07:00
Sasha Weiss
0aeffe41d3
Remove always-true method param 2024-03-26 12:40:44 -07:00
Marissa Le Coz
257ca1b75b
Enable pip changes for Prod 2024-03-26 09:38:42 -07:00
Pete Walters
43901289ca
Decrypt/unzip backup files 2024-03-26 09:23:56 -05:00
Harry
1e1487b6bd
Use TSResourceStore everywhere for Story message attachments 2024-03-25 21:10:12 -07:00
Harry
2b23e1e38f
Separate DraftQuotedReplyModel from QuotedReplyModel 2024-03-25 21:09:39 -07:00
sashaweiss-signal
da4dd3dc0c Return nil instead of .unknown in early-exit from getOrCreateThreadForGroupChanges 2024-03-25 16:03:44 -07:00
Jordan Rose
95776b610f ChatConnectionManager: only expose state of identified connection
Nobody was using the unidentified connection, and also we expect the
unidentified connection to be allowed to go idle in a way the
identified one does not.
2024-03-25 14:20:58 -07:00
Jordan Rose
d84825a664 Remove OWSHTTPErrorWrapper
This was only used to bridge to ObjC, and all users are now in Swift.
2024-03-25 14:20:58 -07:00
Jordan Rose
18bcd5a635 OWSChatConnection: simplify RequestInfo helper class
- It's private, so none of its members need to be public.

- Having separate didSucceed and didFail methods results in
  duplication on the caller side. (This will be more important soon.)
2024-03-25 14:20:58 -07:00
Jordan Rose
53f12dff89 Don't check app expiry in OWSChatConnection, leave it to HTTPUtils
This was effectively being checked three times instead of just once.
2024-03-25 14:20:58 -07:00
Jordan Rose
ee5c0e37b8 Remove init from SSKWebSocket protocol
Web sockets are always constructed by a factory that knows what
concrete type is being instantiated.
2024-03-25 14:20:58 -07:00
Harry
23b961560c
Don't set albumMessageId on contact sync attachments 2024-03-25 11:10:02 -07:00
Harry
83fe46e62c
Build and fetch MessageSticker attachments using TSResourceManager 2024-03-22 18:17:25 -07:00
Harry
5ccabf61f7
Add ReferencedAttachment 2024-03-22 15:32:05 -07:00
Max Radermacher
301bd870ae
Save CallLinkAuthCredentials to the database 2024-03-22 16:59:22 -05:00
Max Radermacher
e26c9f6322
Move AuthCredential logic to its own class 2024-03-22 16:58:36 -05:00
Sasha Weiss
c6a51a66f0
Translate the PNI update source for accepting group invite to an ACI 2024-03-21 17:47:25 -07:00
Harry
fe3f5bae2f
Mark attachment id as legacy on StickerMessage 2024-03-21 17:08:48 -07:00
Max Radermacher
36c694ba3c
Remove unused FeatureFlag levels 2024-03-21 19:07:05 -05:00
Harry
360cc7e224
Add MessageSticker serialization test 2024-03-21 18:35:23 -05:00
Harry
129393e2a8
Push easy parts of OWSContact avatar logic into TSResourceStore/Manager 2024-03-21 14:49:50 -07:00
Harry
ac33fcfe24
Remove unused isProfileAvatar field 2024-03-21 14:46:37 -07:00
Harry
870d82d371
Add OWSContactSerializationTest 2024-03-21 14:45:53 -07:00
Harry
1df68c2b32
Remove link preview extension 2024-03-21 14:45:03 -07:00
Harry
06476138e0
Standardize Attachment creation callsites 2024-03-21 14:44:04 -07:00
Harry
5136c7dae3
Rename IncomingQuotedReplyReceiver->QuotedReplyManager 2024-03-21 14:06:29 -07:00
Pete Walters
1c65ecfbdd
Async-ify GroupsV2Impl 2024-03-21 15:51:22 -05:00
Max Radermacher
bf27cb8b33
Remove ObjC support from TSConstants 2024-03-21 13:45:29 -05:00
Max Radermacher
76be345901
Update to LibSignal v0.42.0 2024-03-21 13:45:15 -05:00
Max Radermacher
f6fcc0bb49
Fix inverted check 2024-03-21 13:44:25 -05:00
Max Radermacher
83ca18747b
Add parsing/encoding support for call links 2024-03-21 13:10:38 -05:00
Sasha Weiss
7c85428f7b
Add unit tests for CallRecordMissedCallManager 2024-03-21 11:07:36 -07:00
Sasha Weiss
2b791566d9
Mark calls as read when opening the relevant conversation 2024-03-21 10:18:40 -07:00
Sasha Weiss
1041070dd2
Move markAsRead into Swift for calls messages 2024-03-21 10:02:37 -07:00
Sasha Weiss
32a08b4ced
Include group call messages when looking for oldest unread message 2024-03-21 10:01:52 -07:00
Pete Walters
ac17e14d9f
Skip checking the upload progress on the first upload attempt. 2024-03-21 10:50:20 -05:00
Jordan Rose
a4bbe75320
Rename OWSWebSocket -> OWSChatConnection, SocketManager -> ChatConnectionManager
Plus some small cleanups in OWSChatConnection.
2024-03-20 16:36:20 -07:00
Max Radermacher
6dab037024
Fix optimized Xcode 14 build 2024-03-20 15:25:30 -05:00
Harry
fa3dfc924a
Move isVoiceMessage to OutgoingAttachmentInfo initializer 2024-03-20 11:27:05 -07:00
Harry
104facbaa6
Split OWSAttachmentInfo generation from quoted reply attachment cloning in AttachmentManager 2024-03-20 11:26:20 -07:00
Harry
7e1d8e0fca
Remove mimeType and sourceFilename from quoted reply info; fetch directly from the attachment everywhere 2024-03-20 11:25:12 -07:00
Harry
b6598a0248
Add OWSAttachmentInfoSerializationTest 2024-03-20 11:23:29 -07:00
Harry
1ad5804cd9
Move OwnedAttachmentBuilder abstraction up to TSResourceManager 2024-03-20 11:22:48 -07:00
Max Radermacher
b80cfa6019
Use async/await for GroupCallPeekClient 2024-03-20 12:23:20 -05:00
Sasha Weiss
3f686ef5e3
Move CallRecord+ConversationId into a mockable adapter 2024-03-20 08:57:59 -07:00
Max Radermacher
42c704a4e3
Remove some debug/verbose lines 2024-03-19 19:24:54 -05:00
Harry
48f631cbc6
Allow attachment builder finalizing to throw 2024-03-19 17:21:23 -07:00
Harry
b2d25a6e55
Migrate remaining link preview builders to LinkPreviewManager/TSResourceManager 2024-03-19 17:20:37 -07:00
Max Radermacher
d4b1e864ef
Clean up message queue batching 2024-03-19 18:25:02 -05:00
Marissa Le Coz
ee30ebb73c
Enable new CallMemberView and redesign for local call members 2024-03-19 19:22:08 -04:00
Max Radermacher
5e8f359c59
Use async/await in group call update code 2024-03-19 17:55:18 -05:00
Max Radermacher
76e0e865ad
Swiftify CallMessageHandler 2024-03-19 17:53:35 -05:00
Max Radermacher
a9d7496db7
Use a sort that’s actually stable for contact sync 2024-03-19 17:50:24 -05:00
Max Radermacher
2901729a2f
Don’t check unmatched system contacts for avatars 2024-03-19 17:40:06 -05:00
Max Radermacher
079b20ff66
Fix broken contact hash computation 2024-03-19 17:39:19 -05:00
Max Radermacher
b9e0c4bfde
Fix contact sync pruning for phone number hiding 2024-03-19 17:38:15 -05:00