Commit Graph

4219 Commits

Author SHA1 Message Date
Daniel Gultsch 18752a5c58 write null bitmap to imageview to replace asyncdrawable 2018-10-24 20:00:56 +02:00
Daniel Gultsch d6f604a8e4 code cleanup, null check not necessary when using instance of 2018-10-24 20:00:25 +02:00
Daniel Gultsch bb6ddae76b ask for permission when committing attachments. fixes #3248 2018-10-24 20:00:06 +02:00
Daniel Gultsch 185d36d270 do not provide up navigation in publish account when in setup mode 2018-10-23 21:25:38 +02:00
Daniel Gultsch f9cafc144b refactor magic creates password gen to CryptoHelper 2018-10-20 00:05:10 +02:00
Daniel Gultsch 7177c523a1 Do not insert text shared over XMPP uri when already drafting message
XMPP uris in the style of `xmpp:test@domain.tld?body=Something` can be used to
directly share a message with a specific contact. Previously the text was
always appended to the message currently in draft. The message was never send
automatically. Essentially those links where treated like normal text share
intents (for example when sharing a URL from the browser) but without the
contact selection.

There is a concern (CVE-2018-18467) that when this URI is invoked automatically
and the user is currently drafting a long message to that particular contact
the text could be inserted in the draft field (input box) without the user
noticing.

To circumvent that the text shared over XMPP uris that contain a particular
contact is now appended only if the draft box is currently empty.

Sharing text normally (**with** manual contact selection) is still treated the
same; meaning the shared text will be appended to the current draft. This is
intended behaviour to make the
'Hey I have this cool link here;' *open browser*, *share link* - secenario
work.
2018-10-19 15:39:31 +02:00
Daniel Gultsch 71bbd379e9 removed unused paramater 'newTask' from switchToConversation api 2018-10-19 15:18:36 +02:00
Daniel Gultsch 7ff5aa3006 removed unused resources 2018-10-17 23:02:02 +02:00
Daniel Gultsch 304ad9aab9 pulled translations from transifex 2018-10-17 23:01:34 +02:00
Daniel Gultsch 4f12cf06ed revert back to 16 byte IVs for omemo since ChatSecure doesn’t support 12 byte 2018-10-17 20:46:57 +02:00
Daniel Gultsch 5f8184fe8e only store non hardcoded resolver result in db 2018-10-16 12:23:27 +02:00
Daniel Gultsch 2edab21423 render 'read up to this point' in 1:1 when followed by date bubble
fixes #3237
2018-10-16 12:18:28 +02:00
Daniel Gultsch 995f95ce99 pulled translations from transifex 2018-10-14 22:08:07 +02:00
Daniel Gultsch 2e2914ee78 fixed NPE after attempt to store user@ip style jid resolver result 2018-10-13 16:13:33 +02:00
Daniel Gultsch dd1d1858d0 fixed cache cleaning cleaning all confercenes instead of where contact is. closes #3229 2018-10-12 16:13:37 +02:00
Daniel Gultsch a08da684e1 pulled translations from transifex 2018-10-11 15:46:43 +02:00
Daniel Gultsch 7734047698 pulled translations from transifex 2018-10-11 05:14:11 +02:00
Daniel Gultsch 5718d552ed do not show 'open website' button after info has changed
fixes #3220
2018-10-11 05:06:46 +02:00
Daniel Gultsch 409bf3c0cb use bouncycastle provider up to api 27
apparently using conscrypt on Android below version 7? throws an exception when using 16 byte IVs.
so we now use BC when ever possible (excluding api 28)

we don’t know why Conscrypt behaves differently on various android versions
2018-10-11 04:36:37 +02:00
Daniel Gultsch 7c5af89c89 offer either 'cancel download' or 'delete file' but not both
fixes #3221
2018-10-11 04:33:14 +02:00
Licaon_Kter 58c6dbbbbe Lower foreground service notification priority (#3223)
...so no useless icon is shown on the status bar on Android 7 and older (as it was up to 2.2.9)
2018-10-11 02:44:17 +02:00
Daniel Gultsch 57fe153ef1 make 'cancelled' work for jingle ft 2018-10-08 10:31:41 +02:00
Daniel Gultsch bdb8d98eb1 show snackbar for remote server timeout in mucs 2018-10-08 10:31:11 +02:00
Daniel Gultsch de0741bdf7 show cancelled instead of delivery failed if user requested to abort transfer 2018-10-07 14:59:08 +02:00
Daniel Gultsch 284861de65 Do not attempt to draw overlay on null bitmap 2018-10-07 13:44:20 +02:00
Daniel Gultsch 3dceb9d3ad refactor video qualtiy selector; less technical descriptions; code cleanup 2018-10-07 13:09:13 +02:00
Daniel Gultsch 84f7aeaea0 Merge branch 'video-selector' of https://github.com/licaon-kter/Conversations into licaon-kter-video-selector 2018-10-07 09:51:14 +02:00
Licaon_Kter 02be93ae66
Fix leftover string 2018-10-07 01:36:47 +00:00
licaon-kter a6fef8101b Fix selector, limit formats to 360 & 720 per CTS 2018-10-07 04:25:16 +03:00
Daniel Gultsch f23311ab3f PRNG fixes were a nop ever since we switched to 4.4+ 2018-10-06 19:34:20 +02:00
Daniel Gultsch 521bb7846c catch exception if Conscrypt could not be initialized and use tls 1.2 2018-10-06 19:33:38 +02:00
Daniel Gultsch d02b1237f7 pulled translations from transifex 2018-10-06 18:46:07 +02:00
Daniel Gultsch 8980a0c631 make jids appear as monospace in dialogs 2018-10-06 17:03:12 +02:00
licaon-kter fcccf545ba Add video compression selector 2018-10-06 17:15:32 +03:00
Daniel Gultsch fd165e5106 add confirmation dialog for deleting files
fixes #3202, closes #3193, closes #3214
2018-10-06 14:59:28 +02:00
Daniel Gultsch 7aa8aba5c0 code cleanup / reformat in ShareViaAccount 2018-10-06 12:48:39 +02:00
Daniel Gultsch f2f44c7478 pulled translations from transifex 2018-10-05 10:05:35 +02:00
ChaosKid42 cd13f438c0 add recordings directory to file_paths.xml for sharing recordings in (#3216)
case ONLY_INTERNAL_STORAGE = true
2018-10-05 09:51:37 +02:00
Daniel Gultsch a6ced5bee8 pulled translations from transifex 2018-10-04 22:44:54 +02:00
Daniel Gultsch ce46b36c33 go back to 16 byte IVs for OMEMO
clients like Dino can’t handle 12 byte IVs
2018-10-04 22:32:42 +02:00
Daniel Gultsch 0e3be466ad fixed regression introduce in earlier commit. don’t use conscrypt on older devices 2018-10-04 19:21:23 +02:00
Daniel Gultsch bfa63e13c5 added a few TODOs in regards to the handling of inactive devices 2018-10-04 18:48:45 +02:00
Daniel Gultsch 04ac2264e8 Do weOwnFile security check only when attaching
The general security check is recommend so a third party can not ask us to send an internal file. But we don’t need to do this for files we attach ourself from within Conversations
2018-10-04 17:17:20 +02:00
Daniel Gultsch 657b1cae9d use fab.hide() and fab.show() - this will animate the process 2018-10-04 16:46:35 +02:00
Daniel Gultsch 390175e5b3 use short read timeout when waiting for first stream open. disable read timeout aftwards 2018-10-04 11:20:02 +02:00
Daniel Gultsch a34033dea3 run through sendMessage() procedure instead of taking shortcut after returning from TrustKeys
The shortcut didn’t take care of message edits and some other things
2018-10-03 23:23:47 +02:00
Daniel Gultsch 23282484d6 prevent race condition when fetching device ids 2018-10-03 22:03:47 +02:00
Daniel Gultsch f608fb349a refactored file encryption to give access to inner stream
Conscrypt on some plattforms doesn’t like when we close the CipherInputStream. Therefor we refactor the api to give us access to the inner stream so we can close that independently.
2018-10-03 18:14:45 +02:00
Daniel Gultsch 4c08ba8d03 use 12 byte IV for omemo and http upload 2018-10-03 17:44:48 +02:00
Daniel Gultsch 9ca636589c remove more legacy otr decryption code 2018-10-03 12:50:54 +02:00
Daniel Gultsch 7fa8811f64 refresh ui after device list update only if list has changed 2018-10-03 11:53:02 +02:00
Daniel Gultsch b2cbd60f94 use Consistent Color Generation (XEP-0392 v0.6) 2018-10-02 20:33:53 +02:00
Daniel Gultsch 98d3d91a8e create notification channel for quite hours. fixes #3212 2018-10-02 20:25:03 +02:00
Daniel Gultsch d7f058c5b8 pulled translations from transifex 2018-10-01 20:17:32 +02:00
Daniel Gultsch d4b98c9aff made xmpp domain verifier verify wildcard domains where domain is a sub.sub domain 2018-10-01 17:08:23 +02:00
Daniel Gultsch db2107c093 clean up connection code. unify domain = ip and extended connection settings into fake resolver 2018-10-01 17:07:37 +02:00
Daniel Gultsch 8270adf703 use sni and alpn for start tls as well. apperently google requires it 2018-10-01 11:34:27 +02:00
Daniel Gultsch 1cbb60d7ed removed unused code (otr jingle encrypted file transfer) 2018-09-30 13:48:11 +02:00
Daniel Gultsch bb6b647af8 use stronger video compression (lower bitrate & lower resolution) 2018-09-28 18:38:54 +02:00
Daniel Gultsch 9816261569 introduced error code for server not opening stream after auth or starttls 2018-09-27 17:39:49 +02:00
Daniel Gultsch cf879dd8e8 fixed sni and alpn for kitkat 2018-09-27 10:00:58 +02:00
Daniel Gultsch d737ea296e code cleanup 2018-09-27 09:59:05 +02:00
Daniel Gultsch 681ce91ab8 do not run through connection loop after thread was interrupted and resolver returned 0 results 2018-09-26 14:39:04 +02:00
Daniel Gultsch 6121217df5 fixed auth 2018-09-26 10:39:36 +02:00
Sam Whited ef4cfacaf4 Fix auth when upgrading from SCRAM-SHA-1 to -256 (#3192) 2018-09-26 10:19:54 +02:00
Daniel Gultsch 9015d0a1fc interrupt sub thread in resolver 2018-09-26 10:18:56 +02:00
Daniel Gultsch cdcd2f8b04 do not show 'paste as quote' if clip is NULL 2018-09-24 20:33:05 +02:00
Daniel Gultsch 9e7db440df pulled translations from transifex 2018-09-24 19:47:20 +02:00
Daniel Gultsch 23b641a6ad fixed notification sounds for Android 6 2018-09-24 19:47:11 +02:00
Daniel Gultsch 5cf64826ac check if wake lock needs reinit when pressing start/pause in audio player 2018-09-23 11:47:13 +02:00
Daniel Gultsch 2d206122a5 use conscrypt api to set sni and alpn 2018-09-23 11:20:23 +02:00
Daniel Gultsch 70845c5e95 do not compress/resize images with strange aspect ratios. fixes #3188 2018-09-22 16:51:00 +02:00
Daniel Gultsch b759cf902d fixed regression that didn’t enable SNI 2018-09-22 13:32:46 +02:00
Daniel Gultsch 6637d7056e use conscrypt as security provider to provide tls 1.3 and modern cyphers on old androids 2018-09-21 16:33:07 +02:00
Daniel Gultsch 1985f6bdec store avatars received over muc presence in contact 2018-09-21 12:27:58 +02:00
Daniel Gultsch 4930f22615 copy into new array when returning from resolver 2018-09-20 20:29:21 +02:00
Daniel Gultsch 5be64de7be catch conversations.im invite urls directly in fragment 2018-09-18 17:15:52 +02:00
Daniel Gultsch 53cd58c955 fixed text sharing in direct sharing 2018-09-18 17:03:08 +02:00
Daniel Gultsch 6ede6c7f85 behave nicely (no foreground service by default) if app is built with targetSdk <26 2018-09-18 11:33:18 +02:00
Daniel Gultsch 5599c1f6f4 pulled translations from transifex 2018-09-17 21:31:00 +02:00
Daniel Gultsch bd128335d3 do not show media overview in contact/conference details when missing storage permission 2018-09-17 21:24:25 +02:00
Daniel Gultsch 09eca8478e use javax api instead of BC for file decryption 2018-09-17 17:47:51 +02:00
Daniel Gultsch 67e7d2cf9e do not use BC provider on android 22+ 2018-09-17 17:47:36 +02:00
Daniel Gultsch 542abb7a95 pulled translations from transifex 2018-09-16 16:02:52 +02:00
Daniel Gultsch c5fcd03489 check omemo keys when attachments are commit instead of before 2018-09-16 15:58:05 +02:00
Daniel Gultsch 6a6287bbd7 commit next message (draft) when input box gets emptied. causes tablet view to update 2018-09-16 15:26:33 +02:00
Daniel Gultsch 3624d11824 create notification channel for export service 2018-09-16 14:40:28 +02:00
Daniel Gultsch c141f16065 modify media preview sizes for various screens 2018-09-16 14:09:15 +02:00
Daniel Gultsch a6bcd9afe9 show inactive keys if all of them are 2018-09-16 14:08:56 +02:00
Daniel Gultsch b8474941c7 clear parent activities pending view intent before calling startAcitvityForResult() 2018-09-16 10:09:22 +02:00
Daniel Gultsch febd9cc3e0 fixed regression that would not dismiss video encoding notification 2018-09-16 10:07:33 +02:00
Daniel Gultsch 0977f300dd s/show media/view media/g 2018-09-16 09:47:33 +02:00
Daniel Gultsch 7a0c53aa71 introduce media browser activity 2018-09-15 21:10:17 +02:00
Daniel Gultsch 06972ec95c show conversation media in contact/conference details 2018-09-15 19:38:45 +02:00
Daniel Gultsch 63f203c1d1 do some performance optimizations on jid host suggestions. fixes #3174 2018-09-14 14:00:26 +02:00
Daniel Gultsch e0266d0efb fix media preview in tablet mode 2018-09-13 18:48:21 +02:00
Daniel Gultsch 724f86f054 made foreground service logging more meaninful 2018-09-13 18:47:57 +02:00
Daniel Gultsch 63f374c90f pulled translations from transifex 2018-09-12 23:04:36 +02:00
Daniel Gultsch c795cdb722 add icon for unknown file while keeping 'file' icon for documents 2018-09-12 22:56:40 +02:00
Daniel Gultsch b15777bd3a make media previews survive rotations 2018-09-12 22:20:19 +02:00
Daniel Gultsch fbc1d242ca allow sharing and attaching of multiple files
fixes #3132
2018-09-12 18:43:17 +02:00
Daniel Gultsch d7cdec002c add more thumbnail icons for various file types 2018-09-12 18:10:37 +02:00
Daniel Gultsch 943f11e1f6 share with uses new preview mechanism 2018-09-12 17:21:32 +02:00
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 db6b9ab12b pulled translations from transifex 2018-09-08 12:50:11 +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 14e0df2caf provide intent filter to launch settings from notification groups controls 2018-09-06 15:37:15 +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 11f67ac1ae fixed own avatar not being square in message view 2018-09-05 18:02:44 +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 186f30fc5c pulled translations from transifex 2018-08-28 15:04:16 +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
Aditya Borikar 52c625bc01 Attempt at disbling grace period in response to issue #3114 (#3116) 2018-08-18 18:24:54 +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 46574d6e11 version bump to 2.2.8 + changelog 2018-07-23 20:43:42 +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