Commit graph

2819 commits

Author SHA1 Message Date
Daniel Gultsch 00c062a0c8 fixed media preview for file types other than images 2018-09-12 14:37:41 +02:00
Daniel Gultsch 3608b0eb44 WIP: preview media before sending them
Note that this commit breaks a few things in that non video/image do not work and sharing media isn’t currently using the new mechanism either
2018-09-11 09:56:32 +02:00
Daniel Gultsch 7bde04877a avoid duplicate notifcation sounds 2018-09-09 21:34:41 +02:00
Daniel Gultsch 2d5bd539db sync roster after setting pgp id. fixes #2991 2018-09-08 12:46:15 +02:00
Daniel Gultsch 511335179f do not parse caps and pgp keys from muc presences 2018-09-08 12:45:05 +02:00
Daniel Gultsch be4c6bc2ca speed up DNS
run queries in parallel
decrease timeout
do not fall back to google
2018-09-08 11:30:20 +02:00
Daniel Gultsch accc378c4b hasInternetConnection() will always return true if type=ethernet 2018-09-06 23:18:06 +02:00
Daniel Gultsch eadd0c5f7a listen for Android 6 DND events 2018-09-06 23:17:37 +02:00
Daniel Gultsch ac7f0032af properly clear file adding notification if forground service channel is disabled 2018-09-06 22:05:15 +02:00
Daniel Gultsch 39b86de698 removed global notifications switch 2018-09-06 16:56:31 +02:00
Daniel Gultsch d86f4ce3a6 load contacts and start observer after giving permissions 2018-09-06 15:55:54 +02:00
Daniel Gultsch 816f5b6d22 make channel for video compression 2018-09-06 15:37:31 +02:00
Daniel Gultsch 5675f65d6d use adaptive launcher icon :-/ 2018-09-05 22:24:58 +02:00
Daniel Gultsch 676d31f606 initial work toward api 26+
* introduce notification channels
* always use foreground service on 26+
2018-09-05 21:37:12 +02:00
Daniel Gultsch d5b50d1076 fixed user hint in magic create mode 2018-09-05 20:16:45 +02:00
Daniel Gultsch 516b6dcc1f code cleanup for group chat user context menu 2018-09-02 20:54:50 +02:00
Daniel Gultsch ffc5d47091 Merge branch 'start_convervsations_by_long_press' of https://github.com/ChaosKid42/Conversations into ChaosKid42-start_convervsations_by_long_press 2018-09-02 15:02:03 +02:00
Christoph Scholz 3ecb7136c1 start new conversations by long press on avatar 2018-09-01 21:05:31 +02:00
Daniel Gultsch 06f37b0d2b AudioPlayer: disable screen and switch to earpiece when holding phone to ear
Based of initial worked by @harshitbansal05
2018-09-01 18:23:07 +02:00
Daniel Gultsch f533e526fb catch illegalargument exception when discovering extension from url 2018-09-01 16:56:20 +02:00
Daniel Gultsch 6d6bbc0a5d removed synchronized in favor of another interrupted check in startXmpp() 2018-09-01 10:07:40 +02:00
Daniel Gultsch c05acccf17 catch illegal state not illegal argument on popBackStack() 2018-09-01 10:07:04 +02:00
Daniel Gultsch 201d8ab398 do not show 'delete contact' for phone contacts. do not treat as stranger 2018-08-31 11:04:45 +02:00
Daniel Gultsch b565c20d91 make recording activity not crash if microphone was in use. fixes #3160 2018-08-31 11:04:18 +02:00
Daniel Gultsch 2febbe1b8d show jids from address book in Start Conversation screen if only one account is used 2018-08-30 18:45:22 +02:00
Daniel Gultsch af724a6697 make port field disabled if hostname is empty 2018-08-29 09:33:02 +02:00
Daniel Gultsch 658caec342 use volatile for thread object in xmppconnection 2018-08-28 17:51:18 +02:00
Daniel Gultsch c4ca381c7f remove dividers from settings 2018-08-28 17:50:36 +02:00
Daniel Gultsch cbea85c4dd special treatment for presence errors known to be mucs 2018-08-28 15:04:55 +02:00
Daniel Gultsch 268fcd3838 disabled by default variant of XEP-0392 2018-08-19 22:33:20 +02:00
Daniel Gultsch 9f191f64da do not display 'user left' toast in members only groups. fixes #3144 2018-08-19 22:13:13 +02:00
linkmauve 49349d898b add id="current" on every published PEP item (#3133)
This makes sure even misconfigured PEP nodes still get only one item, as
defined in XEP-0060 §12.20.
2018-08-18 18:24:29 +02:00
Daniel Gultsch 02b7b0b4a6 do grace period calculation only on positive periods 2018-08-18 18:20:58 +02:00
Daniel Gultsch 8f057a0c95 try to catch out of memory exception 2018-08-18 18:13:51 +02:00
Daniel Gultsch 25aa6bed1e upgrade babbler version 2018-08-18 18:13:18 +02:00
Daniel Gultsch dc5e7e5d95 store bookmarks in pep if conversion xep is running 2018-08-18 16:27:50 +02:00
Daniel Gultsch f93cb8ede1 Revert "Patterns: attempt at fixing complex xmpp URIs (typically xmpp:#mychan%irc.server@xmpp.server.tld?join) (#3115)"
This reverts commit a4004904fe.
2018-07-22 22:42:35 +02:00
Daniel Gultsch fd28b32d56 call onMessageFound outside sync block 2018-07-22 22:42:32 +02:00
Daniel Gultsch 53a9930837 show toast if no address book app is installed 2018-07-22 22:42:05 +02:00
Daniel Gultsch 1764656ff9 call switchTo(Fore|Back)ground() outside synchronized block 2018-07-16 21:35:52 +02:00
Romain DEP a4004904fe Patterns: attempt at fixing complex xmpp URIs (typically xmpp:#mychan%irc.server@xmpp.server.tld?join) (#3115) 2018-07-16 20:50:23 +02:00
Daniel Gultsch 93836d94ee null pointer check in notification service 2018-07-16 20:49:30 +02:00
Daniel Gultsch ae35593f65 catch all exceptions when checking file size 2018-07-16 20:42:40 +02:00
Daniel Gultsch 2cc601ee36 do not call listeners while being synchronized on stanza queue 2018-07-16 20:42:17 +02:00
Daniel Gultsch 4871263d9c display propper toast after room has been destroyed 2018-07-11 21:33:27 +02:00
Daniel Gultsch f9c5cdee6e fall back to random subject langugae in case there is no english one 2018-07-11 13:20:06 +02:00
Daniel Gultsch 9bdebb81ba handle non participating mucs a bit better 2018-07-09 11:35:30 +02:00
Daniel Gultsch 728c86222d do not add in_roster flag when restoring from disk 2018-07-09 11:06:23 +02:00
Daniel Gultsch 7b64a031cd store own affiliation and role to disk 2018-07-08 20:52:55 +02:00
Daniel Gultsch 3014b7f857 change listener lock strategie 2018-07-08 20:01:39 +02:00
Daniel Gultsch 0f233022a6 standards. right? 2018-07-07 11:29:50 +02:00
Daniel Gultsch 48e366e410 support mam:1 2018-07-07 11:20:39 +02:00
Daniel Gultsch 0fa97bdc11 show snackbar for resource constraint in mucs 2018-07-07 10:28:31 +02:00
Daniel Gultsch a1f933924c open trust key screen when download is in progress 2018-07-07 08:53:11 +02:00
Daniel Gultsch 59697eb092 fixed npe in paste as quote 2018-07-06 20:16:15 +02:00
Daniel Gultsch 1cc3f5bed7 make xmppuri deal with null input 2018-07-06 20:16:04 +02:00
Daniel Gultsch a23d9929f1 use sets instead of list for listeners 2018-07-06 20:15:45 +02:00
Daniel Gultsch 49d5c1eb52 only look at inner 70% to calculate overlay 2018-07-01 12:06:09 +02:00
Daniel Gultsch 55fcda3cee use dark play/gif button as overlay when image is mostly light 2018-06-30 17:52:34 +02:00
Daniel Gultsch dfb95f0a84 persist muc avatar and show in bookmarks 2018-06-30 13:35:17 +02:00
Daniel Gultsch 9408dd597a try to fix race condition with empty trust ui 2018-06-30 13:35:05 +02:00
Daniel Gultsch 3218ca3fe3 shorten read markers to 'everyone has read up to this point' when > 4 user 2018-06-30 12:14:42 +02:00
Daniel Gultsch 559852002e offer paste as quote for html clips 2018-06-30 11:08:20 +02:00
Daniel Gultsch 9ef7570d48 use EmojiWrapperEditText for most relevant text inputs 2018-06-29 13:40:55 +02:00
Daniel Gultsch af420c84a0 automatically start download if file size is known 2018-06-28 17:44:00 +02:00
Daniel Gultsch ee3438b03a use + as build metadata delimiter 2018-06-28 08:49:48 +02:00
Daniel Gultsch db03470eb4 fixed MucOptions.getName() 2018-06-27 17:17:44 +02:00
Daniel Gultsch d6a40a839a click on item selection 2018-06-27 17:17:31 +02:00
Daniel Gultsch 23af9183ba dismiss snackbar when executing pending action 2018-06-25 20:04:30 +02:00
Daniel Gultsch 9a4109eaa1 catch rare state loss exception when hitting home button to pop back stack 2018-06-25 10:31:22 +02:00
Daniel Gultsch ad5c9f85c3 clean up imports 2018-06-25 09:46:52 +02:00
Daniel Gultsch 6c0b977a0e use emoji transform for toolbar and muc name 2018-06-25 09:25:55 +02:00
Daniel Gultsch 0fffc7a1ac restart file observer when permisson are granted 2018-06-24 20:54:01 +02:00
Daniel Gultsch 9d69b38147 fix regression with background color in conv overview 2018-06-24 18:57:06 +02:00
Daniel Gultsch 27a1bdb4b9 use tertiary background color for landscape conversation overview 2018-06-24 16:59:27 +02:00
Daniel Gultsch e8a1f069c2 reset subject and name on empty 2018-06-24 16:33:15 +02:00
Daniel Gultsch 4c9e331e01 save name instead of subject in bookmark 2018-06-24 16:17:20 +02:00
ChaosKid42 42b1e56cd9 improve identification of muc service (#3094) 2018-06-24 15:42:54 +02:00
Daniel Gultsch b0e1b5b02d refined create conference dialog 2018-06-24 11:23:10 +02:00
Daniel Gultsch 4f1e71e3c4 choose contact activity: start action mode on short press 2018-06-23 21:35:37 +02:00
Daniel Gultsch a623e6f70a change avatar size in details screens depedning on screen width 2018-06-23 19:00:23 +02:00
Daniel Gultsch a934054038 scale text size if topic is long 2018-06-23 13:14:12 +02:00
Daniel Gultsch 1b0e9f2f0d open/close soft keyboard in quick edit 2018-06-23 09:29:29 +02:00
Daniel Gultsch 64aa238d57 make safe button work 2018-06-23 00:58:20 +02:00
Daniel Gultsch 1f3b4e2ccf non functional muc edit button 2018-06-22 21:55:54 +02:00
Daniel Gultsch e6532e739a do not include white listed domains in room list. fixes #3082 2018-06-22 20:25:50 +02:00
Daniel Gultsch 1fc432af53 use TextInputLayout in quickedit dialog 2018-06-22 17:42:52 +02:00
Daniel Gultsch 9cc22ce992 introduced build flavor to build w/o emoji compat 2018-06-21 14:26:25 +02:00
Daniel Gultsch 4b3de32a4e linkify subject + open xmpp directly w/o going through start conv activity 2018-06-20 15:12:02 +02:00
Daniel Gultsch 8a987f23f6 code clean up in contact details presence handling 2018-06-20 12:59:15 +02:00
Daniel Gultsch 6c27d07803 fixed some extended muc info handling. match what ejabberd does 2018-06-19 11:05:21 +02:00
Daniel Gultsch 159fedb358 use room name (if available and != localpart) as group name 2018-06-18 22:17:10 +02:00
Daniel Gultsch d59cc3b738 show toast before finishing publish activity 2018-06-18 17:32:48 +02:00
Daniel Gultsch a043ee6db6 show jid in group details 2018-06-18 15:05:31 +02:00
Daniel Gultsch d7ebd7d453 WIP: set room avatar and slight redesign of group details 2018-06-18 14:15:19 +02:00
Daniel Gultsch f434925753 do not include read only chats in contact chooser. fixes #3077 2018-06-16 19:00:23 +02:00
Daniel Gultsch b9bdb3df55 use Tor on http upload is account uses onion domain. fixes #3075 2018-06-16 18:31:55 +02:00
Daniel Gultsch 582178991b deduplicate tags + translate 'blocked' tag 2018-06-16 18:14:49 +02:00
Daniel Gultsch 13f1a23889 introduced config setting to hide error notification 2018-06-14 15:01:25 +02:00
Daniel Gultsch 17db77ed5d Merge branch 'trailing_url_slash' of https://github.com/klonfish/Conversations into klonfish-trailing_url_slash 2018-06-11 16:19:51 +02:00
Daniel Gultsch e8066debf8 add ‘paste as quote’ for api >= 23 2018-06-11 15:32:18 +02:00
Daniel Gultsch 37c3bdb8bf fall back to search in other tab on search enter 2018-06-10 19:48:30 +02:00
Daniel Gultsch 10cee98913 Added expert setting for direct search 2018-06-10 19:40:55 +02:00
Daniel Gultsch fcfb695e7a permit empty values for subject and roster name 2018-06-10 19:12:46 +02:00
Klaus 30e5f9b290 fix geo uri regex (fix #3050) (#3071)
- only match valid float numbers
- match uri with parameter
2018-06-10 18:53:07 +02:00
ChaosKid42 d86f0787da fix cleanPrivateStorage() (#3065) 2018-06-07 08:09:31 +02:00
Daniel Gultsch 258c7d1b3b attach editor content as file 2018-06-06 19:59:30 +02:00
Daniel Gultsch 4019593181 report unparsable limit as http upload available 2018-06-05 16:18:18 +02:00
Daniel Gultsch 7bcbca7aee edit public=true/false property in mucs 2018-06-02 12:06:01 +02:00
Daniel Gultsch c8a0bf7090 OMEMO: remove omemo device from own list if bundle is broken 2018-05-28 22:08:20 +02:00
Daniel Gultsch 4557a3fc4f make sure account is connected before attempting to download p1s3 2018-05-27 20:39:12 +02:00
Christian Schneppe be3955ba8f add missing else to show the availability of httpupload correctly (#3048) 2018-05-27 10:49:26 +02:00
Daniel Gultsch 1854e37e7a reintroduce support for old http upload 2018-05-26 21:43:50 +02:00
ChaosKid42 bc50239c2a improve active_since implementation (XEP-0319: Last User Interaction in Presence) (#3045)
* set contact to inactive if it becomes offline

* send idle also in case app started in background
2018-05-26 15:57:33 +02:00
Daniel Gultsch fd7a5c605a Do not use TLS_FALLBACK_SCSV
closes #2937

Thanks to @tmolitor-stud-tu for explaining the situation in
https://github.com/guardianproject/NetCipher/pull/74
2018-05-26 10:22:44 +02:00
Daniel Gultsch 1510958278 do not show file id in check size button 2018-05-26 10:17:38 +02:00
Daniel Gultsch 2d118b5a21 show S3 file transfer in server info if http upload is n/a 2018-05-26 10:17:24 +02:00
Daniel Gultsch ea5cdec186 handle p1s3 urls in http downloader 2018-05-25 15:37:14 +02:00
Daniel Gultsch 4626bdf8d8 show p1s3 attchments with download button 2018-05-25 13:18:25 +02:00
Daniel Gultsch 70d95c7903 upload files using p1s3 - sending part 2018-05-25 12:24:23 +02:00
Daniel Gultsch a149f0db27 set pragme secure delete properly 2018-05-20 18:01:47 +02:00
Alexander df64d965a0 explicitly set secure_delete pragma for SQLite database (#3039)
Conversations stores sensitive data, such as SQLiteAxolotlStore tables, in its database.

secure_delete=ON is the default for newer Android devices:
https://android-review.googlesource.com/c/platform/external/sqlite/+/209123

However, older devices had it disabled by default, so any database created than has this setting disabled and it will not be updated automatically.

Also, the default might be changed in the future (for example, to "FAST", added in 2017), so it is safer to set it explicitly.
2018-05-20 16:50:27 +02:00
Daniel Gultsch 3be3bfb492 make file observer listen for moves 2018-05-20 16:19:23 +02:00
Alexander 9bff9900d1 move enabling of foreign key support to onConfigure (#3038)
This way we avoid repeating the code. Unlike getWritableDatabase, onConfigure is intended to be overridden.

In fact, onConfigure documentation specifically says: "Called when the database connection is being configured, to enable features such as write-ahead logging or *foreign key support*."
2018-05-20 15:54:56 +02:00
Holger Weiß e948d12085 Make nickname matching case-sensitive (#3035)
Perform case-sensitive matching for highlighting the own nickname in MUC
messages and while checking whether to notify.
2018-05-20 15:54:34 +02:00
Daniel Gultsch 39e4b26ff0 prefetch omemo device lists only if muc has omemo enabled 2018-05-20 12:10:07 +02:00
Daniel Gultsch 383b32c80d make fcm receiver ignore messages when all accounts are disabled 2018-05-20 12:01:07 +02:00
Daniel Gultsch ec54a483f8 migrate to fcm library 2018-05-19 20:05:45 +02:00
Daniel Gultsch 2230d5a42c do not save draft if message is completly empty and fixed appending shared text 2018-05-19 14:30:42 +02:00
Daniel Gultsch be579332be do not use trigger but delete message index entries manually 2018-05-17 20:17:00 +02:00
Wiktor 0bb600f0b3 Extend QR scanner to support VCard with IMPP field (#3027)
Currently QR scanner supports only URIs. VCard specification allows
embedding instant messaging protocols in the `IMPP` field [0].

This change will extract the first XMPP URI from `IMPP` field if a VCard
has been scanned and process it just like if the XMPP URI was scanned
directly. In case the contact is not already present in the roster this
will pop up "Add contact" window.

Example VCard with this URI:

    BEGIN:VCARD
    FN:Test Contact
    EMAIL:test@example.com
    IMPP:xmpp:test@example.com
    END:VCARD

[0]: https://tools.ietf.org/html/rfc6350#section-6.4.3
2018-05-16 15:08:38 +02:00
Daniel Gultsch 5ef7c29264 changed command paramater for new push server 2018-05-16 11:29:06 +02:00
Daniel Gultsch 9ef2d32a3e changed jid of push server 2018-05-12 17:23:37 +02:00
Daniel Gultsch d5a187bafb use Tor to download map tiles if configured to do so 2018-05-11 12:42:39 +02:00
Daniel Gultsch 543d1f689b do not use end in catchup mam queries 2018-05-11 11:16:29 +02:00
Daniel Gultsch 170fbf0de3 switch to aac with slightly heigher sample and bit rate. fixes #3021 2018-05-11 10:08:45 +02:00
klonfish 41760b40ef Improved URL matching
URLs with trailing special chars (e.g. slash, minus, ...) should now be
matched correctly, even when followed by a non-url char
2018-05-10 20:55:05 +02:00
Daniel Gultsch 678fcf8b31 removed dead code + null check 2018-05-10 18:59:17 +02:00
Daniel Gultsch b0db88c405 add primary key to fts table 2018-05-10 11:28:09 +02:00
Daniel Gultsch 5b41906328 do not include body in simple status updates to not trigger fts update 2018-05-10 10:47:28 +02:00
Daniel Gultsch e84a65bc86 do not load conversations with null jid 2018-05-09 11:09:01 +02:00
Daniel Gultsch 18a8a6e5ac make session completion work with untrusted devices as well 2018-05-09 09:24:31 +02:00
Daniel Gultsch ffe610f961 max out emoji enlargment at 42 emojis 2018-05-09 09:07:26 +02:00
Daniel Gultsch 13d6885883 split heighlights by special characters. fixes #3007 2018-05-07 11:14:33 +02:00
Daniel Gultsch 78b56bb904 don’t scall images to a 0 width or height 2018-05-07 11:13:46 +02:00
Daniel Gultsch 7ca719b8be apply styling helper to conversation overview 2018-05-06 11:22:20 +02:00
ChaosKid42 1fcd69ce40 ban can be disabled in Config.java (#3016) 2018-05-05 19:40:43 +02:00
Daniel Gultsch 8cd222b046 XmppUri code cleanup 2018-05-04 22:07:00 +02:00
Daniel Gultsch 77fc8d2d9e encode and decode % and # in invite links 2018-05-04 12:18:31 +02:00
Daniel Gultsch 9b73029267 copy jabber id and web url via context menu 2018-05-04 11:39:03 +02:00