Commit graph

1260 commits

Author SHA1 Message Date
Mikunj
d1e02848e6 Update friend request handling. 2019-07-24 09:20:33 +10:00
Niels Andriesse
234a2827b3 Fix release issues 2019-06-25 16:17:05 +10:00
Niels Andriesse
f32bb85ddc Remove snodes from a swarm if they failed repeatedly 2019-06-14 10:21:32 +10:00
Niels Andriesse
39c497f13d Clean up logging 2019-06-13 14:34:19 +10:00
Niels Andriesse
c040ea1e5e Clean up UI 2019-06-13 11:06:05 +10:00
Niels Andriesse
820b0829bb Merge LokiP2PManager & LokiP2PMessageHandler 2019-06-12 14:50:36 +10:00
Niels Andriesse
6cbacdcf52 Keep message sending parameters in one place 2019-06-12 12:36:27 +10:00
Niels Andriesse
b5677210d2 Remove unused parameter 2019-05-31 10:46:57 +10:00
Mikunj
4e704f2d68 Skip processing messages to ourself. 2019-05-29 12:40:47 +10:00
Mikunj
cda1c51b3c Updated to use LokiProfile proto. 2019-05-29 09:41:41 +10:00
Niels Andriesse
845c4f700a Fix crash 2019-05-28 15:00:18 +10:00
Niels Andriesse
1462a5cb6b Handle receiving of sender display name 2019-05-28 13:04:32 +10:00
Niels Andriesse
c60f4cda0d Include sender display name in messages 2019-05-28 11:47:46 +10:00
Niels Andriesse
34cd07f85b Clean 2019-05-28 10:04:28 +10:00
Niels Andriesse
f1bb306438 Add show seed button 2019-05-28 09:57:54 +10:00
Niels Andriesse
35f2354327 Show when a message was sent using P2P 2019-05-27 15:06:54 +10:00
Niels Andriesse
a11074ba5a Fix crash 2019-05-27 13:11:25 +10:00
Niels Andriesse
0337695c15 Add comment 2019-05-27 12:57:21 +10:00
Mikunj
58a1c82bfb Don't fail debug on unknown content type.
The desktop messenger has some messages which will not set anything on the envelope.
2019-05-27 11:26:28 +10:00
Mikunj
482721a2c2 Merge branch 'dev' into p2p 2019-05-27 10:24:35 +10:00
Mikunj
88afca30c6 Moved P2P logic to LokiP2PManager. 2019-05-27 09:50:37 +10:00
Mikunj
af6a969653 Very iffy ping logic - May not work 2019-05-24 16:26:58 +10:00
Niels Andriesse
22623815bb Enforce naming convention 2019-05-24 16:25:25 +10:00
Niels Andriesse
cbac37a95f Fix friend request UI bugs 2019-05-24 16:23:27 +10:00
Mikunj
455c8c520b More pinging logic 2019-05-24 16:07:00 +10:00
Mikunj
7f679ba5ed Added P2P pinging logic. 2019-05-24 15:20:49 +10:00
Niels Andriesse
33a5e59415 Clean 2019-05-24 12:15:31 +10:00
Niels Andriesse
96c02864c8 Improve logging 2019-05-24 11:36:26 +10:00
Niels Andriesse
1fafa550f0 Fix message sending error handling 2019-05-24 11:24:27 +10:00
Mikunj
05737cde53 Merge commit 'b20ac237b23e9582cead41693428c346f2bc95cb' into p2p 2019-05-24 09:37:07 +10:00
Mikunj
f084c804c5 Fix ttl not being in milliseconds. 2019-05-23 16:24:58 +10:00
Niels Andriesse
ab06a1362e Update isCalculatingPoW on send failure 2019-05-23 16:15:04 +10:00
Mikunj
80911787e6 Fix incorrect ttl. 2019-05-23 15:50:37 +10:00
Mikunj
bf1c2f4327 Send to p2p server first before falling back to storage server. 2019-05-23 13:39:31 +10:00
Mikunj
2694699e4e Added LKAddressMessage.
Hooked up p2p api.
2019-05-23 12:17:40 +10:00
Niels Andriesse
1796fd8e60 Prepare for P2P logic integration 2019-05-22 16:04:51 +10:00
Niels Andriesse
24dd8335de
Merge pull request #18 from loki-project/p2p
P2p server
2019-05-22 14:32:09 +10:00
Niels Andriesse
20472c8bed Fix minor code style issues 2019-05-22 14:29:59 +10:00
Mikunj
8c8f6231a5 Fix ttl not being set in friend requests. 2019-05-22 13:24:13 +10:00
Niels Andriesse
08aac18384 Clean more 2019-05-22 13:09:01 +10:00
Mikunj
b5cc66262d Added ttl property on TSOutgoingMessage.
Use this ttl value when sending a message.
2019-05-22 13:00:32 +10:00
Niels Andriesse
dac9b28162 Clean 2019-05-22 12:43:37 +10:00
Niels Andriesse
638cb62f5a Fix build 2019-05-22 12:29:14 +10:00
Niels Andriesse
e1d2c48c9b Integrate swarm changes into message sending code 2019-05-22 12:24:20 +10:00
Niels Andriesse
1c73cf5114 Re-order files 2019-05-21 11:40:29 +10:00
Niels Andriesse
4c33fa257a Fix incorrect logic in OWSMessageManager 2019-05-21 09:53:10 +10:00
Niels Andriesse
5622c08124 Fix crash & clean 2019-05-21 09:09:48 +10:00
Niels Andriesse
740291cceb Implement message friend request status
Untested
2019-05-20 16:36:22 +10:00
Niels Andriesse
78fbcf28bb Slightly simplify friend request removal 2019-05-20 15:36:42 +10:00
Niels Andriesse
4a633fba68 Debug friend request expiration 2019-05-20 14:52:26 +10:00
Mikunj
3d7bd6b895 Fix incorrect function name.
Refactor fixes.
2019-05-20 13:30:08 +10:00
Mikunj
fdff5d8487 Add friend request message discarding. 2019-05-20 13:01:04 +10:00
Niels Andriesse
bab8cebc3f Fix crash 2019-05-20 12:39:11 +10:00
Niels Andriesse
6adc8cf014 Add isFriendRequestExpired flag 2019-05-20 12:31:21 +10:00
Niels Andriesse
201b8095ee Merge branch 'master' into message-expiration 2019-05-20 11:42:53 +10:00
Niels Andriesse
7493e037c9 Fix minor code style issues 2019-05-20 11:20:03 +10:00
Mikunj
f1cbc2e0d1 Added friend request message expiration. 2019-05-20 11:18:24 +10:00
Niels Andriesse
2e8d62b3ee Fix friend request acceptance bug 2019-05-17 14:03:04 +10:00
Niels Andriesse
64f92d261b Refactor 2019-05-17 13:37:36 +10:00
Niels Andriesse
d5dc54af1b Partially fix UI updating bug 2019-05-17 12:38:36 +10:00
Niels Andriesse
23766848b8 Attempt to fix UI updating issue 2019-05-17 12:19:52 +10:00
Niels Andriesse
7dc2416873 Make sure isFriendRequest is always true for OWSFriendRequestMessages 2019-05-17 12:07:29 +10:00
Niels Andriesse
4c6d09aa29 Handle friend request messages before they're discarded by Signal 2019-05-17 11:39:54 +10:00
Niels Andriesse
a8633ff739 Merge branch 'master' of github.com:loki-project/loki-messenger-ios 2019-05-17 10:20:31 +10:00
Niels Andriesse
4d94346959 Fix minor logic issue & document friend request handling 2019-05-17 10:20:18 +10:00
Mikunj Varsani
c43295eb7c
Loki session reset (#14)
* Added session reset.

* Hooked up session reset internals to UI.

* Send empty message when we have received an end session message.

* Verify incoming PreKeyWhisperMessage.

* Fix indentations in SessionReset.md
2019-05-17 10:11:06 +10:00
Niels Andriesse
7faa9d333c Add missing save 2019-05-16 15:32:43 +10:00
Niels Andriesse
b6cef5826e Fix build 2019-05-16 14:34:03 +10:00
Niels Andriesse
be7724b41b Implement feedback 2019-05-16 14:31:53 +10:00
Niels Andriesse
3728638832 Reduce code duplication & fix cell sizing bug 2019-05-16 12:20:56 +10:00
Niels Andriesse
3161680432 Redo friend request handling 2019-05-16 12:08:37 +10:00
Niels Andriesse
49c6611d9d WIP 2019-05-15 16:48:16 +10:00
Niels Andriesse
cb1e876b7a Make friend request status updates more reliable 2019-05-15 11:19:33 +10:00
Niels Andriesse
b83766ef74 Clean & fix conversation settings crash 2019-05-14 15:54:39 +10:00
Niels Andriesse
e3e7788219 Disable input if a friend request is pending 2019-05-14 13:39:07 +10:00
Mikunj
f8de85ac42 Fix deadlock crash when receiving PreKeyBundle message.
It was deadlocking because we had a transaction inside another transaction.
To stop this we can pass in the parent transaction when setting or removing bundles, as well as generating PreKeyBundle from the proto message.
2019-05-14 12:33:48 +10:00
Mikunj
8fff98d94e Save prekey bundle from content message. 2019-05-14 09:24:20 +10:00
Mikunj
ea7205ce76 Discard PreKeyBundle once session has been built. 2019-05-14 09:24:20 +10:00
Mikunj
705e5f939d Set pre key bundle in FriendRequestMessage and EndSessionMessage.
Updated PreKey Operations to not contact signal servers.
2019-05-14 09:24:20 +10:00
Niels Andriesse
4da8d33932 Clean 2019-05-10 13:38:00 +10:00
Niels Andriesse
b42ae83538 Fix validation 2019-05-10 11:38:48 +10:00
Niels Andriesse
2b490b5ad5 Use MessageFetcherJob for message receiving & fix decoding bug 2019-05-10 11:17:09 +10:00
Mikunj
787e2c1cb7 Send correct data to storage server.
Data -> Envelope -> WebSocket
2019-05-09 16:44:30 +10:00
Mikunj
09157673fe Added friend request states in TSThread.
Automatically send a OWSFriendRequest if we are not friend with the person.
2019-05-09 14:00:40 +10:00
Mikunj
8b1d5ec26d Add OWSFriendRequestMessage.
Re-organised files.

This is just a subclass of TSOutgoingMessage so it will work as any message would.
2019-05-09 12:19:12 +10:00
Niels Andriesse
2092df955a Generate mock notification upon successful message retrieval 2019-05-08 15:19:01 +10:00
Mikunj Varsani
ab00bd54b9 Fixes 2019-05-08 14:23:54 +10:00
Niels Andriesse
574c72523b Fix typo 2019-05-08 14:17:24 +10:00
Niels Andriesse
bae617c3ba Merge branch 'master' of github.com:loki-project/loki-messenger-ios into fallback-cipher-decrypt 2019-05-08 14:04:40 +10:00
Niels Andriesse
a9a9800dd2 Fix duplicate error unwrapping 2019-05-08 14:01:23 +10:00
Mikunj Varsani
24aabb36b9 Forgot to add checking for friend request in OWSMessageManager. 2019-05-08 13:33:47 +10:00
Mikunj Varsani
a743698386 Hooked up message send success and failure to LokiAPI.
Converted objective c functions from callbacks to promise in LokiAPI
2019-05-08 12:37:38 +10:00
Mikunj Varsani
f8a7c40914 Add decryption of friend request message type. 2019-05-08 11:03:35 +10:00
Niels Andriesse
a1c760965a Fix Obj-C interop issue 2019-05-08 10:36:00 +10:00
Mikunj Varsani
93ceda851c Merge branch 'master' into fallback-cipher 2019-05-08 09:40:44 +10:00
Niels Andriesse
44b6a9567b Refactor Loki API 2019-05-08 09:29:07 +10:00
Mikunj
f530472a26 Added FallBackSessionCipher. 2019-05-07 16:32:03 +10:00
Niels Andriesse
d05b4aa2bf Make Mikunj happy 2019-05-07 13:53:31 +10:00
Niels Andriesse
f0566d2b05
Merge pull request #9 from loki-project/messaging-refactor
Minor Refactoring
2019-05-07 13:17:37 +10:00
Niels Andriesse
a3c92d98c0 Create JSON type 2019-05-07 13:15:48 +10:00
Mikunj
19491ccbc4 Minor fix when generating messages to send. 2019-05-07 12:02:57 +10:00
Niels Andriesse
72cc345734 Hook up new messaging API 2019-05-07 11:56:00 +10:00
Niels Andriesse
294d8b5c11 WIP 2019-05-07 11:34:35 +10:00
Mikunj Varsani
512b71a9d4
Merge branch 'master' into proof-of-work-ui 2019-05-06 17:01:43 +10:00
Mikunj
bee85caa14 Improved naming. 2019-05-06 16:14:51 +10:00
Niels Andriesse
ee2361b5cc Hook up Loki messaging API 2019-05-06 16:13:32 +10:00
Mikunj
f8cccd8967 Show spinning cog if we are calculating the proof of work. 2019-05-06 16:12:14 +10:00
Mikunj
598226d58e Fix incorrect function signature. 2019-05-06 14:58:03 +10:00
Niels Andriesse
ca820494dd Merge branch 'message-proof-of-work' of github.com:loki-project/loki-messenger-ios into message-proof-of-work 2019-05-06 14:28:17 +10:00
Niels Andriesse
dd18e65e3e Fix minor code style issues 2019-05-06 14:23:44 +10:00
Mikunj
e4d612a58e Only send message to the primary device.
Fail send if sending message to self.

We do this because loki doesn't support multi-device sending at the moment.
2019-05-06 14:22:34 +10:00
Mikunj
ad0fc7944e Made ProofOfWork work in objective c.
Added proof of work calculation when sending message.
2019-05-06 13:53:39 +10:00
Matthew Chen
4060bf0ca4 Add Pinterest link previews. 2019-04-22 16:37:09 -04:00
Michael Walker
11af22432d Add pinterest domain and asset domains for link preview support 2019-04-22 16:36:44 -04:00
Michael Kirk
21cffdfb5e always specify default when accessing bool preference 2019-04-10 14:32:53 -06:00
Michael Kirk
30266bf65e autoformatted 2019-04-04 13:44:42 -06:00
Michael Kirk
64a0c4bfaa auto-migrate to Swift5 2019-04-04 13:44:42 -06:00
Michael Kirk
2242dd240f Fix "blank notification text" for oversize messages 2019-03-29 13:31:27 -06:00
Matthew Chen
81e3dfc3cf Respond to CR. 2019-03-27 12:36:39 -04:00
Matthew Chen
bb1921afe6 Simplify link preview cache. 2019-03-27 12:35:47 -04:00
Matthew Chen
04b60677a6 Simplify link preview cache. 2019-03-27 12:35:47 -04:00
Matthew Chen
ae5cee2167 Clean up the link preview cache. 2019-03-27 12:35:47 -04:00
Matthew Chen
df4cf5c09e Respond to CR. 2019-03-18 14:24:33 -04:00
Matthew Chen
fed4899c8d Handle incoming attachments with missing MIME type. 2019-03-18 14:14:20 -04:00
Matthew Chen
c180d20dcd Store media size from attachment pointer protos. 2019-03-18 14:14:20 -04:00
Matthew Chen
c37f425d5f Reduce logging. 2019-03-15 16:27:08 -04:00
Matthew Chen
10383783e3 Respond to CR. 2019-03-11 23:33:25 -04:00
Matthew Chen
d84e0eead9 Respond to TIOLI feedback from https://trello.com/c/ntO5hBbl/4161-prs-for-michael-to-review 2019-03-11 23:29:55 -04:00
Michael Kirk
870caaa84a simplify completion checking - make nonnull 2019-02-26 10:06:52 -07:00
Matthew Chen
5eaeeff838 Use content proxy to configure all proxied content requests. 2019-02-26 10:54:35 -05:00
Michael Kirk
7e5256856c render media+longText message 2019-02-25 13:27:49 -07:00
Michael Kirk
bc4260b444 Send long-text with other attachments 2019-02-25 13:27:49 -07:00
Matthew Chen
5f0de5c36d Respond to CR. 2019-02-21 15:21:00 -05:00
Matthew Chen
6ef65ad9d6 Send and process 'recipient update' sync messages. 2019-02-21 15:13:31 -05:00
Matthew Chen
bb7d328267 Send and process 'recipient update' sync messages. 2019-02-21 15:13:31 -05:00
Matthew Chen
e27e27cc3a Send and process 'recipient update' sync messages. 2019-02-21 15:13:31 -05:00
Matthew Chen
4f19d03bdc Send 'sent update' sync messages. 2019-02-21 15:13:31 -05:00
Matthew Chen
6ce84e7f9b Process 'sent update' transcripts. 2019-02-21 15:13:31 -05:00
Matthew Chen
ccc1bd3331 Process 'sent update' transcripts. 2019-02-21 15:13:31 -05:00
Matthew Chen
907159f3f4 Process 'sent update' transcripts. 2019-02-21 15:13:31 -05:00
Matthew Chen
9402e088b2 Apply design feedback from Myles. 2019-02-21 14:16:31 -05:00
Michael Kirk
cdb8663c81 fix up selecting after url case 2019-02-20 09:38:52 -07:00
Michael Kirk
6d6d076c08 Use correct cache for LinkPreviewDraft, add stricter typing to help avoid similar issues. 2019-02-20 09:38:52 -07:00
Michael Kirk
467dde2bc9 Try to avoid generating link previews while user is actively editing the URL 2019-02-20 09:38:52 -07:00
Michael Kirk
a1b412c704 Fix "missed calls" not sorting threads
Ensure we touch thread after saving *any* interaction
2019-02-12 15:51:20 -07:00
Matthew Chen
ea547fa46a Merge tag '2.35.0.12' 2019-02-04 13:15:30 -05:00
Matthew Chen
f575c0f100 Add fbcdn.net to link previews media whitelist. 2019-02-04 12:36:03 -05:00
Michael Kirk
d88ffc4775 Notification titles for iOS10+ 2019-02-04 10:35:17 -07:00
Matthew Chen
1dbb9849c5 Remove 'message receipt ordering' logging. 2019-02-04 10:43:25 -05:00
Matthew Chen
bb46720898 Add logging around socket ordering. 2019-02-04 09:39:09 -05:00
Michael Kirk
c2aee429b1 move ContactsManager to local dependency 2019-02-01 17:44:14 -07:00
Matthew Chen
63a5de1852 Add logging around socket ordering. 2019-02-01 17:33:09 -05:00
Matthew Chen
867efb62ff Respond to CR. 2019-01-31 15:48:50 -05:00
Matthew Chen
6b3fe04537 Use connection property for errors in message receiver. 2019-01-31 15:48:50 -05:00
Matthew Chen
70185dd872 Batch outgoing ICE updates. 2019-01-31 15:48:50 -05:00
Matthew Chen
6b5952abda Move work off main thread. 2019-01-31 15:48:50 -05:00
Matthew Chen
4feb0011d7 Reduce logging. 2019-01-31 15:48:50 -05:00
Matthew Chen
77396e11fd Send sync messages with link previews preference. 2019-01-29 16:27:39 -05:00
Matthew Chen
6d967cb31d Fix 'link preview prefs taint cache' issue. 2019-01-29 10:43:09 -05:00
Matthew Chen
b0704074b9 Rework quoted attachments. 2019-01-28 10:28:26 -05:00
Matthew Chen
0ce9d1a858 Always re-encode link preview images as JPEG even if they don't need to be resized. 2019-01-25 15:33:58 -05:00
Matthew Chen
c68eee5bfe Accept newlines in link preview titles. 2019-01-25 12:57:17 -05:00
Matthew Chen
957a733838 Yet more link preview refinements. 2019-01-25 11:33:09 -05:00
Matthew Chen
b48d5fbcf0 Revise link preview domain whitelists. 2019-01-25 09:46:25 -05:00
Matthew Chen
f174d5be62 Clean up link previews. 2019-01-24 17:26:39 -05:00
Matthew Chen
4c5b9001c3 Elaborate the link preview tests. 2019-01-24 16:51:39 -05:00
Matthew Chen
2e9f2e6154 Elaborate the link preview tests. 2019-01-24 16:17:31 -05:00
Matthew Chen
090dd1f523 Use NSDataDetector to extract URLs for link previews. 2019-01-24 16:01:00 -05:00
Matthew Chen
744d3074ac Fix link preview tests. 2019-01-24 14:34:31 -05:00
Matthew Chen
e4d5926b30 Resize link preview images if necessary. 2019-01-24 13:30:54 -05:00
Matthew Chen
9149282e94 Resize link preview images if necessary. 2019-01-24 13:28:54 -05:00
Matthew Chen
9b33d70d7b Constrain max size of link preview image. 2019-01-24 13:06:22 -05:00
Matthew Chen
e172eeff0e Link preview preference should only affect outgoing link previews. 2019-01-24 08:54:07 -05:00
Matthew Chen
23980152fc Segment proxied content downloads. 2019-01-24 08:51:25 -05:00
Matthew Chen
635b5740ac Add missing domain to link preview whitelist. 2019-01-23 13:17:23 -05:00
Matthew Chen
e2747dc702 Fix glitch in link loading. 2019-01-23 13:17:23 -05:00
Matthew Chen
b002c0c9e1 Refine link parsing and validation logic. 2019-01-23 13:17:23 -05:00
Matthew Chen
a7d848ef7c Add missing nullability annotations. 2019-01-23 13:12:43 -05:00
Matthew Chen
7e9c3b2dac Clean up all message attachments. 2019-01-23 10:01:16 -05:00
Matthew Chen
7d4e89daac Discard link previews if incoming message has attachments. 2019-01-23 09:59:48 -05:00
Matthew Chen
3d757b492a Add link previews to conversation message bubbles. 2019-01-23 09:32:30 -05:00
Matthew Chen
0569ed3f59 Respond to CR. 2019-01-23 09:24:30 -05:00
Matthew Chen
f73f100717 Link preview temp files. 2019-01-23 09:22:16 -05:00
Matthew Chen
c57b0d98cb Add link previews setting. 2019-01-23 09:17:13 -05:00
Matthew Chen
f37aacca85 Respond to CR. 2019-01-22 10:17:11 -05:00
Matthew Chen
2dcc79fbca Fix issues around link previews. 2019-01-22 10:15:50 -05:00
Matthew Chen
6e044675ac Respond to CR. 2019-01-22 09:42:25 -05:00
Matthew Chen
8e44bf554c Respond to CR. 2019-01-22 09:42:25 -05:00
Matthew Chen
d775a70a89 Build link previews. 2019-01-22 09:42:25 -05:00
Matthew Chen
31ea64bdaf Build link previews. 2019-01-22 09:42:25 -05:00
Matthew Chen
f13c1de738 Respond to Cr. 2019-01-15 10:36:21 -05:00
Matthew Chen
55376975f5 Add link preview parsing and validation logic. 2019-01-14 17:06:47 -05:00
Matthew Chen
45b93cc4b4 Respond to CR. 2019-01-14 16:44:18 -05:00
Matthew Chen
a477e01a4a Apply LinkPreview model. 2019-01-14 16:20:54 -05:00
Matthew Chen
4eb05e369d Add LinkPreview model. 2019-01-14 16:20:54 -05:00
Matthew Chen
63260ee94d Fix registration. 2019-01-08 15:38:08 -05:00
Matthew Chen
46b0cdb872 Caution around group avatars. 2019-01-07 12:47:15 -05:00
Matthew Chen
78d0685cba Discard transient messages if there is no session. 2019-01-07 08:49:31 -05:00
Michael Kirk
432af13b63 Fix timer update message.
This was broken in 5671fd252 while resolving merge conflicts from applying the
sortId changes.
2019-01-04 10:57:13 -07:00
Matthew Chen
449633e0dc Respond to CR. 2019-01-04 09:19:41 -05:00