Commit graph

588 commits

Author SHA1 Message Date
Daniel Gultsch 9b6ae6d75f configurable local message retention period. (untested) 2017-01-23 17:14:30 +01:00
Daniel Gultsch 764026b87e fixed behaviour with non-default encryption masks 2017-01-16 13:09:36 +01:00
Daniel Gultsch b8f67bfaa3 deduplicate corrected messages 2016-12-26 15:13:38 +01:00
Daniel Gultsch 9972f5eabc fixed npe cause by race condition when axolotl service isn't initialized 2016-12-23 21:19:38 +01:00
Daniel Gultsch 56991bbaeb add omemo fingerprints to web links as well 2016-12-03 13:37:26 +01:00
Daniel Gultsch 5d4aa04e5d support for jid escapting when displaying localpart only 2016-12-01 20:49:18 +01:00
Daniel Gultsch e127ba9361 don't use own jid joined from another client to generate muc title 2016-12-01 19:57:40 +01:00
Daniel Gultsch 9e7a54849d better handle the case when same user is joined with multiple nicks in the same room 2016-11-29 13:43:52 +01:00
Daniel Gultsch a87f7903c6 always force close a connection when disabling from error state 2016-11-24 12:44:24 +01:00
Daniel Gultsch cbd45d3ee5 changed design language to match BTBV proposal
* untrusted messages have red background
* unverified message have normal background and red lock
2016-11-24 11:29:26 +01:00
Daniel Gultsch 01f92ef4ee lower own otr fingerprint 2016-11-18 20:12:45 +01:00
Daniel Gultsch a7ee8f8a74 use lower case otr fingerprints for comparison 2016-11-18 13:13:29 +01:00
Daniel Gultsch 211354ee26 put omemo fingerprint in own uri (qr code / nfc) 2016-11-17 22:28:45 +01:00
Daniel Gultsch ec63900ef3 work around -1 in next encryption 2016-11-15 21:11:35 +01:00
Daniel Gultsch 05fc15be3d refactore trust enum to be FingerprintStatus class with trust and active 2016-11-14 22:27:41 +01:00
Daniel Gultsch 1d3167b520 extract affiliations from unavailable presence 2016-11-13 19:25:58 +01:00
Daniel Gultsch 035d0c7957 Stop automagically select default encryption
Selecting a default encryption (in our case OMEMO) has several down sides.
First of all users might have perfectly valid reasons not to use encryption
at all such as using the same private server. Second of all the way it was
implemented Conversations would automatically fall back to plain text as soon
as the conditions changed (recipient switches to device with no encryption)
which lead to unexpected situations.
Thirdly having a default encryptions speaks against the 'mission
statement' of Conversations of not forcing its security and privacey
aspects upon the user.
And last but not least the goal of implementing this feature in the
first place: Be encrypted by default didn't work at all. I don't think
there was a single user that we succesfully 'tricked' into using OMEMO
who otherwise wouldn't have used it.
2016-11-13 17:11:13 +01:00
Daniel Gultsch fe62ef32ae don't add outcasts or non-members in members-only rooms back to list 2016-11-12 20:21:11 +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 f2696b66ba Merge branch 'feature-remove-merge-separator' of https://github.com/Mishiranu/Conversations into Mishiranu-feature-remove-merge-separator 2016-10-20 18:18:25 +02:00
Daniel Gultsch 44ce5df359 write prepped string to db. use display version everywhere else 2016-10-20 17:31:46 +02:00
Mishiranu fd4e15ba97 Remove MERGE_SEPARATOR 2016-10-20 01:03:51 +03:00
Daniel Gultsch f6cfa27741 synchronize access to json key storage in account model 2016-10-13 11:27:26 +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 082c06a486 make error notification dismissable. fixes #1815 2016-10-04 11:16:59 +02:00
Daniel Gultsch badc97e280 don't simply ignore null in message body but try to avoid it 2016-09-18 22:15:02 +02:00
Daniel Gultsch 7b445bc4c7 use history clear date as minimum date for mam 2016-09-16 11:07:52 +02:00
Daniel Gultsch 4359afacb4 store jid if it was changed during bind 2016-09-14 12:26:38 +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 e1d2c32e63 show server not found muc error 2016-09-06 12:15:08 +02:00
Daniel Gultsch e33d8451a8 attach contact to notification 2016-08-26 13:35:01 +02:00
Daniel Gultsch 8927ba8065 various null pointer checks 2016-08-20 10:44:50 +02:00
Daniel Gultsch 285d86b375 display error status for missing internet permission 2016-08-19 21:47:08 +02:00
Daniel Gultsch b5d3859b22 add payment required error 2016-08-16 10:39:59 +02:00
Daniel Gultsch 4736d12e99 make lastMessageTransmitted return max(clear_date,last_message) 2016-08-13 12:36:30 +02:00
Daniel Gultsch 0e96e0a796 show identity type for device selection 2016-07-28 22:58:37 +02:00
Daniel Gultsch 3409399ef1 display specific error message when password is too weak on registration 2016-07-25 15:57:47 +02:00
Daniel Gultsch 198a9f2226 refactored how view intents are handled
processing view intents before saved instance caused troubles when the activity was destroyed
fixes #1969
2016-07-25 14:16:09 +02:00
Daniel Gultsch baa149924a show error notification in connecting state as well 2016-07-14 23:23:13 +02:00
Daniel Gultsch 1db85e582e add more error states for stream errors 2016-07-14 17:05:43 +02:00
Daniel Gultsch 223d50c1a0 don't take stanza-id into account when deduping muc pms 2016-07-14 09:01:15 +02:00
Daniel Gultsch cdee91363c simplified muc users ordering 2016-07-04 19:30:19 +02:00
Daniel Gultsch 30110431ba use dnd as overriding status 2016-06-30 23:08:55 +02:00
Daniel Gultsch e63d6b4bf2 only keep offline members in members only conferences 2016-06-28 10:32:06 +02:00
Daniel Gultsch 72a2622c84 introduced share button in contact details. remove show qr 2016-06-24 15:16:01 +02:00
Daniel Gultsch f91d16cbe7 don't fail on missing jid in bookmarks 2016-06-16 20:38:35 +02:00
Daniel Gultsch 5f40a7042d delay notification until after pgp decryption 2016-06-15 12:44:29 +02:00
Daniel Gultsch 73679b97f1 show xep-0172 nick only for contacts with mutual presence subscription 2016-06-15 09:44:01 +02:00
Daniel Gultsch 49de43b364 clear muc tiles when avatar of member changes 2016-06-14 17:11:31 +02:00
Daniel Gultsch f9600b950f sort muc users by affiliation, name. fixes #1913 2016-06-14 14:41:32 +02:00
Daniel Gultsch 39ad426ca9 remove messages from decryption queue when trimming a conversation 2016-06-13 19:06:09 +02:00
Daniel Gultsch 587fb3cca3 refactored pgp decryption 2016-06-13 13:32:14 +02:00
Daniel Gultsch cb7c47bc62 catch conversations sort exception. not vital at this point 2016-06-09 14:50:13 +02:00
Daniel Gultsch 71e9117176 opt-in to send last userinteraction in presence 2016-06-04 16:16:14 +02:00
Daniel Gultsch 7398424f3b trim nick from bookmark before checking if it's empty 2016-06-03 19:24:11 +02:00
Daniel Gultsch e26d842549 don't use a bookmarks name if it's empty 2016-06-03 18:43:45 +02:00
Daniel Gultsch 25211f13b3 make grace period configurable 2016-06-02 00:24:37 +02:00
Daniel Gultsch 5c5d5cc4e3 don't show empty templates 2016-06-01 00:25:14 +02:00
Daniel Gultsch 5b9ba79495 use whitespace as message seperator 2016-05-30 21:12:19 +02:00
Daniel Gultsch 272cffe797 Revert "always notify by default in conferences"
This reverts commit e9494af098.

Now that new conferences are private by default this setting makes more sense
2016-05-29 22:55:01 +02:00
Daniel Gultsch c3ec3ea70a don't merge messages over the char limit 2016-05-29 10:32:07 +02:00
Daniel Gultsch 06bef5de8d use EOT as message seperator 2016-05-28 11:03:29 +02:00
Daniel Gultsch 44833c1499 don't push default muc conf twice 2016-05-27 10:35:00 +02:00
Daniel Gultsch 21ebb35e44 add 'create conference' dialog 2016-05-26 22:53:55 +02:00
Daniel Gultsch 841e718d6a make newly created conferences private by default 2016-05-26 12:39:31 +02:00
Daniel Gultsch b69ab65b12 show regitration failed try again later in UI 2016-05-24 13:26:30 +02:00
Daniel Gultsch e5b8302fd9 show first unread message on top after reinit 2016-05-22 17:52:27 +02:00
Daniel Gultsch 8d595c1fc2 sync around individual calls instead of synchronizing entire object 2016-05-19 10:47:03 +02:00
Daniel Gultsch 70497318dd remove unwanted 'use previous encryption' lookup 2016-05-19 10:42:57 +02:00
Daniel Gultsch 0eb8d4226e also save form elements in disco storage 2016-05-19 10:41:56 +02:00
Daniel Gultsch 627bf18f8c don't NPE on rare race condition while fetching MAM 2016-05-19 10:40:03 +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 14952ba5e5 offer offline members to be invited again 2016-05-17 10:43:48 +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 6f1a4494eb use the same typo in both saving disco and reading disco 2016-05-15 12:35:51 +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 6a28b5a9fa don't show duplicate status message in contact details 2016-05-13 11:57:02 +02:00
Daniel Gultsch e41a9483bd only default to omemo when all our devices support it 2016-05-13 11:47:29 +02:00
Daniel Gultsch b756d61c45 show presence of other resources as template 2016-05-13 10:45:30 +02:00
Daniel Gultsch 908aa19a36 make omemo default when all resources support it 2016-05-12 14:20:11 +02:00
Daniel Gultsch e542dd3923 always show download button when link is encrypted
dont check for known mime type
2016-05-10 10:32:25 +02:00
Daniel Gultsch 549be9bb3d report host-account as account state in UI 2016-05-10 10:29:02 +02:00
Daniel Gultsch a7cd05bd4e report bind failure as account state 2016-05-05 20:22:47 +02:00
Daniel Gultsch 6e0ec9b924 republish pgp signature when changing status 2016-05-05 13:17:04 +02:00
Daniel Gultsch cef2eb58a7 fixed presence template dedup for 'online' status 2016-05-03 22:16:51 +02:00
Daniel Gultsch 29616d02a8 removed unused config variables 2016-04-27 16:43:02 +02:00
Daniel Gultsch 9c3e910dc4 prevent user from accidentally changing password after using magic create 2016-04-26 23:23:48 +02:00
Daniel Gultsch a9c1768107 show status messages in contact details 2016-04-23 12:19:00 +02:00
Daniel Gultsch 1901abd05f expert setting to manually change presence 2016-04-22 21:25:06 +02:00
Daniel Gultsch e9494af098 always notify by default in conferences 2016-04-14 22:37:05 +02:00
Daniel Gultsch 4332b0df44 return own jid as true counterpart on self messages in muc 2016-04-13 11:13:47 +02:00
Daniel Gultsch b99d70bfe7 don't show contact details when in conversations with self 2016-04-09 10:59:54 +02:00
Daniel Gultsch 74c496fe3e add methods to check max file size for http upload 2016-03-31 21:56:59 +02:00
Daniel Gultsch e074104004 save otr fingerprint in message 2016-03-31 21:15:49 +02:00
Daniel Gultsch 867d0ef191 include form fields into caps hash calculation 2016-03-31 14:21:56 +02:00
Daniel Gultsch 343a6b4e6b made setting aes keys in DownloadableFile more readable 2016-03-31 13:55:25 +02:00
Daniel Gultsch 0af8ee341c simplified getUsers(max) code 2016-03-13 17:42:17 +01:00
Daniel Gultsch 09d87965fb mark oob messages and always display download button 2016-03-04 20:09:21 +01:00
Daniel Gultsch 89eea3636f add a few more know file extensions 2016-03-04 11:24:53 +01:00
Daniel Gultsch 198dc2c6b4 let users confirm each member in a conference even if that contact is already trusted 2016-03-01 11:26:59 +01:00
Daniel Gultsch 134c75ae01 use correct jid when leaving a conference. fixes #1732 2016-02-29 16:32:24 +01:00
Daniel Gultsch 9e0466d1e6 refactored omemo to take multiple recipients 2016-02-29 13:18:07 +01:00
Daniel Gultsch 4ba41540fd made hashtable in roster store jids instead of strings 2016-02-28 20:45:50 +01:00
Daniel Gultsch bbede8bbeb optionally lock conference domains as well and hide known domains in ui 2016-02-24 16:53:19 +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 ddafa65849 Merge pull request #1715 from fiaxh/gpg_decryption_failed
PGP Retry decryption from message menu
2016-02-24 09:23:30 +01:00
Daniel Gultsch 0298f0181e reset pending subscription request when receiving roster update 2016-02-23 16:14:55 +01:00
fiaxh 894b5892a9 Retry decryption from message menu 2016-02-23 16:05:42 +01:00
Daniel Gultsch beb216c300 made presences object final in contact 2016-02-23 14:25:01 +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 ed740b4868 some mucs may grant voice to visitors in unmoderated rooms 2016-02-21 11:42:41 +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 0ca4a33bfb added some OTR logging 2016-02-16 09:15:41 +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 91ec4839ac prepend instead off append mam messages to conversations when going in reverse 2016-02-04 16:40:18 +01:00
Daniel Gultsch 4fdb0d92fe prevent previoulsly cleared messages from reloading. fixes #1110 2016-02-04 14:39:16 +01:00
Daniel Gultsch f88b8c703e add more fault tolerant checks for messages left on server 2016-02-04 11:55:42 +01:00
Daniel Gultsch 1d572c61d0 cache server caps 2016-02-03 17:19:05 +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 fab0a45955 re-read common name from certificates on startup 2016-02-02 13:43:20 +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 28ebf927fb try to make in-valid-session detection work for pgp 2016-01-29 12:09:31 +01: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
Stephen Paul Weber ad36a4ba89 Persisitence and loading for ServiceDiscoveryResult 2016-01-23 10:53:56 -05:00
Stephen Paul Weber 56f8fff935 Implement toJSON on ServiceDiscoveryResult 2016-01-23 10:52:45 -05:00
Stephen Paul Weber 1e335d527b Generate capHash from any discovery result 2016-01-23 10:52:44 -05:00
Stephen Paul Weber fccce229c6 Factor out a representation of XEP-0030 results
And the parser from Element to this representation.
2016-01-23 10:52:40 -05:00
Daniel Gultsch 40005cec1b added config variable to allow non-tls connections 2016-01-22 11:20:31 +01:00
Daniel Gultsch 41ae4af1b8 made constructor private in Account entity 2016-01-16 18:57:47 +01:00
Daniel Gultsch 6acb80a83a added Config.java variable to change the default notification behaviour to always 2016-01-08 22:07:23 +01:00
Daniel Gultsch a3e136b550 show per conference notification settings in details activity 2016-01-08 21:30:46 +01:00
Daniel Gultsch 5dd5685885 Merge pull request #1641 from fiaxh/uuid-fix
Correct uuid check according to RFC 4122
2016-01-08 00:17:21 +01:00
Daniel Gultsch c59eb75a59 avoid duplicate messages when sending files to mucs. fixes #1635 2016-01-06 12:59:13 +01:00
fiaxh 62d0eebe5c Correct uuid check according to RFC 4122 2016-01-05 20:07:29 +01:00
Daniel Gultsch fdb6b0e30d only report error after third unsuccesful attempt to connect 2016-01-04 15:33:11 +01:00
Daniel Gultsch bcf99db3df fixed stuck at omemo encryption when x509 verification is being used 2015-12-27 17:29:19 +01:00
Daniel Gultsch ade89beb96 use presence name not server name when verification is being used 2015-12-19 13:07:38 +01:00
Daniel Gultsch e8bf5cada4 only offer plain and omemo encryption when x509 verification is enabled 2015-12-19 12:44:12 +01:00
Daniel Gultsch f05f97251c prefer server name over address book name when x509 verification is being used 2015-12-19 12:43:09 +01:00
Daniel Gultsch f6b22dad20 splite PARANOIA_MODE into three different options 2015-12-14 10:54:55 +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 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 cd9a29718b properly clear muc user avatar caches 2015-12-04 21:36:48 +01:00
Daniel Gultsch 196c8e593f Merge pull request #1595 from fiaxh/pgp_database_signature
Regenerate PGP signatures once
2015-12-04 15:35:51 +01:00
Daniel Gultsch 3e3cb047be rely on message id if message id is uuid and pgp encryption was used to deduplicate messages. fixes #1357 2015-12-04 15:34:45 +01:00
Daniel Gultsch 242887447c use proposed nick as default nick in mucoptions 2015-12-04 14:07:16 +01:00
Daniel Gultsch 6b592435cd parse vcard avatars from muc presences 2015-12-03 18:18:34 +01:00
fiaxh e5f154316c Unset all PGP signatures once
... so they will be redone to match the changed status.
2015-12-02 18:06:48 +00:00
Sam Whited a3eb540f05 Show status message when contact requests presence
Remove presence when conversation closed
2015-12-02 08:50:52 -06:00
Daniel Gultsch dc8967d8fc introduced build-time paranoia mode that disables unencrypted chats and forces TOR 2015-12-01 22:41:58 +01:00
Daniel Gultsch 2225b0b6d5 add error state for unavailable tor network 2015-12-01 12:00:50 +01:00
Daniel Gultsch ebccb67a72 do socks5 connect manually 2015-12-01 12:00:50 +01:00
Daniel Gultsch f0b1761ec3 initial tor support 2015-12-01 12:00:50 +01:00
Daniel Gultsch 60211a315e hide subject edit button if not editable by user 2015-11-26 17:44:29 +01:00
Daniel Gultsch fd6ed5b989 detect server identity and added muc-workaround for slack 2015-11-26 06:55:57 +01:00
Daniel Gultsch a557d38e4d pgp fixes and revert configuration changes 2015-11-25 20:47:02 +01:00
fiaxh fac1d4e0bd Use OpenPGP-API 9.0 2015-11-09 13:49:57 +00:00
Daniel Gultsch bca29cf7fd explicitly mark verified omemo keys in UI 2015-10-31 10:57:57 +01:00
Daniel Gultsch 6a458b853c Merge pull request #1513 from fiaxh/pgp_background_decryption
PGP messages background decryption
2015-10-30 10:18:27 +01:00
Daniel Gultsch c7ff196f58 push CN into nick pep node when uploading certificate. subscribe to nick node 2015-10-29 13:41:08 +01:00
fiaxh 29a849cb92 Decrypt PGP messages in background 2015-10-28 19:57:11 +00:00
Sam Whited e747ecef4d Don't synchronize on non-final field 2015-10-26 20:13:48 -05:00
Daniel Gultsch 3c45f00443 fixed read conversations showing up as notifications after a restart 2015-10-21 17:41:44 +02:00
Daniel Gultsch cfeb67d71d introduced code to verify omemo device keys with x509 certificates.
cleaned up TrustKeysActivity to automatically close if there is nothing to do
2015-10-16 23:48:42 +02:00
Daniel Gultsch 5f9476448f make unread status and notifications presistent across restarts 2015-10-14 21:18:34 +02:00
Daniel Gultsch b23cb5a9e4 initial UI work to allow setting up accounts from certifcates 2015-10-09 13:37:08 +02:00
saqura 403db3b080 Show whether MAM is supported in MUCs
The conference details in "Advanced Mode" now indicate whether MAM is
supported by the conference server.
2015-10-06 16:23:05 +02:00
Daniel Gultsch 5fb77a9739 fixed NPE when executing rename callback in muc 2015-09-28 15:36:55 +02:00
Daniel Gultsch b9002d7fd5 added missing type='submit' to mam queries
fixed some nasty inheritance problems along the way
fixes #1411
2015-09-15 22:52:39 +02:00
Daniel Gultsch 96575d6290 added possibiltiy to set conferences as moderated (only visible in advanced mode) 2015-09-13 17:13:46 +02:00
Daniel Gultsch 4220fa948b added mp4 to well known extensions. fixes #1403 2015-09-12 10:42:56 +02:00
Daniel Gultsch 7eb228d1a5 Issues with URLs with multiple dots in file. fixes #1373 2015-09-04 19:58:53 +02:00
Daniel Gultsch fc594e249a added special error state for dns timeout 2015-09-01 22:37:52 +02:00
Daniel Gultsch b0c19d6bac fixed bug that prevented newly opened conversations to load the entire history via mam. fixes #1328 2015-08-30 11:24:37 +02:00
Daniel Gultsch ea2ce78d6e be more restrictive about marking messages as sent_received in muc parser 2015-08-26 12:11:12 +02:00
Daniel Gultsch 8043833156 bugfix: next encryption is now being properly detected 2015-08-23 19:40:45 +02:00
Andreas Straub 6cd9383e53 Let UNTRUSTED/UNDECIDED keys become INACTIVE 2015-08-01 18:30:11 +02:00
Daniel Gultsch 60cd307f73 enable axolotl encryption for jingle supported file transfers 2015-08-01 01:19:16 +02:00
Daniel Gultsch 658919f239 improved 'next encryption' selection 2015-07-31 00:52:46 +02:00
Andreas Straub 74ab36fda2 Fix session logic: enforce same type of encryption 2015-07-30 19:18:09 +02:00
Daniel Gultsch 58d80f58be use gcm for file encryption over http 2015-07-29 23:45:37 +02:00
Andreas Straub e6df4d81d2 Tag carbon messages in parser, adapt session logic
Messages sent from another device of the own account are now explicitly
tagged as carboned message. The session detection logic now uses this
tag to find "session borders".
2015-07-29 16:41:58 +02:00
Andreas Straub efcefc2e63 Refactor out inner classes, cache trust store
Moves SQLiteAxolotlStore and XmppAxolotlSession into proper classes.

IdentityKeys trust statuses are now cached in an LruCache to prevent
hammering the database when rendering the UI.
2015-07-29 02:59:26 +02:00
Daniel Gultsch 8f14d2bfbd removed recursion in message.getMerged*() 2015-07-28 23:00:30 +02:00
Daniel Gultsch cd204d5931 show warning when trying to highlight users that have left the conference 2015-07-22 15:57:17 +02:00
Daniel Gultsch f7634a85be treat private, non-anonymous mucs like 1:1 chats notification wise 2015-07-22 15:31:00 +02:00
Andreas Straub 012f036840 Optimize imports 2015-07-20 14:26:29 +02:00
Andreas Straub e8ec2ee628 Don't merge messages with different trust statuses 2015-07-19 22:23:28 +02:00
Andreas Straub 9e8d9a6401 Show trust status of messages' originating session
Shade lock icon red if message was received in a session that has not
been marked trusted by the user or fingerprint is unknown
2015-07-19 22:23:27 +02:00
Andreas Straub d173913eba Overhauled Message tagging
Messages are now tagged with the IdentityKey fingerprint of the
originating session. IdentityKeys have one of three trust states:
undecided (default), trusted, and untrusted/not yet trusted.
2015-07-19 22:17:58 +02:00
Andreas Straub 491f623708 Fix displaying Contact IdentityKeys
Migrate ContactDetailsActivity to use new SQL IdentityKeys storage,
remove dead code from Contact class.
2015-07-19 21:32:27 +02:00
Andreas Straub 1b0596d574 Tag messages with originating session
This can be used later in order to display trust status of messages, as
well as for potential resending of messages in case of preKey conflicts.
2015-07-19 21:32:26 +02:00
Andreas Straub 3815d4efa3 Fetch bundles on-demand, encrypt in background
Bundles are now fetched on demand when a session needs to be
established. This should lessen the chance of changes to the bundles
occuring before they're used, as well as lessen the load of fetching
bundles.

Also, the message encryption is now done in a background thread, as this
can be somewhat costly if many sessions are present. This is probably
not going to be an issue in real use, but it's good practice anyway.
2015-07-19 21:32:26 +02:00
Andreas Straub 299bbdf27f Reformat code to use tabs
This really sucks to do it like this. Sorry. :(
2015-07-19 21:32:26 +02:00
Andreas Straub f73aa1a200 Reworked axolotl protocol layer
Numerous fixes
2015-07-19 21:32:25 +02:00
Andreas Straub b8048a5538 CryptoNext persistance layer mockup
Initial sketch of the peripheral storage infrastructure for the new
axolotl-based encryption scheme.
2015-07-19 21:32:21 +02:00
Daniel Gultsch ce527c8b76 account for downloaded http files in dup checker 2015-07-18 00:01:34 +02:00
Daniel Gultsch ce79f4bbe3 renamed downloadable to transferable 2015-07-10 15:11:03 +02:00
Daniel Gultsch bef731a3c8 refactored sendMessage and merged with resendMessage 2015-07-05 11:59:38 +02:00
Daniel Gultsch d30fb6f0a1 avoid very rare npe 2015-07-03 21:32:46 +02:00
Daniel Gultsch e4d1bd415d also offer http download for some 'well known extensions' 2015-07-02 23:19:50 +02:00
Daniel Gultsch f5ba9d4223 refactored message context menu 2015-07-02 23:13:00 +02:00
Daniel Gultsch c20a088ea8 changed mime type handling 2015-07-01 16:01:18 +02:00
Daniel Gultsch aca9d8036c made httpconnection (download) ready all kind of files 2015-06-30 17:15:02 +02:00
Daniel Gultsch d7de311379 refactored bodyContainsDownloadable to be more flexible 2015-06-30 13:52:53 +02:00
Daniel Gultsch 7e11570f2c show attach button in conferences when http upload is available 2015-06-29 15:21:41 +02:00
Daniel Gultsch 9eb9a52205 initial http upload support
be careful: little error handling and no encryption
2015-06-29 15:21:41 +02:00
Daniel Gultsch 58201b4408 changed paragraph divider 2015-06-10 03:30:17 +02:00
Daniel Gultsch 53e8964dc1 reworked handeling of system contacts 2015-06-03 14:05:54 +02:00
Daniel Gultsch fe1cff016f avoid unnessary muc mam queries when message count is 0 after subject 2015-06-02 13:33:20 +02:00
Daniel Gultsch dc91ff8f29 renamed OtrEngine to OtrService 2015-05-26 04:36:32 +02:00
Daniel Gultsch b731995a51 added mam stuff to new message parser 2015-05-20 03:48:14 +02:00
Daniel Gultsch e32f380dae provide helper function for getting the content of a child directly 2015-05-20 03:48:14 +02:00
Daniel Gultsch fce30f22c9 made white space check in bodyContainsDownloadable less aggresive 2015-05-16 12:49:04 +02:00
Daniel Gultsch 51aeeb766c use zero width white space as message seperator 2015-05-13 11:56:59 +02:00
Daniel Gultsch 93e444ac3a don't set unknown error in muc 2015-05-12 03:57:05 +02:00
Daniel Gultsch b6f85ba0dd avoid using paragraph style breaks by accident 2015-05-11 14:18:30 +02:00
Daniel Gultsch 53e43daa0d add a little bit of space between merged messages. 2015-05-11 09:08:56 +02:00
Daniel Gultsch 22b12091a1 rewrote parts of message adapter to avoid using NULL views 2015-05-11 07:57:52 +02:00
Daniel Gultsch 239e86a98a optimized heart render code a bit 2015-05-10 12:04:11 +02:00
Daniel Gultsch 33d1621e3b added white heart to new rendering as well 2015-05-10 11:56:23 +02:00
Daniel Gultsch 1e28f60038 changed conversation red to material red 2015-05-10 03:14:13 +02:00
Daniel Gultsch 4c486f5e58 paint single unicode hearts as red and slightly larger 2015-05-10 03:12:44 +02:00
Daniel Gultsch 5136bf9832 r/o support for vcard avatars. pep avatars will be prefered 2015-05-05 06:17:34 +02:00
iNPUTmice 62faa163f0 fixed typos 2015-04-13 18:18:25 +02:00
lookshe 6da77bdf3b Bugfix for issue #1121
check with lowercase to also match JPEG, JPeg ...

changed image url in comment
2015-04-13 16:21:00 +02:00
iNPUTmice 332fe0fd19 don't resume old session when changing resource 2015-04-09 12:46:54 +02:00
iNPUTmice 99b2ef7e9d respond to unreadable OTR messages with error message. fixed #1021 2015-03-21 16:07:17 +01:00
Mateusz "maxmati" Nowoty?ski 74e5317095 Do not Strigprep JIDs from database 2015-03-11 15:59:31 +01:00
iNPUTmice 87a048fe6f display geo uris as location. show 'send loction' in share menu if request location intent can be resolved 2015-03-07 14:15:38 +01:00
Daniel Gultsch ac577fe4fd added methods to count number of unread messages 2015-03-02 11:53:15 +01:00
iNPUTmice d318af098d merge messages with related status (unsend, send, send_received) 2015-03-01 12:05:54 +01:00
iNPUTmice f3be0d99cc don't add users with null nicks to muc user list 2015-02-27 17:04:13 +01:00
iNPUTmice fa45ceabc9 initilize keys with jsonobject value on parse error 2015-02-26 16:55:49 +01:00
iNPUTmice 3db5a48529 clear muc tiles cache only when necessary 2015-02-21 22:19:10 +01:00
iNPUTmice 7ee5e95959 added typing notifications through XEP-0085. fixed #210 2015-02-21 11:06:52 +01:00
iNPUTmice 45de788773 use time instead of uptime for unmute 2015-02-12 18:52:10 +01:00
Daniel Gultsch 00b2e30938 trim message bodys on display 2015-02-07 12:29:17 +01:00
Michael 29331e49b9 fix mergable() for /me command. 2015-01-25 16:58:06 +01:00
iNPUTmice 7839438f51 changed message duplicate finder 2015-01-20 22:54:58 +01:00
iNPUTmice 1e607d7b1b don't trim bodies 2015-01-19 12:15:27 +01:00
Sam Whited edd58f19b4 Add download button on notification if applicable 2015-01-16 01:10:01 -05:00
Daniel Gultsch 50c8065015 Merge pull request #866 from SamWhited/xep0245
Add XEP-0245 (/me command) support
2015-01-12 01:22:40 +01:00
Sam Whited 3c5224251c Add XEP-0245 (/me command) support 2015-01-11 18:32:00 -05:00
Daniel Gultsch b07b7519a6 keep proper image file extension 2015-01-11 15:19:36 +01:00
Daniel Gultsch 18eb187949 make room persistant when changing subject or other muc options 2015-01-10 23:10:32 +01:00
Daniel Gultsch a9159568b9 allow for very basic muc configuration 2015-01-08 21:29:26 +01:00
Daniel Gultsch 8d655f445a more muc options
* show invite button only with admin privileges or on public conferences
* Offer to ban user in public conferences.
Thanks to @betheg for the awesome ground work for this
2015-01-07 18:34:24 +01:00
Daniel Gultsch ef525fb10e basic affiliation changes in muc 2015-01-07 15:03:29 +01:00
Daniel Gultsch bdb335e6b0 Show affiliation instead of role in MucDetails and offer 'advanced mode' to display role 2015-01-05 15:06:39 +01:00
Daniel Gultsch 2723c9ccb9 made checks for valid image extensions case insensitive 2015-01-04 23:04:23 +01:00
Daniel Gultsch f338d89753 no longer use ConcurrentHashMap in favor of synchronize on a final HashMap 2015-01-04 00:14:40 +01:00
Daniel Gultsch be7de054be record voice and attachment refactor 2015-01-03 16:06:59 +01:00
Daniel Gultsch 8bda54d48c code cleanup 2015-01-03 00:47:22 +01:00
Daniel Gultsch 3df23a4f75 allow cancellation of waiting files 2015-01-02 14:27:49 +01:00
Daniel Gultsch 3833e6dfef improved OTR verification part one 2015-01-02 01:21:14 +01:00
Sam Whited e4d9dca2fe Add ability to change password on server
Fixes #260
2014-12-25 21:38:55 +01:00
Daniel Gultsch ef1f72ea27 catch another exception in fingerprint generation 2014-12-25 19:53:35 +01:00
Sam Whited af7a64491f Add support for XEP-0191 (Blocking command)
Fixes #791

Squash of commits:
534f25d7dae3ce6852243e28fdd0a69ac01e9463
808fdf5147f27a912a60bee39aa4bf1ddd4f43b4
1eaf8a8330710ad35ba7c368e04f909af623ae4c
31585242c2359efdcd0eeddb9745077f54dbc9eb
2e69bd0bd0286ed1e98a42f4c3421ba4d8cf524b
e904fb5015bf3a1904ab941a1957edf3b1e7abd2
eebbadf3b3816bbf8fcccb763e419fed252d266f
7c5b87724ce494e5a6e8026557ed50a8fd9f23e8
b0eaaf446937794fe19cbdb4f8309c3ff83d4e42
8c652f9e8bb3512958d9ad8c6f1326505f2d98c8
ad0ea1ad948ff6f8fde7b0b10f5163dc8852032f
f5d49897e0dba691ef53a0eddb9ed34d129ad442
a08fa64c505bd895b7c626cfad182380373be20b
de67079113e08394a276048c31f6b21baa300829
9069f342173ba30c2b20c67529c7ff497a6a257d
0169fa79d161ee898c4b6762e207087682a952d8
8585a5bd75a5d56927fed8317729bd15fffe4dcc
0053528a078369e0b65dcf71bda251072a1299c7
e901a9c3554bd7cca193e92919b463991eadfea7
c5c78257434813c69ab9b7558bcc8f7cbe858433
e905af348d46d77bc46b5f7211527684acc02fab
13a0f9a10c7892b0f90f5fabd2f2615701b0fd66
2cfba1e24b0139839e4453b92be7e20634d150cf
58e074fb5bb44b05a8104250fccd7c024c808c1a
0d6cf98fc8eab212d798ac79b336f9b70a14f06d
e23620f56b85bcab9f3b5d9ce1c01524cd9674dc
d72cd2fcc8d54176c3ff53411a69b9bb4642eff3
195143dff8836623a37094a6b8fa6aa01ef31580
5f5f3caf3a1e480a99d27ee5c34ba516419c52e4
1dee3d5861c9f9c710da4cbda3688d94c622ca93
23949b8aa32c78b27bab49bb3c4f3ff588925ce1
9bf97f8ae522796e0dacb7f6fe7a7f90f86a93a1
2014-12-22 08:19:00 -05:00
iNPUTmice 1517641713 get rid of special self presence object and incorporate that into roster 2014-12-20 17:23:03 +01:00
iNPUTmice ce4848f742 more null checks for otr fingerprints 2014-12-20 16:01:28 +01:00
iNPUTmice 40335785aa don't include empty fingerprints in list of otrfingerprints 2014-12-20 15:21:03 +01:00
iNPUTmice f00e168752 clean up conversation history after swtiching to a different conversation 2014-12-17 21:05:47 +01:00
iNPUTmice e084266595 migrated more jid parsing to use getAttributeAsJid. added error logging 2014-12-15 17:29:17 +01:00
iNPUTmice de06cb38d1 refactored the way certain messages are being found within a conversation 2014-12-14 18:10:46 +01:00
iNPUTmice 899802646c reverse through mam history when loading larger chuncks 2014-12-13 15:32:11 +01:00
iNPUTmice b523518e4b various mam improvments 2014-12-13 12:25:52 +01:00
iNPUTmice 1dcdc79a71 changed lastMessageReceived into lastMessageTransmitted to account for sent messages as well. (will trigger on sm ack) 2014-12-10 14:08:06 +01:00
iNPUTmice ccdb0fd971 save server id from mam messages. check for dups before adding mam 2014-12-10 14:08:06 +01:00
iNPUTmice 0ab530932a added max history age (default 1w). automatically sort newly added mam messages 2014-12-10 14:08:06 +01:00
iNPUTmice 4a94389f05 very basic mam support 2014-12-10 14:08:06 +01:00
iNPUTmice 34558cc277 store last message received date in conversation 2014-12-10 14:08:06 +01:00
iNPUTmice e623e28487 fixed #651 2014-12-03 17:05:37 +01:00
iNPUTmice 8f62d95e1f further npe checks 2014-12-03 10:45:47 +01:00
iNPUTmice c273637156 made muc parser more compatible with legacy mucs?! (whatever that is exactly) 2014-12-03 01:46:26 +01:00
iNPUTmice 4a80914603 fixed another npe in hasBookmark 2014-12-03 00:18:07 +01:00
iNPUTmice 39a3f372dd clean up getProposedNick 2014-12-03 00:06:57 +01:00
iNPUTmice 96bbd16ca5 worked around rare npe 2014-12-01 10:58:06 +01:00
Michael bdfdc5fb10 MUC: do not add yourself to the muc user list. 2014-11-23 15:19:07 +01:00
Michael dc0dba3faf remove unused imports. 2014-11-21 19:17:27 +01:00
Michael 44faec7051 STATUS_CODE_SELF_PRESENCE is not set in all case. 2014-11-21 16:14:56 +01:00
iNPUTmice de0b36fc78 verify contacts key only on initiating side of smp 2014-11-21 13:42:25 +01:00
Michael 3e3767cb06 change status codes string 'number' to a better readable constant. 2014-11-20 21:37:56 +01:00
iNPUTmice 0ad6d0616f brought ad hoc conferences back. fixed #688 fixed #367 2014-11-20 18:20:42 +01:00
iNPUTmice e9948f6b84 sent read marker to full jid 2014-11-19 17:40:42 +01:00
iNPUTmice 1122e084a0 simplified message merge condition 2014-11-18 14:49:49 +01:00
iNPUTmice 018a0c7978 better usage of synchronized in some places 2014-11-18 03:10:59 +01:00
iNPUTmice f41c3eee04 context menu for muc participants + refactor trueCounterpart to use Jid class 2014-11-17 20:02:46 +01:00
Sam Whited b6d8977237 Use `Locale.US' for string comparisons in search 2014-11-17 12:19:45 -05:00
iNPUTmice 8865cc406c trim search before searching 2014-11-17 17:31:26 +01:00
iNPUTmice 252c7e68d6 split search keywords by whitespaces and imply AND operatior 2014-11-17 17:24:33 +01:00
iNPUTmice 2036c58cd7 made tags searchable 2014-11-16 23:58:30 +01:00
iNPUTmice cf00f3fade happy hanukkah 2014-11-16 17:21:21 +01:00