Commit graph

4155 commits

Author SHA1 Message Date
Daniel Gultsch dfa389f61f
update UI in case proposal gets retracted by system 2024-02-23 09:54:09 +01:00
Daniel Gultsch a44ad6015d
update UI with correct state after UI gets invoked with ACTION_VIEW 2024-02-23 09:54:08 +01:00
Daniel Gultsch d20cc87bda
retract proposal when accepting other call 2024-02-23 09:54:08 +01:00
Daniel Gultsch 4378f8931b
add Config flag to debug direct call init 2024-02-23 09:54:08 +01:00
Daniel Gultsch 19c634f3d2
use call integration via MANAGE_OWN_CALLS
better integrate calls into the system via 'Build a calling app'¹

a few hooks like onAnswer/onReject and automatic PhoneAccount creation are still missing

¹: https://developer.android.com/develop/connectivity/telecom/selfManaged
2024-02-23 09:54:08 +01:00
Daniel Gultsch 8e73b7f477
make contact integration depend on manifest, not flavor 2024-02-19 10:12:52 +01:00
Daniel Gultsch 9b832e1285
null check PushTargetMessenger 2024-02-18 17:38:32 +01:00
Daniel Gultsch a62a7a4a84
resolver results need to be editable if we inject see-other-host 2024-02-18 10:20:54 +01:00
Daniel Gultsch d175843cbd
ignore 'subscribe' presence for blocked contacts 2024-02-16 16:59:52 +01:00
Daniel Gultsch 8598462737
remove address book integration from Conversations on PlayStore 2024-02-14 13:53:46 +01:00
Daniel Gultsch 33c63fb562
fixup: access Android_id only on push 2024-02-14 12:09:08 +01:00
Daniel Gultsch 59c23f5558
add ability to display privacy policy link in menu 2024-02-14 09:11:49 +01:00
Daniel Gultsch 617dd76d2f
add shortcut info only for 'messages' channel 2024-02-13 18:29:08 +01:00
Daniel Gultsch 1cfc5d426e
access Android_id only on push 2024-02-13 11:04:38 +01:00
Daniel Gultsch 2833fc833c
fix JET spec compliance 2024-02-11 10:40:50 +01:00
Daniel Gultsch 93b5a099b0
add json mime type according to RFC4627 2024-02-11 08:45:46 +01:00
Daniel Gultsch 9f1c4a42f8
default to microphone foreground service type during call 2024-02-10 13:46:07 +01:00
Daniel Gultsch 6ce052a337
check sasl success message no response 2024-02-10 10:20:40 +01:00
Daniel Gultsch 75f42d680d
lower bitrate for voice recordings 2024-02-09 17:54:25 +01:00
p42ity cd1821f2b6 Avoid truncated voice messages for affected devices
There were some devices which are known to produce truncated voice messages from time to time. I investigated this issue on a Fairphone 4 and found a configuration which did not show this behaviour in my experiments.

These devices are very sensitive on AAC settings. That's why I added an extra section for them. The list of devices can be adjusted.

Reviewed-on: https://codeberg.org/iNPUTmice/Conversations/pulls/192
Co-authored-by: p42ity <shopping@fpgas.de>
Co-committed-by: p42ity <shopping@fpgas.de>
2024-02-09 16:50:19 +00:00
Daniel Gultsch b93c5622df
modify quicksy user consent wording once more 2024-02-09 11:25:00 +01:00
Daniel Gultsch 03dc15158b
use modern Java in XmppConnection 2024-02-09 11:23:05 +01:00
Daniel Gultsch 5aff7d023c
slight modifications in quicksy onboard flow 2024-02-08 11:06:07 +01:00
Daniel Gultsch 3882ea669d
check server from on stream open 2024-02-07 10:55:33 +01:00
Daniel Gultsch 01ac2912f5
catch exception when hardware renderer can not be set up 2024-02-07 10:55:01 +01:00
Daniel Gultsch 7fe8be1adc
better work around for not processing race condition stanza 2024-02-07 10:07:53 +01:00
Daniel Gultsch 7455e99761
remove unnecessary resume call 2024-02-07 09:15:36 +01:00
Stephen Paul Weber 961a024aa2 XEP says thread means not the topic
Note: A message with a <subject/> and a <body/> or a <subject/> and a
<thread/> is a legitimate message, but it SHALL NOT be interpreted as a
subject change.
2024-02-07 07:22:57 +00:00
Daniel Gultsch ff082ab607
code clean up in IQ callback handling 2024-02-06 14:27:32 +01:00
Daniel Gultsch c2592d1417
fixup: simplify loginInfo null check 2024-02-05 15:59:06 +01:00
Daniel Gultsch 5ab8912cb4
simplify loginInfo null check 2024-02-04 19:49:55 +01:00
Daniel Gultsch 4168bc4666
less noisy logcat. catch illegal state exception as result of race condition 2024-01-19 15:20:47 +01:00
Daniel Gultsch b2e1f9b3d8
call current transport when receiving transport-replace 2024-01-19 11:43:23 +01:00
Daniel Gultsch 15a3c163eb
respond OK to JFT session terminate 2024-01-19 10:40:32 +01:00
Daniel Gultsch 88851ea12a
bundle letsencrypt root certificates
as per https://letsencrypt.org/2023/07/10/cross-sign-expiration.html
Letsencrypt is dropping support for Android <= 7 by removing cross signing.

to keep supporting older Android versions we need to bundle the root cert
ourselves. (Firefox for example does this too)

The KeyStore file is in BKS-V1 format. A good tools to edit the file is

https://keystore-explorer.org/

To keep the attack and bug surface as low as possible we only run the check
against the bundled keystore on Android <= 7
2024-01-15 10:57:07 +01:00
Daniel Gultsch aeb805a3ca
abort socks candidate search if peer selected something with higher priority 2023-12-20 11:23:04 +01:00
Daniel Gultsch eec01c9e7b
disable quick log 2023-12-20 09:23:09 +01:00
Daniel Gultsch d3b38a5273
refactor Jingle File Transfer. add WebRTCDatachannel transport 2023-12-19 17:26:11 +01:00
Daniel Gultsch 1a83c290a2
UnifiedPush: send unregistered to apps when 'none' account is selected 2023-12-05 10:59:50 +01:00
Daniel Gultsch 20c179c1a1
ensure will tell 'messenger' when UP registration fails or is delayed 2023-12-02 12:20:19 +01:00
Daniel Gultsch f7b5124fd3
support location attribute on enable 2023-12-01 18:29:52 +01:00
Daniel Gultsch eb5994f80f
add quick log functionality to debug UP 2023-12-01 13:22:10 +01:00
Daniel Gultsch 747f58c35b
JingleConnectionManager: code clean up 2023-11-22 08:37:17 +01:00
Daniel Gultsch b183f49977
update call UI after RTP connection has ended 2023-11-22 08:36:44 +01:00
Daniel Gultsch 402882389f
fixup: properly detect fast 2023-11-21 19:40:10 +01:00
Daniel Gultsch 59ff27062b
treat carbons as enabled when requested through bind 2 2023-11-21 16:50:46 +01:00
Daniel Gultsch 3dac9ef3f4
use stricter namespace matching in stream parser 2023-11-21 15:25:21 +01:00
Daniel Gultsch 5bb8f3f9aa
stricter bind 2 inline feature parsing 2023-11-21 15:24:31 +01:00
Daniel Gultsch acef5dbd3b
code clean up 2023-11-20 19:29:19 +01:00
Daniel Gultsch 25dd775613
catch illegal argument exception when reading DNS 2023-11-14 15:13:45 +01:00
Daniel Gultsch c72a86a0a4
add timeout to ICE gathering 2023-11-14 08:57:22 +01:00
Daniel Gultsch 5728cf13ea
RtpSessionActivity code clean up 2023-11-13 17:12:18 +01:00
Daniel Gultsch 622b569bbc
fix accepting senders both content adds 2023-11-13 13:46:30 +01:00
Daniel Gultsch 80c49955f0
JingleRtpConnection code clean up 2023-11-13 13:46:30 +01:00
Daniel Gultsch 96dcc75ac3
add SDP Offer / Answer support 2023-11-13 12:36:20 +01:00
Daniel Gultsch 38ca53fcac
bump reporting xep and add ability to report messages 2023-11-12 19:29:15 +01:00
Daniel Gultsch e73fbac56f
enable 'PEP Native Bookmarks' 2023-11-10 15:29:26 +01:00
Stephen Paul Weber f798102978
Fix and updates Bookmarks2 support
Support the stable version namespace and the new elements, including preserving
any extension content.
2023-11-10 11:41:02 +01:00
Daniel Gultsch 0898ea77ff
jingle: do not send session-terminate after failed regneg when session already was 2023-10-31 13:16:17 +01:00
Daniel Gultsch 438a228fc3
minor code clean up 2023-10-31 12:34:55 +01:00
Daniel Gultsch f6482c5a87
fix caps hash calculation for empty form fields 2023-10-31 11:03:59 +01:00
Daniel Gultsch fba7721cd5
fix rare concurrent modification in muc user search 2023-10-31 10:43:53 +01:00
Daniel Gultsch dfd7410b1a
make copy omemo fp button a show qr code button 2023-10-30 14:26:28 +01:00
Daniel Gultsch 71b6492d61
show unverified devices warning in contact and account details 2023-10-30 13:06:04 +01:00
Daniel Gultsch 0bbc1193e3
allow background activity start for OpenKeyChain intents 2023-10-29 08:54:19 +01:00
Daniel Gultsch ea5ffe92ea
improve logging when PGP decryption fails 2023-10-29 08:54:19 +01:00
Daniel Gultsch 48ffde9656
toggle foreground service to set correct type when gaining permissions 2023-10-29 08:54:18 +01:00
Daniel Gultsch e83a0af277
ignore false positive warning wrt foreground service 2023-10-29 08:54:17 +01:00
Daniel Gultsch 35c8d31d42
update gradle and gradle plugin 2023-10-29 08:54:17 +01:00
Daniel Gultsch e422b89df5
use aggressive reconnects for see-other-host 2023-10-29 08:54:17 +01:00
Daniel Gultsch 1732ab5cc7
add internal ping timer in case alarm manager fails 2023-10-29 08:54:17 +01:00
Daniel Gultsch a162d72c2a
code clean up in processAccountState() 2023-10-29 08:54:17 +01:00
Daniel Gultsch 928db01ae8
do not init connection for disabled accounts 2023-10-29 08:54:16 +01:00
Daniel Gultsch 2dd8896dc2
stop service on log out when UI is not active 2023-10-29 08:54:16 +01:00
Daniel Gultsch d1f648f2e3
code clean up in onStartCommand 2023-10-29 08:54:16 +01:00
Daniel Gultsch 69425e677c
remove soft disable flag when attempting call 2023-10-29 08:54:16 +01:00
Daniel Gultsch f042efd550
add 'log out' button to foreground notifcation
this temporarily disconnects all accounts until the user opens the app again.

essentially this akin to an 'Exit' button

Users previously had the option to 'disable' accounts but this provides a
faster way to "free up resources" until the next time the app is opened.
2023-10-29 08:54:16 +01:00
Daniel Gultsch 418d6b09a0
explicitly declare foreground service type 2023-10-29 08:54:16 +01:00
Daniel Gultsch 981dc2df6d
fix RtpSessionActivity not asking for permissions 2023-10-26 09:38:24 +02:00
Daniel Gultsch f6c9df00de
run account deletion callback on ui thread 2023-10-25 09:41:05 +02:00
Daniel Gultsch 6d519cd447
pick proper TTL for non existent DNS entries 2023-10-24 21:05:35 +02:00
Daniel Gultsch 1da9d42065
retrieve DNS response from cache 2023-10-24 19:16:47 +02:00
Daniel Gultsch 97acd16422
keep cache of DNS messages 2023-10-24 18:53:14 +02:00
Daniel Gultsch 55a77c083f
store SSLSocket after starttls to fix channel binding mechanism detection 2023-10-23 14:40:40 +02:00
Daniel Gultsch 68eb17d400
create missed call notification when device is busy 2023-10-23 11:22:00 +02:00
Daniel Gultsch c44f4b102a
do not accept fast token w/o channel binding for channel bound login 2023-10-21 14:22:38 +02:00
Daniel Gultsch 822f3f4d22
consider going from unique or exporter to endpoint a downgrade 2023-10-21 14:21:29 +02:00
Daniel Gultsch d1f4fbd9de
add connect timeout to DoT 2023-10-19 20:51:19 +02:00
Daniel Gultsch 71ebca40e8
add ķ as irregular unicode 2023-10-19 18:11:08 +02:00
Daniel Gultsch 063f30ded2
ignore outgoing invite
outgoing, mediated invites are of type=normal and can end up in MAM.
We want to ignore those if they get mirrored back to us
2023-10-18 11:50:10 +02:00
Daniel Gultsch 1b49e6b3c1
disable password edit unless unauthorized 2023-10-15 11:23:12 +02:00
Daniel Gultsch 3350ea8b5b
ensure we are in session accepted when processing content-modify 2023-10-15 08:51:15 +02:00
Daniel Gultsch 9a922ffe5d
quietly ignore mediated invites from blocked contacts 2023-10-13 17:36:12 +02:00
Daniel Gultsch 5b2444ea13
implement see-other-host stream error 2023-10-13 08:29:23 +02:00
Daniel Gultsch a40d244bf5
remove unnecessary in resolver 2023-10-12 11:59:21 +02:00
Daniel Gultsch 788565b299
upgrade to 'both' upon accepting recvonly content-add 2023-10-11 11:38:09 +02:00
Daniel Gultsch dbf71e5d54
handle senders modification via content-modify
Dino uses this to enable/disable video when a video content is already present
2023-10-10 18:47:29 +02:00
Daniel Gultsch 39194d111c
QR code scan: take disabled accounts into consideration
when making register or add contact decision
2023-10-10 09:36:08 +02:00
Daniel Gultsch c53e035935
do not use JMI if any rtp capable device does not support it 2023-10-09 16:23:02 +02:00
Daniel Gultsch 8f014d5525
implement Private DNS (DoT)
due to limitations in the MiniDNS library this does not work when
'Validate hostname with DNSSEC' is enabled in the expert settings
2023-10-09 13:27:44 +02:00