Commit graph

2475 commits

Author SHA1 Message Date
Niels Andriesse f88a0f3c1f Update message sending logic for new multi device API 2019-09-24 10:08:56 +10:00
Niels Andriesse 9a9cefd4ec Finish linking request validation 2019-09-24 10:08:56 +10:00
Niels Andriesse 8429fc3536 Partially implement linking request validation 2019-09-24 10:08:49 +10:00
Niels Andriesse 800af8e08b Add missing check 2019-09-23 14:32:01 +10:00
Niels Andriesse 6ff9337d32 Implement linking request authorization UI 2019-09-23 14:20:03 +10:00
Niels Andriesse c05c12c7d2 Implement device linking message receiving 2019-09-23 13:42:58 +10:00
Niels Andriesse 8bdcbc6e40 Update protobuf layout 2019-09-23 13:16:51 +10:00
Niels Andriesse 980c1158b9 Add TODO 2019-09-23 10:49:41 +10:00
Niels Andriesse 275e8dec16 Clean 2019-09-23 10:45:51 +10:00
Niels Andriesse 21c5875ef5 Fix database usage 2019-09-23 10:35:31 +10:00
Niels Andriesse 0ac2aaf8bb Don't time out 2019-09-23 10:03:38 +10:00
Niels Andriesse a604ba5646 Start implementing device linking UI 2019-09-20 15:53:24 +10:00
Niels Andriesse da2d18f0fc Start integrating LokiDeviceLinkingSession 2019-09-20 14:26:29 +10:00
Niels Andriesse d5d6d65b5c Fix build 2019-09-20 14:11:46 +10:00
Niels Andriesse 10a6c5e2ea Further build out API 2019-09-20 14:08:35 +10:00
Niels Andriesse 7fe7245c64 Refactor 2019-09-20 11:42:10 +10:00
Niels Andriesse ad896a1275 Merge approaches 2019-09-20 10:59:20 +10:00
Niels Andriesse 374bcbc997 Re-order files 2019-09-20 10:23:25 +10:00
Niels Andriesse 636c77c9d6 Merge branch 'multi-device' of github.com:loki-project/loki-messenger-ios into multi-device-integration 2019-09-20 10:11:09 +10:00
Niels Andriesse 4d3f95b69f Merge branch 'dev' into multi-device-database 2019-09-19 16:14:18 +10:00
Niels Andriesse 34eca6c820 Split into LokiDeviceLinkingSession & LokiAPI+MultiDeviceAPI 2019-09-19 16:05:59 +10:00
Niels Andriesse 143755ae8e Implement basic linking request listening logic 2019-09-19 10:54:40 +10:00
Niels Andriesse b2ea98fb97 Implement basic multi device message sending 2019-09-19 10:31:07 +10:00
Niels Andriesse d132b1c4f1 Stub LokiDeviceLinkingAPI 2019-09-19 10:03:08 +10:00
Niels Andriesse fc131cf3ec Increase message send retry limit 2019-09-18 16:59:11 +10:00
Niels Andriesse 182d8b90b9 Reduce group chat batch size 2019-09-18 15:49:04 +10:00
Niels Andriesse 5f1e48944c Fix message ordering 2019-09-18 15:45:50 +10:00
Mikunj 1ba0a170c1 Added database extensions. 2019-09-18 13:26:22 +10:00
Niels Andriesse 30061b28b2 Fix link previews 2019-09-18 11:31:25 +10:00
Niels Andriesse d6e499bd9a Switch onboarding seed step and display name step 2019-09-18 11:09:09 +10:00
Niels Andriesse 0743fbf855 Refactor 2019-09-17 16:51:38 +10:00
Niels Andriesse e68dbe306d Remove unneeded debug assertions 2019-09-17 10:26:22 +10:00
Niels Andriesse d4f026f6c8 Undo accidental changes 2019-09-17 09:59:09 +10:00
Niels Andriesse 4d5c12ad6e Fix UI glitch 2019-09-17 09:56:47 +10:00
Niels Andriesse bd309c4f6f Clean 2019-09-16 16:36:17 +10:00
Mikunj 6c742349bd Added link previews for outgoing messages.
Refactoring.
Moved link preview generation to messages.
2019-09-16 15:56:03 +10:00
Mikunj ac3cb695bb Clean up link preview on incoming messages. 2019-09-16 14:53:31 +10:00
Mikunj 815c8a97fb Added incoming gif previews 2019-09-16 14:45:24 +10:00
Niels Andriesse a9926f91c9 Undo accidental commit 2019-09-12 15:07:15 +10:00
Niels Andriesse af39b35da7 Clean & implement moderator tags UI 2019-09-12 15:06:20 +10:00
Mikunj f0fda330de Removed old moderator logic. 2019-09-12 14:10:52 +10:00
Mikunj cd6ad75ee6 Added new moderator polling. 2019-09-12 14:10:52 +10:00
Niels Andriesse 295bc57a99 Include public key with display names 2019-09-12 11:22:42 +10:00
Niels Andriesse d780c95683 Merge branch 'dev' of github.com:loki-project/loki-messenger-ios into bug-fix 2019-09-12 10:02:15 +10:00
Niels Andriesse f205767b98 Implement sending quotes in group chats 2019-09-11 14:07:51 +10:00
Niels Andriesse 5569e87485 Implement receiving quotes in group chats 2019-09-11 11:53:47 +10:00
Mikunj f7039809a7 Stop polling upon deleting group chat.
Also don't create poller if thread has been deleted.
2019-09-11 10:40:17 +10:00
Niels Andriesse 1338fcda21 Clean 2019-09-10 13:26:58 +10:00
Mikunj 47d5b9bda4 Fix case where user doesn't accept friend request automatically after deleting the conversation. 2019-09-10 09:59:10 +10:00
Mikunj aed740ea3e Merge commit 'dd7e325d39d51662fa8af39b756475300e4b85b4' into profile-icons 2019-09-10 09:14:44 +10:00
Niels Andriesse dd7e325d39 Fix desktop compatibility 2019-09-09 16:51:18 +10:00
Mikunj 05b2e2305b Fix friend requests being accepted straight away when receiving messages in group chats. 2019-09-09 16:23:40 +10:00
Mikunj 8a3bef0738 Fix link preview crash. 2019-09-09 15:41:43 +10:00
Niels Andriesse fdb624369c Fix regression 2019-09-06 12:04:28 +10:00
Niels Andriesse da00c04a2c Implement link previews for group conversations 2019-09-06 11:28:17 +10:00
Niels Andriesse a3a64218f9 Implement link previews for regular conversations 2019-09-06 09:35:01 +10:00
Niels Andriesse 4825ba07d8 Clean 2019-09-04 16:08:47 +10:00
Niels Andriesse 55b5718271 Fix regression 2019-09-04 15:59:44 +10:00
Niels Andriesse bf7dd70327 Add basic events 2019-09-04 15:55:17 +10:00
Niels Andriesse b367ea7ab8 Set up Mixpanel 2019-09-04 14:41:38 +10:00
Niels Andriesse 8713b028b5 Retry group message deletion if needed 2019-09-02 15:44:24 +10:00
Niels Andriesse 4b8011ad7e Fix dependence on self 2019-09-02 14:06:20 +10:00
Niels Andriesse 1e7949a029 Clean 2019-09-02 13:46:56 +10:00
Niels Andriesse 3a1d07e5a8 Fix promise usage & clean 2019-09-02 13:46:56 +10:00
Niels Andriesse 9283012988 Make moderation permission both group and server specific
Also fix dependence on self and app delegate issue
2019-09-02 13:46:22 +10:00
Mikunj af3e74b73b Merge branch 'dev' into server-deletion 2019-09-02 10:43:31 +10:00
gmbnt a19315cfeb
Merge pull request #44 from loki-project/refactor
Refactoring
2019-08-30 16:05:18 +10:00
Niels Andriesse 87c956da18 Pass down message server ID 2019-08-30 15:57:34 +10:00
Niels Andriesse 8f61627b15 Switch to new group chat message deletion endpoint 2019-08-30 15:28:25 +10:00
Niels Andriesse e46f6ee9b8 Fix migration issue 2019-08-30 12:12:32 +10:00
Niels Andriesse 8985244f7e Merge LokiAPI+Convenience & LokiAPI 2019-08-29 15:52:51 +10:00
Niels Andriesse 378a30e9d6 Re-integrate LokiLongPoller 2019-08-29 15:21:45 +10:00
Mikunj be1def6dfc Merge branch 'dev' into server-deletion 2019-08-29 15:14:37 +10:00
Mikunj 679b2f7742 Added mod polling 2019-08-29 15:08:34 +10:00
Niels Andriesse d1d928ee89 Refactor LokiLongPoller 2019-08-29 15:04:02 +10:00
Mikunj bf09a2014b Hookup api. 2019-08-29 11:34:59 +10:00
Niels Andriesse d4b8dd0875 Clean 2019-08-28 16:49:47 +10:00
Mikunj 7acfa40915 Don't allow input on rss groups. 2019-08-28 16:45:14 +10:00
Niels Andriesse 9bee25f6c6 Clean 2019-08-28 16:38:20 +10:00
Mikunj e68de54a87 Show the delete action in public chats. 2019-08-28 15:47:21 +10:00
Mikunj 64c2e36c8a Handle messages sent by us in the public chat. 2019-08-28 13:27:11 +10:00
Mikunj 2392fed21a Set the server id on public chat messages. 2019-08-28 11:28:42 +10:00
Mikunj 17596d8bd3 Added PublicChatInfo field to DataMessage. 2019-08-28 10:51:37 +10:00
Niels Andriesse 9854c4f05d Clean 2019-08-28 10:29:14 +10:00
Niels Andriesse d8925d7750 Implement LokiGroupChatPoller.pollForDeletedMessages() 2019-08-28 10:04:15 +10:00
Niels Andriesse e21cced9bb Refactor 2019-08-27 16:48:53 +10:00
Niels Andriesse d5e56d9c9f Clean 2019-08-27 15:25:37 +10:00
Niels Andriesse 738d4f05f5 Create LokiRSSFeedParser 2019-08-27 14:27:10 +10:00
Niels Andriesse 915159db7d Disable deletion polling for RSS feeds 2019-08-27 13:50:31 +10:00
Niels Andriesse 6056575cdf Clean 2019-08-27 12:35:31 +10:00
Mikunj 4c21cecc66 Migrate from Dictionary to LokiGroupChat. 2019-08-27 12:26:02 +10:00
Niels Andriesse 88ad68838a Add LokiGroupChat 2019-08-27 11:58:12 +10:00
Niels Andriesse 7d3d0b31d9 Add LokiGroupChatAPI.getDeletedMessageIDs(...) & private server support 2019-08-27 11:05:42 +10:00
Niels Andriesse 7ef47968e3 Handle group chat token expiration 2019-08-23 16:25:12 +10:00
Niels Andriesse d32b45f792 Clean 2019-08-23 16:14:19 +10:00
Niels Andriesse d95df736d5 Merge branch 'dev' into group-chat 2019-08-23 15:44:46 +10:00
Mikunj d7ada75660 Fix date not being parsed properly.
Fix message indicators on groups.
Fix receipts being sent in groups.
2019-08-23 10:27:22 +10:00
Mikunj 6463187c0d Disable read receipts for groups. 2019-08-22 16:00:35 +10:00
Mikunj 39177fe448 Ensure we have a valid token length.
Disable typing indicator messages on group threads.
2019-08-22 15:54:38 +10:00
Mikunj ffd95f94d0 Decode token as utf8 string. 2019-08-22 15:33:19 +10:00
Mikunj e6e1ce7846 Added group chat authentication. 2019-08-22 13:14:35 +10:00
Mikunj 130ed6c371 Added function for submitting tokens. 2019-08-22 12:34:24 +10:00
Mikunj c5b9d8c7e2 Added DiffieHellman class 2019-08-22 11:09:51 +10:00
Niels Andriesse a022a699fb Set display name when sending a group message 2019-08-22 10:12:48 +10:00
Niels Andriesse 48706d233f Implement group message sending & receiving 2019-08-21 16:16:40 +10:00
Niels Andriesse 6c14ce9c97 Improve onboarding UI 2019-08-21 10:31:32 +10:00
Niels Andriesse 0130950050 Add group chat authorization endpoint 2019-08-20 15:54:12 +10:00
Niels Andriesse 9f69d918a8 Merge branch 'dev' into group-chat 2019-08-20 15:36:25 +10:00
Niels Andriesse a234019cb9 Fix conversion to JSON, use ISO8601DateFormatter & clean 2019-08-20 15:34:59 +10:00
Niels Andriesse ca822480b1 Update for seed changes 2019-08-20 13:54:37 +10:00
Mikunj d72e7da7ca Send message to server if the recipient is public channel 2019-08-19 13:46:03 +10:00
Mikunj c8a97f6668 Added group chat api. 2019-08-19 13:18:32 +10:00
Niels Andriesse 99ab556bf8 Don't retry proof of work calculation 2019-08-02 09:28:04 +10:00
Niels Andriesse 353186919e Increase maximum retry count 2019-08-02 09:23:03 +10:00
Niels Andriesse 92fb056688 Clean 2019-08-01 15:19:42 +10:00
Niels Andriesse 8fc02e2759 Use get_n_service_nodes 2019-08-01 15:11:14 +10:00
Niels Andriesse 9088a1f87d Fix HTTPS issue 2019-08-01 15:02:01 +10:00
Niels Andriesse e4abcd9081 Switch mainnet seed nodes 2019-08-01 14:34:10 +10:00
Niels Andriesse a9b7663320 Add clear all data option to settings 2019-08-01 13:59:05 +10:00
Mikunj 03e9307933 Send device id in pre key bundle. 2019-07-26 17:26:16 +10:00
Mikunj 3d55bb2820 Send empty data messages in LKEphemeralMessage. 2019-07-26 11:28:46 +10:00
Mikunj 108452cf56 Disable receipt sending if we're not friends. 2019-07-25 14:49:07 +10:00
gamabuntan bb65c87906
Merge pull request #33 from loki-project/friend-request-changes
Friend request changes
2019-07-25 14:41:46 +10:00
Niels Andriesse 2d4a7551f7 Show empty state message on home screen when needed 2019-07-25 13:41:13 +10:00
Niels Andriesse c0ff4d40b3 Handle 400, 500 & 503 status codes 2019-07-25 13:13:01 +10:00
Niels Andriesse 239d13c33e Make use of all seed nodes 2019-07-25 13:09:22 +10:00
Mikunj 162c9db6fe Added TODO reminder. 2019-07-24 12:21:30 +10:00
Mikunj 9ec9b0e27f Don't set content data in LKEphemeralMessage. 2019-07-24 09:35:35 +10:00
Mikunj d1e02848e6 Update friend request handling. 2019-07-24 09:20:33 +10:00
Mikunj 40edf1992a Verify friend request stuff before decrypting 2019-07-23 16:00:27 +10:00
Mikunj 99cfe7ca24 Handle nil state on session reset. 2019-07-22 11:07:38 +10:00
Niels Andriesse de346cb645 Fix pre key bundle usage 2019-06-27 11:04:56 +10:00
Niels Andriesse 8f78ea0dea Update for changed storage server API 2019-06-26 15:09:03 +10:00
Niels Andriesse 217a94b94f Update privacy policy URL 2019-06-26 10:34:53 +10:00
Niels Andriesse 234a2827b3 Fix release issues 2019-06-25 16:17:05 +10:00
Niels Andriesse 85203bac08 Prepare for alpha release 2019-06-25 15:29:38 +10:00
Niels Andriesse fead92f2e3 Fix failure count maintenance bug 2019-06-19 13:11:55 +10:00
Niels Andriesse 517b1b62e6 Handle rude seed node behavior 2019-06-18 16:01:53 +10:00
Niels Andriesse bb4f66099b Clean 2019-06-18 14:06:06 +10:00
Niels Andriesse a631aa7da2 Fix swarm parsing error handling 2019-06-18 13:33:41 +10:00
Niels Andriesse 2d0dd46f99 Fix typo 2019-06-18 11:27:19 +10:00
Niels Andriesse 58e902429e Tweak connection settings 2019-06-17 11:52:57 +10:00
Niels Andriesse bc112a7c90 Propagate request timeout interval through to request serializer 2019-06-17 10:45:09 +10:00
Niels Andriesse dfc4042987 Clean 2019-06-14 11:43:11 +10:00
Niels Andriesse 804a12d1bd Reduce initial PoW difficulty 2019-06-14 11:41:25 +10:00
Niels Andriesse 16a284ca02 Handle insufficient PoW error 2019-06-14 11:28:04 +10:00
Niels Andriesse 5b26601335 Also update the random snode pool if a snode failed repeatedly 2019-06-14 10:32:01 +10:00
Niels Andriesse f32bb85ddc Remove snodes from a swarm if they failed repeatedly 2019-06-14 10:21:32 +10:00
Niels Andriesse 02dd81516b Fix logging 2019-06-14 10:04:14 +10:00
Niels Andriesse 2cf4385fb6 Use PoW difficulty returned by snodes 2019-06-14 10:04:07 +10:00
Niels Andriesse 2111e73675 Debug clearnet changes 2019-06-13 16:05:06 +10:00
Niels Andriesse 936287683f Override Signal security policy 2019-06-13 14:35:08 +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 08812964f1 Update swarm parsing for new JSON layout 2019-06-12 16:44:22 +10:00
Niels Andriesse d23121f5dd Use clearnet seed nodes 2019-06-12 16:01:25 +10:00
Niels Andriesse feb1408836 Clean 2019-06-12 14:54:40 +10:00
Niels Andriesse 820b0829bb Merge LokiP2PManager & LokiP2PMessageHandler 2019-06-12 14:50:36 +10:00
Niels Andriesse 26f0bd23a2 Unnest LokiAPI.Message 2019-06-12 14:44:28 +10:00
Niels Andriesse df7ca74b70 Simplify LokiAPI changes 2019-06-12 14:23:01 +10:00
Mikunj 39b30ab8c9 Merge commit '5a7bba39ab59b575167ee07e28ad70a501576604' into long-polling 2019-06-12 12:46:40 +10:00
Mikunj ce17523b4c Minor refactoring 2019-06-12 12:36:34 +10:00
Niels Andriesse 6cbacdcf52 Keep message sending parameters in one place 2019-06-12 12:36:27 +10:00
Mikunj fe034be749 Merge commit '772abc68aa9d5d1da519dc33455de89d3c1de78c' into long-polling 2019-06-12 12:07:54 +10:00
Mikunj 8c839090e1 Converted getMessage function to more granular functions.
This is because we only want to process messages from long polling if it hasn't been stopped.
2019-06-12 12:00:40 +10:00
Niels Andriesse 772abc68aa Ditch TargetWrapper 2019-06-12 11:55:01 +10:00
Mikunj 04bdaff3c6 Added long polling. 2019-06-12 11:12:39 +10:00
Niels Andriesse d0bed4b129 Clean 2019-05-31 11:08:27 +10:00
Niels Andriesse b5677210d2 Remove unused parameter 2019-05-31 10:46:57 +10:00
Niels Andriesse 42b3dddc6a Clean 2019-05-30 13:14:38 +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
Mikunj ea0134ad61 Updated protobuf. 2019-05-29 09:36:16 +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 e81a074efc Show online status 2019-05-27 16:30:28 +10:00
Niels Andriesse 35f2354327 Show when a message was sent using P2P 2019-05-27 15:06:54 +10:00
Niels Andriesse 209996f86d Rename P2PDetails → P2PState 2019-05-27 13:50:22 +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
Niels Andriesse 97d1c16164 Clean up sendSignalMessage(_:to:with:) signature 2019-05-27 12:54:59 +10:00
Niels Andriesse e7866e7a7a Merge branch 'dev' into p2p 2019-05-27 12:50:58 +10:00
Niels Andriesse 728a148980 Improve performance 2019-05-27 12:50:30 +10:00
Niels Andriesse a4f1a1c3c8 Merge branch 'p2p' of github.com:loki-project/loki-messenger-ios into p2p 2019-05-27 12:26:52 +10:00
Niels Andriesse 5351961af7 Clean 2019-05-27 12:26:37 +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
Niels Andriesse ca713f6476 Clean up getMessages() signature 2019-05-27 10:27:49 +10:00
Mikunj 482721a2c2 Merge branch 'dev' into p2p 2019-05-27 10:24:35 +10:00
Mikunj 32b5b43c6e Fix fetching incorrect thread.
We also forgot to save incoming details.
2019-05-27 10:18:07 +10:00
Niels Andriesse a440a08a04 Implement retrying 2019-05-27 09:58:34 +10:00
Mikunj 58ead70eb3 Minor fix. 2019-05-27 09:54:20 +10:00
Mikunj 8a1ef268c8 Disable deregister after network error. 2019-05-27 09:52:06 +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