Commit graph

384 commits

Author SHA1 Message Date
Daniel Gultsch e2ac1db225 do not cross reference bookmarks and conversations 2018-02-10 19:06:31 +01:00
Daniel Gultsch 2eb2513615 always persist current nick (in bookmark and database) 2018-02-10 16:24:55 +01:00
Daniel Gultsch be70eb5650 improvements for self messages
* fix omemo in group chats w/o participants
* don't create two axolotl messages when messaging self
* fix read marker for self messages
2018-01-27 10:45:05 +01:00
Daniel Gultsch a5256c3e83 show self messages from other devices as received 2018-01-27 09:15:02 +01:00
Daniel Gultsch 44ce90ccf2 respond to message receipts request when processing carbon copy 2018-01-23 22:00:33 +01:00
Daniel Gultsch eee5d885ba make chat markers opportunistic in private mucs 2018-01-22 23:21:24 +01:00
Daniel Gultsch 4600b3982e treat key transport messages differently to not open empty conversations 2018-01-20 09:36:37 +01:00
Daniel Gultsch 3ff37511d4 sent message receipts after mam catchup 2018-01-20 08:54:44 +01:00
Daniel Gultsch 036dd82698 properly handle key transport messages. use prekeyparsing only when that attribute is set 2018-01-18 20:58:55 +01:00
Daniel Gultsch 5d11fe7dc6 added a few todos to source code 2018-01-15 11:13:35 +01:00
Daniel Gultsch c5ee541906 clear muc avatar after going online 2017-12-18 13:19:11 +01:00
Daniel Gultsch 1753dcac76 save muc subject to disk and use crypto targets for offline name generation 2017-12-17 16:23:19 +01:00
Daniel Gultsch 38797177c7 ChatMarkers: parse own account from true counterpart 2017-12-14 19:34:35 +01:00
Daniel Gultsch 37bd26c75f save changed server id in replaced messages 2017-12-11 15:55:55 +01:00
Daniel Gultsch 946d97074f try to detect invalid nick (w/ emoji) in MUCs 2017-12-11 15:55:10 +01:00
Daniel Gultsch 328c6dea0f fixed workaround that allowed us to expire devices 2017-12-07 14:47:21 +01:00
Daniel Gultsch 4b5db2fb45 read marker from mam. only trust true counterpart when mam:2 is being used 2017-12-02 22:13:59 +01:00
Daniel Gultsch ffb3eeb913 MAM: update previously sent messages with server msg id during mam query 2017-12-02 20:52:30 +01:00
Daniel Gultsch fc8a5641db MAM: assume true counterpart is safe to extract when using mam:2 2017-12-02 18:11:03 +01:00
Daniel Gultsch 97df4a682b MessageParser: ignore groupchat messages retrieved from user archive 2017-12-02 17:48:26 +01:00
Daniel Gultsch 86f09dd9b9 PresenceParser: work around for ejabberd not including status code 110 in shut down presence 2017-11-30 13:21:03 +01:00
Daniel Gultsch 4596cad3cb MessageParser: don't refresh view after parsing chat state when combined with message 2017-11-21 16:17:27 +01:00
Daniel Gultsch 381fe82b01 save full jid when sending in muc. check chat markers against 'sender' 2017-11-21 15:42:46 +01:00
Daniel Gultsch 79ea0713bb MessageAdapter: code reformat 2017-11-21 13:26:45 +01:00
Daniel Gultsch 702d6cf2a5 MessageParser: dismiss notification when receiving read marker from another client 2017-11-21 13:26:23 +01:00
Daniel Gultsch 28e005f926 send and show read markers in private, non-anonymous groups 2017-11-20 11:26:20 +01:00
Daniel Gultsch 75a485cbc1 catch all sorts of date parsing errors 2017-11-16 12:47:49 +01:00
Daniel Gultsch e6a67a6c26 made avatar cache cleaning more efficent after name changes 2017-08-23 21:49:25 +02:00
Daniel Gultsch ad601e47c8 fixed roster items w/o subscription (request) not being shown 2017-07-28 18:34:55 +02:00
Daniel Gultsch 6c95897f09 fetch device ids for muc members w/o known devices 2017-07-18 12:51:15 +02:00
Daniel Gultsch 0a20b87ebe check length first in timestamp parser 2017-07-16 21:03:59 +02:00
Daniel Gultsch 2b9cdde558 refactored retrieval of default preferences 2017-07-01 13:41:24 +02:00
Daniel Gultsch 311c99bb6d put settings defaults into resource file 2017-06-30 21:22:35 +02:00
Daniel Gultsch 24768d051d upgrade to signal-protocol-java. thanks @ysangkok
fixes #1384
closes #2509
2017-06-18 16:36:30 +02:00
Daniel Gultsch 612e0afa63 do not parse delay tag for unavailable presences when it comes form own server 2017-06-01 16:45:00 +02:00
Daniel Gultsch 2cf05528b4 add the 4 most frequently contacted contacts as app shortcuts 2017-05-31 16:45:51 +02:00
Daniel Gultsch 6ccdd1227e parse all delayed tags. use min date 2017-05-30 08:39:04 +02:00
Daniel Gultsch 84baa3ae68 avoid race conditions when downloading files or decrypting pgp messages and waiting for sm catchup 2017-04-30 16:19:39 +02:00
Daniel Gultsch ae85a9e87b made nimbuzz work around work with newly created conferences as well 2017-04-20 11:35:38 +02:00
Daniel Gultsch 483304c697 recognize muc self presence on nimbuzz.com
Apparently nimbuzz.com doesn't include status code 110 in muc self presence
It does however include the full real jid in the presence’s item.
We can use that as a work around to detect a self presence.
2017-04-15 15:14:12 +02:00
Daniel Gultsch 0904ba42f8 use async message loading only when called from UI 2017-04-13 00:12:23 +02:00
cijo-saju 3467a67e75 Removed unused imports from entire project. 2017-04-12 20:24:36 +05:30
Daniel Gultsch 99565a6876 treat URL as file if URL is in oob or contains key 2017-04-05 22:35:42 +02:00
Daniel Gultsch 26badb7f4c send urls pointing to pgp encrypted files directly in body+oob 2017-04-05 21:01:29 +02:00
Daniel Gultsch b34a1f7f5e parse message that only contain oob tag. fixes #2359 2017-04-04 22:15:38 +02:00
cijo-saju 3171dcac8d Fixed deprecated call 2017-03-30 16:27:11 +05:30
Daniel Gultsch c97c5def2c experimental: wait for SM catchup before triggering notifications
wait for a first SM ACK before calculating if we need to trigger any notifications
might have to be changed to an XEP-0199 ping later on. for now sending <r/> after resume seems to work outfine
2017-03-21 17:58:08 +01:00
Daniel Gultsch 76b9010c39 rework last activity logic to something that should work pretty well in Conversations only enviroments 2017-03-20 17:58:58 +01:00
Daniel Gultsch 5ea4322d3f send and parse Chat States to and from conferences 2017-03-09 10:58:44 +01:00
Daniel Gultsch 1f3be1597c add origin-id to outgoing messages 2017-03-08 21:30:12 +01:00
Daniel Gultsch 064926a18b fixed regression that caused stanza-ids not to be saved 2017-03-08 20:20:34 +01:00
Daniel Gultsch 1c56b74e41 closing the corresponding conversations after blocking a contact. fixes #2347 2017-03-06 16:53:54 +01:00
Daniel Gultsch 5a00b11594 extract stanza-id from muc reflections 2017-03-06 13:30:13 +01:00
Daniel Gultsch 4a7dbaab1e deduplicate every message with a stanza-id from the server 2017-03-06 11:24:04 +01:00
Daniel Gultsch 6088913fb6 fixed multi-session-nick renaming behaviour 2017-03-05 17:42:17 +01:00
Daniel Gultsch c740386297 rename the Xmlns class to Namespace 2017-03-01 13:01:46 +01:00
licaon-kter d3dd80eec9 Fix a typo in legacy 2017-02-19 15:47:57 +02:00
Daniel Gultsch caa16a8517 experimental mam legacy compat layer 2017-02-15 16:42:35 +01:00
Daniel Gultsch 6e62b62b80 respond to xep-0184 requests in muc pms 2017-02-15 12:09:36 +01:00
Daniel Gultsch c7e95d105c fixed behaviour in message parser when doing mam catchup 2017-02-15 00:08:49 +01:00
Daniel Gultsch bb249e0881 only extract stanza-id from live messages when disco feature is set 2017-02-14 23:16:51 +01:00
Daniel Gultsch b90a1fe1db bump mam namespace 2017-02-14 17:19:45 +01:00
Daniel Gultsch 2665c3a1e0 rethink mam catchup strategies 2017-02-14 16:50:33 +01:00
Daniel Gultsch 9b6ae6d75f configurable local message retention period. (untested) 2017-01-23 17:14:30 +01:00
Daniel Gultsch 4c6ef3b24e cleaning up crypto targets when conference member is getting removed 2017-01-22 18:58:49 +01:00
Daniel Gultsch 780d1daf7e fixed some issues around ibb 2017-01-20 22:37:50 +01:00
Daniel Gultsch 39bb8ad05f automatically bookmark private, non-anonymous mucs where inviter is trusted. fixes #2035 #937 2017-01-09 19:54:27 +01:00
Daniel Gultsch d03c431137 use original message to parse pep 2016-12-23 21:16:58 +01:00
Daniel Gultsch 55b60f6b0f don't correct a message if that would create a duplicate 2016-12-09 20:03:48 +01:00
Daniel Gultsch e5d7357e6e mark conversations as read after receiving blocklist push for that conversations 2016-11-28 15:51:11 +01:00
Daniel Gultsch 1d3167b520 extract affiliations from unavailable presence 2016-11-13 19:25:58 +01:00
Daniel Gultsch 07a71d312a extracting stanza-id where by=account 2016-10-31 12:07:08 +01:00
Daniel Gultsch 8557120ef8 add error message to failed messages. accessible via context menu 2016-10-26 12:26:04 +02:00
Daniel Gultsch f3ef8d4978 fetch new conference configuration on every conf update 2016-10-08 12:10:53 +02:00
Daniel Gultsch 1f7f82da7b respond to chat marker request only when mutual presence subscription exists 2016-10-07 10:05:08 +02:00
Daniel Gultsch 0af13fc746 be more careful parsing integers in omemo 2016-10-06 22:05:18 +02:00
Daniel Gultsch 9f060f477f parse smacks delay from messages 2016-10-06 18:09:44 +02:00
Daniel Gultsch c3b11e515e download own vcard avatar if none is set. fixes #2008 2016-09-09 11:04:05 +02:00
Daniel Gultsch caafd03130 don't automatically download files and avatars when datasaver is on 2016-08-27 13:35:52 +02:00
Daniel Gultsch ed2fa20414 handle invalid prekey ids in bundle 2016-08-02 10:40:24 +02:00
Daniel Gultsch 0e96e0a796 show identity type for device selection 2016-07-28 22:58:37 +02:00
Daniel Gultsch cf7df84cab add trillian to html otr parsing fixes #1963 2016-07-27 20:11:02 +02:00
Daniel Gultsch 27690865a6 respond to XEP-0202: Entity Time 2016-07-13 18:10:10 +02:00
Daniel Gultsch f7933c26d7 don't crash on broken base64 in omemo messages. fixes #1934 2016-06-29 17:18:57 +02:00
Daniel Gultsch 8882c6b6fd parse §5.1.2 full jids from muc archives for OMEMO messages 2016-06-28 10:33:46 +02:00
Daniel Gultsch 982a20fef5 refactor code that reads real jid from muc 2016-06-22 12:22:57 +02:00
Daniel Gultsch 4ba5472d0c respond to block list push 2016-06-22 12:22:36 +02:00
Daniel Gultsch b92b3863b9 don't handle chat states in muc or from archive 2016-06-16 20:38:02 +02:00
Daniel Gultsch 1eb776f39c synchronize message body changes for message correction 2016-06-16 11:47:40 +02:00
Daniel Gultsch 60588af825 replace corrected messages in decryption queue 2016-06-15 14:29:25 +02:00
Daniel Gultsch 5f40a7042d delay notification until after pgp decryption 2016-06-15 12:44:29 +02:00
Daniel Gultsch 587fb3cca3 refactored pgp decryption 2016-06-13 13:32:14 +02:00
Daniel Gultsch 31dd7b5a21 parse real jid from muc mam messages. (disabled)
parsing this is dangerous if server doesn't filter properly
thus it is disabled in config
2016-06-12 12:50:53 +02:00
Daniel Gultsch 36ae840d76 log all background stanzas when background logging is enabled 2016-06-05 02:04:31 +02:00
Daniel Gultsch 71e9117176 opt-in to send last userinteraction in presence 2016-06-04 16:16:14 +02:00
Daniel Gultsch 25211f13b3 make grace period configurable 2016-06-02 00:24:37 +02:00
Daniel Gultsch 91732b89ea log background msgs not foreground msgs 2016-06-01 11:37:03 +02:00
Daniel Gultsch 15316e6a7f only log inner stanza but display isCarbon 2016-06-01 09:03:21 +02:00
Daniel Gultsch 44833c1499 don't push default muc conf twice 2016-05-27 10:35:00 +02:00
Daniel Gultsch 841e718d6a make newly created conferences private by default 2016-05-26 12:39:31 +02:00
Daniel Gultsch 79796b0079 don't respond to otr messages in muc pms 2016-05-25 21:05:51 +02:00
Daniel Gultsch 277e3d59c8 update ui after affiliation changes 2016-05-21 09:25:37 +02:00
Daniel Gultsch 9ce2cfa3d2 resetting fetch status error when mutual subscription is reestablished 2016-05-19 10:47:27 +02:00
Daniel Gultsch b478eca315 improved ordering of muc participants 2016-05-17 15:01:56 +02:00
Daniel Gultsch 61726f4994 refactored muc item parsing to also parse muc status messages 2016-05-17 14:25:58 +02:00
Daniel Gultsch fc5304c6fe change affiliation for in memory users that are currently not joined in a conference 2016-05-16 19:58:36 +02:00
Daniel Gultsch 8d0693ed6a keep conference members in memory and show them in conference details 2016-05-16 19:58:36 +02:00
Daniel Gultsch cf5ca27a06 escape HTML in OTR messages if other client is Pidgin 2016-05-15 12:35:31 +02:00
Daniel Gultsch a25912c32c log incoming iq requests 2016-05-15 09:55:06 +02:00
Daniel Gultsch aced9d2697 do not process self presence
we don't want our own resource show up in the self contact
2016-05-13 11:20:27 +02:00
Daniel Gultsch 27b245ac35 do not show last-seen metric in UI 2016-05-10 09:41:30 +02:00
Daniel Gultsch 5021b9a5dd don't request disco from self 2016-04-28 19:02:20 +02:00
Daniel Gultsch 1901abd05f expert setting to manually change presence 2016-04-22 21:25:06 +02:00
Daniel Gultsch e074104004 save otr fingerprint in message 2016-03-31 21:15:49 +02:00
Daniel Gultsch 09d87965fb mark oob messages and always display download button 2016-03-04 20:09:21 +01:00
Daniel Gultsch 9e0466d1e6 refactored omemo to take multiple recipients 2016-02-29 13:18:07 +01:00
Daniel Gultsch d1a456f3e3 made hard coded choice for encryptions more flexible and disable parsing 2016-02-24 14:47:49 +01:00
Daniel Gultsch 34f2a63190 update notification after message correction 2016-02-23 16:15:23 +01:00
Daniel Gultsch a0d0ed34ae turned muc errors into enum. added error codes for service shutdown 2016-02-22 20:19:58 +01:00
Daniel Gultsch 3bde4dbedb change uuid when replacing messages 2016-02-20 00:01:39 +01:00
Daniel Gultsch e6f8b7d9fa decrypt pgp message corrections 2016-02-19 21:02:33 +01:00
Daniel Gultsch 49a3f6f281 never parse show in presences as offline 2016-02-19 11:09:28 +01:00
Daniel Gultsch 59978e157c only offer message correction for the very last message 2016-02-17 16:51:36 +01:00
Daniel Gultsch c2fbdbde83 log reason why otr message won't be parsed 2016-02-16 14:22:47 +01:00
Daniel Gultsch a9b957e8a2 added setting to opt-out of message correction. renamed preferences and options to settings 2016-02-16 09:57:59 +01:00
Daniel Gultsch c0b3a3ff0c basic support for XEP-0308: Last Message Correction. fixes #864 2016-02-15 23:15:04 +01:00
Daniel Gultsch f37098a54f catch all axolotl parse exception at once. fixes #1692 2016-02-11 12:26:43 +01:00
Daniel Gultsch 91ec4839ac prepend instead off append mam messages to conversations when going in reverse 2016-02-04 16:40:18 +01:00
Daniel Gultsch 17791a703e removed unecessary logging when muc tiles update 2016-02-04 10:27:38 +01:00
Daniel Gultsch 0911669b07 count all messages in a query 2016-02-03 16:04:21 +01:00
Daniel Gultsch 1274b0ef39 Revert "get rid of broken totalMessageCount for mam queries"
This reverts commit 58c6f9bfb2.
2016-02-03 10:40:44 +01:00
Daniel Gultsch f0798216d5 refactored disco cache. avoid making duplicate call. check hash 2016-02-03 10:40:02 +01:00
Daniel Gultsch 4a1a59f0c8 Merge branch 'disco-caps' of https://github.com/singpolyma/Conversations into singpolyma-disco-caps 2016-02-02 18:19:26 +01:00
Daniel Gultsch 58c6f9bfb2 get rid of broken totalMessageCount for mam queries 2016-02-02 15:39:46 +01:00
Daniel Gultsch f30df7a535 catch a few NPE when parsing invalid pep nodes 2016-02-02 11:21:07 +01:00
Daniel Gultsch a3e11415ec refactored user handling in conferences. show try again button when conference has errors 2016-02-01 12:11:40 +01:00
Daniel Gultsch 2eef37174e fixed false set of subject in conference with empty body tag 2016-01-31 14:42:35 +01:00
Stephen Paul Weber ae84ff2f0c Do disco for caps hashes we have never seen
Then cache it
2016-01-24 17:46:08 -05:00
Stephen Paul Weber 000f59d614 Fetch cached caps result on new presence 2016-01-24 17:46:08 -05:00
Stephen Paul Weber bf5b2f73f5 Use a Presence class for presence information
Only has status for now, but doing it so I can add disco to it
2016-01-24 17:46:08 -05:00
Daniel Gultsch 73e2389eee use actual message timestamp instead of delay when updating last seen. fixes #1618 2015-12-31 18:06:11 +01:00
Daniel Gultsch e10a0b0c4c let message parser not artifically fail on messages with no to attribute 2015-12-17 14:30:00 +01:00
Daniel Gultsch 88523bbb50 more detailed logging 2015-12-12 15:58:22 +01:00
Daniel Gultsch b2c278c91b set bookmark name to room subject if no subject has been set before 2015-12-11 19:28:44 +01:00
Daniel Gultsch 293e820a58 get rid of lastMessageTransmitted in favor of db query 2015-12-11 13:52:04 +01:00
Daniel Gultsch 55c1129a65 notify on mam catchup messages 2015-12-10 23:05:11 +01:00
Daniel Gultsch 2262921ff4 properly clean up timed out mam queries 2015-12-10 18:28:47 +01:00
Daniel Gultsch 5bd70cfee8 always show conversations with pending subscription requests 2015-12-09 12:18:06 +01:00
Daniel Gultsch 11e58607c9 when no avatar found show avatar of contact and not the muc user in conferences 2015-12-09 10:30:26 +01:00
Daniel Gultsch 6358f641e7 check for query object as condition to trigger deduplication instead of serverId 2015-12-05 18:41:38 +01:00