Daniel Gultsch
1fafe4287d
don’t send origin-ids to rooms that support stable-ids. fixes #3905
2020-11-14 11:59:35 +01:00
Daniel Gultsch
16c4e3eec7
keep conversation bold (unread) after responding to a call. fixes #3926
2020-11-14 09:55:43 +01:00
Daniel Gultsch
afb2fb1326
use CoW data structure for read markers. fixes #3904
2020-11-13 20:37:32 +01:00
Christoph Scholz
386b224123
fix escapeing in local channel discovery
2020-11-13 13:35:46 +00:00
Alexei Sorokin
501cdd5edf
do not prepend asterisks before words in search
...
An asterisk is a special FTS4 operator when appended to a word but has no
special meaning when prepended.
2020-11-13 12:43:18 +00:00
Daniel Gultsch
b327548c85
show toast if no application found to attach
2020-11-13 12:50:05 +01:00
Daniel Gultsch
5ad054617b
use instead of message id for receipt processing
2020-11-12 13:33:27 +01:00
Daniel Gultsch
ff13cc2766
extracting chat state for chat with self should not cause markRead event. fixes #3906
2020-10-20 10:20:58 +02:00
Daniel Gultsch
dc72bc5bc3
extend logging for not finding query
2020-10-08 20:21:53 +02:00
eta
364502d1a3
Fix various memory leaks reported by LeakCanary
...
- In some places, we weren't nulling out references to destroyed objects. This
fixes that.
- (These were all discovered via LeakCanary instrumentation, and the fixes are
hopefully rather straightforward-looking.)
2020-10-05 11:33:29 +00:00
eta
b4805ac2c5
Remove the ListSelectionManager / message body selection (fixes memory leak!)
...
- When the `viewHolder.messageBody` `TextView` created by a `MessageAdapter` is
set to selectable, it leaks an `android.widget.Editor` (because that editor
registers a view observer that never gets unregistered).
- This memory leak is really quite problematic, as the message adapter is used
a lot!
- Having the text be selectable is useless anyway, though; there isn't any way
to select it (because long pressing just opens the context menu anyway).
- It looks like the ListSelectionManager was meant to track selections across
multiple messages. However, I'm not sure this feature ever gets used.
- Accordingly, this commit removes the entire feature, thus fixing the memory
leak (since no `Editor` objects are ever created).
- It should also reduce memory usage in general, since we aren't attaching an
`Editor` to every single textview we create.
- A `TextView` only allocates an `Editor` if you ask it to do certain things,
like make the text selectable or register custom selection callbacks.
2020-10-05 11:33:12 +00:00
Daniel Gultsch
7fb617e39a
disable 'leave before join'
...
leaving a MUC before joining it was a work around for servers that did not treat a
<x/> join as a full join and didn’t send the full user list if they thought the user was
still in the room.
this happens if Conversations restarts after an inproper disconnect. The MUC will think
the user is still in the room.
however nowadays most modern servers will treat <x/> joins as full joins. on the user hand
leave before join would trigger flood prevention on ejabberds and race the first message
with the actual join (making the message arrive before the user is considered in the room)
2020-09-02 10:14:02 +02:00
Daniel Gultsch
27c89e487a
restructure conversation menu
...
we don’t want 'manage accounts' and 'settings' to show up when within a conversation.
we also move out disable notifications and add to favorites into an overflow overflow
to make the menu shorter (after adding 'Search messages' it became very crowded)
2020-09-01 16:50:28 +02:00
Daniel Gultsch
73dac680e5
show notification if message failed to deliver. closes #3540
2020-09-01 14:04:38 +02:00
Daniel Gultsch
3281a93dc3
use content description for play/pause button in audio player
2020-08-31 17:42:03 +02:00
Daniel Gultsch
f76ef17494
provide content descriptions for call screen
2020-08-31 17:30:54 +02:00
Daniel Gultsch
ce81123112
use content description in search fields
2020-08-31 17:12:31 +02:00
Daniel Gultsch
2de8f3d35b
change title of lock icon when changing encryption
2020-08-31 16:56:23 +02:00
Daniel Gultsch
97fe9fa01f
parse error messages from MAM results
2020-08-31 14:38:48 +02:00
Daniel Gultsch
c48499253b
set content description for all avatars
2020-08-31 13:05:10 +02:00
Daniel Gultsch
3c0773c6e7
use darker accent color in light theme
2020-08-31 11:19:27 +02:00
Daniel Gultsch
064264c20b
parse 'received' carbon-copied error messages. fixes #3803
2020-08-31 11:06:26 +02:00
Daniel Gultsch
3dcb36a417
persist presence name (pep, nick in subscribe) to DB. fixes #3856
2020-08-31 09:03:54 +02:00
Daniel Gultsch
35af8894d2
search individual conversations. fixes #3243
2020-08-29 08:16:08 +02:00
Daniel Gultsch
d158eeaf72
terminate jingle call when regular call starts
2020-08-24 12:47:54 +02:00
Daniel Gultsch
91e94db747
extend isBusyState to check phone state as well
2020-08-24 09:51:26 +02:00
Daniel Gultsch
15b323ee69
fix crash after session-accept failed and session-accept contained candidates
...
Conversations would attempt to feed any candidates found in the session-accept into
WebRTC; even if the session wasn’t setup correctly.
this commit processes the candidates only if the session was setup correctly
fixes #3867
2020-08-22 08:12:28 +02:00
Daniel Gultsch
f3362ebde5
add start/install orbot to error notification if applicable. fixes #3846
2020-08-19 15:29:25 +02:00
Daniel Gultsch
70c10fd0de
listen to orbot events instead of using intent result to reconnect account
2020-08-19 13:57:33 +02:00
Daniel Gultsch
7d2a7d536d
fix attachments getting lost when switching to chat during call
...
fixes #3854
2020-08-05 21:31:56 +02:00
Daniel Gultsch
129f43a349
verify hostname is valid before letting user save it
2020-08-01 15:03:20 +02:00
Daniel Gultsch
637c0cb15a
fixed rare race condition when receiving transport info right after WebRTCWrapper closes
...
fixes #3849
2020-08-01 14:18:03 +02:00
Daniel Gultsch
1ae7d6be16
recover from pre-jingle connection states (discover etc) into full fledged jingle connection
...
fixes #3847
2020-08-01 09:50:54 +02:00
Daniel Gultsch
f22e33e3ea
fixed race condition of WebRTCWrapper being closed before transitioning into terminal state
...
JingleRTPConnection shuts down the WebRTCWrapper before transitioning into a terminal state.
(This allows us to make sure it is actually closed when reaching that state);
However that means that, when we get a UI redrawn inbetween closing and transitioning we might
still be in SESSION_ACCEPTED but with no PeerConnection. This traditionally has triggered
an IllegalStateException on getting the EndUserState.
This commit catches the ISE and returns 'ENDING' instead.
Chances are that this is only visibiliy for a very brief time in the UI before the transition
triggers the UI to redraw with the proper state.
fixes #3848
2020-08-01 08:20:10 +02:00
Daniel Gultsch
f5f9075da2
FileObserver: start monitoring new directories when they are created
2020-07-30 12:55:19 +02:00
Daniel Gultsch
9cd4e1d581
show toast when correction fails
2020-07-26 17:03:51 +02:00
Daniel Gultsch
6941d5edd1
ignore IQ result when MAM query had been killed
2020-07-26 16:39:48 +02:00
Daniel Gultsch
9bec186292
ignore RTP session logs when looking for LMC. fixes #3843
2020-07-26 13:46:01 +02:00
Daniel Gultsch
16300727d1
try to guess mime type via extension in display name
2020-07-21 10:19:21 +02:00
Daniel Gultsch
28856aaf9f
add icons for gpx files
2020-07-19 21:27:43 +02:00
Daniel Gultsch
32d55346cc
ensure server triggered jingle iq-errors get routed properly
2020-07-18 16:14:39 +02:00
Daniel Gultsch
9e6f7237af
use smaller image previews on narrow screens
2020-07-12 12:31:13 +02:00
Daniel Gultsch
7aeb2b2740
pulled translations from transifex. re-enabled some linter warnings
2020-07-12 10:15:51 +02:00
Daniel Gultsch
590deef8e9
use ctrl+arrow up to correct last message. fixes #3806
2020-07-12 09:45:27 +02:00
Daniel Gultsch
c9e6653e33
fixups and code clean up for 'Ctrl+Enter'
2020-07-12 08:28:09 +02:00
Marcin Mielniczuk
e7e04837b6
Support sending messages with ctrl+enter
...
Currently Conversations lacks any keyboard shortcut to send a message if enter_is_send is disabled.
KeyboardListener has been extended to include the original KeyEvent as an argument.
fixes #3829
2020-07-12 05:18:40 +00:00
Daniel Gultsch
c3fa1d5d30
show switch to chat button during audio call. fixes #3825
2020-07-10 19:30:16 +02:00
Daniel Gultsch
bab9dd4893
make sure intent is only set to retracted if something was retracted. fixes #3826
2020-07-10 16:10:40 +02:00
Daniel Gultsch
bf85a55930
catch NPE when detecting camera facing. fixes #3820
2020-07-09 20:11:09 +02:00
Daniel Gultsch
1107529f56
ask for contact permission before adding to contact to phone book. fixes #3808
2020-07-09 20:03:02 +02:00
Daniel Gultsch
6a6c9fb3bf
ignore race condition when toggling fixes #3822
2020-07-09 19:14:28 +02:00
Daniel Gultsch
71a56002fe
fix emojis not rendering correctly with trailing variant selector. fixes #3819
2020-07-09 17:43:30 +02:00
Daniel Gultsch
13d8eb1c7e
dismiss notification only if displayed id matches last remote id
2020-06-24 12:12:35 +02:00
Daniel Gultsch
fada3a63c9
store entire transport info for after session was accepted. fixes #3790
2020-06-22 18:07:27 +02:00
Daniel Gultsch
a5430d5ce1
retract call when user presses home button or back; not on stop. fixes #3802
2020-06-22 15:37:22 +02:00
Daniel Gultsch
57135e1a59
do not update recent quick action when recording voice mail. fixes #3799
2020-06-21 16:28:57 +02:00
Daniel Gultsch
15489547b7
add account provisioning via QR code to welcome screen
2020-06-21 15:40:51 +02:00
Andrey Tikhomirov
203e248a14
Fix screen blinking during the call for some Samsung phones ( #3800 )
2020-06-21 06:56:51 +00:00
Daniel Gultsch
dddb7ece25
show app failure instead of crashing when egl fails to init. fixes #3795
2020-06-18 20:37:56 +02:00
Daniel Gultsch
169ee99afa
do not attempt to reject call if session had already ended. fixes #3798
2020-06-18 20:32:58 +02:00
Daniel Gultsch
7bcb29c482
be more liberal in 0167 payload-type parameter parsing
...
some implementations will transform the following SDP coming from Firefox
m=audio 12346 RTP/AVP 101
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
to
<payload-type channels="1" name="telephone-event" clockrate="8000" id="101">
<parameter value="0-15" xmlns="urn:xmpp:jingle:apps:rtp:1"/>
</payload-type>
While a missing name attribute is not legal according to the XEP; and 0-15 are
technically not just one value the following commit will accept it if there is
just one paramater.
2020-06-17 21:15:12 +02:00
Daniel Gultsch
47804205b6
clear pending photo uri only when also clearing activity result
...
on some phones the onBackendConnected finishes prior to the onActivityResult()
leading to the pending photo uri being cleared before processing the result.
this leads to 'Take photo' not working.
but we probably don’t need to clear the photo uri if there is to activiyResult
to clear as well
2020-06-17 17:58:25 +02:00
Dmitry Markin
4493f6cc13
Leave the incoming call notification category as CATEGORY_CALL ( #3792 )
2020-06-16 19:07:01 +00:00
Daniel Gultsch
c8f23aef4e
error response to sending the jingle ft hash should not file the transfer
2020-06-15 21:33:32 +02:00
Daniel Gultsch
98e1044bdd
use Jid.ofLocalAndDomainEscaped when transforming account with locked domain
2020-06-15 19:17:21 +02:00
Daniel Gultsch
20286ea8d2
fixed concurrent modification when displaying read markers
2020-06-14 19:09:55 +02:00
Daniel Gultsch
1f77d5e115
pass selected audio device to proximity sensor toggle
2020-06-14 16:22:53 +02:00
Daniel Gultsch
16bc210211
fix regression for fixed domain
2020-06-14 11:28:25 +02:00
Daniel Gultsch
c3b9a4dabc
parse jmi proposals from MAM reloads. fixes #3778
2020-06-14 10:34:40 +02:00
Daniel Gultsch
ccdc91a497
remove check that would ensure you use jingle only with full jids
2020-06-14 09:01:47 +02:00
Daniel Gultsch
400c8461fc
fix feature discovery in jingle file transfer for empty resources
2020-06-13 22:53:24 +02:00
Daniel Gultsch
fda9e7b51c
make presence selector work with empty resources (bare jid)
2020-06-13 09:59:39 +02:00
Daniel Gultsch
0dba9f560c
rework quicksy domain checks
2020-06-13 08:26:32 +02:00
Daniel Gultsch
56ea9647cd
null check quicksy domain
2020-06-13 08:10:04 +02:00
Daniel Gultsch
971bb60f42
add more logging to caps fetching
2020-06-12 20:06:49 +02:00
Daniel Gultsch
0ba4892d3e
RTP: write log message on background thread
2020-06-12 09:08:09 +02:00
Daniel Gultsch
b7f3b4333e
show help button on certain error conditions in RTP session. fixes #3770
2020-06-12 08:26:33 +02:00
Daniel Gultsch
644ad99520
create rtp end user state for connection lost. fixes #3769
2020-06-12 07:57:11 +02:00
Daniel Gultsch
552e17e39a
remember terminal RTP session state
...
if the activity is not connected during finish it won’t receive the last end user state.
this code remembers it even if the actual session is already gone. so when activity reconnects and
we can’t find the real rtp session we can look up the last state instead.
2020-06-11 21:17:15 +02:00
Daniel Gultsch
7e2d87f39c
recover if attachImage can’t generate scalled down version of image. fixes #3773
2020-06-09 21:08:27 +02:00
Daniel Gultsch
1853242c66
do not throw when finishing jingle ft twice. fixes #3765
...
the state machine in jingle file transfer does not prevent that the connection
is being finished twice
2020-06-07 15:00:00 +02:00
Daniel Gultsch
b78d45c7cc
fix Jingle FT candidate selection for equal priority. fixes #3771
2020-06-07 12:47:03 +02:00
Daniel Gultsch
4bc43af690
improve logging in export backup service. closes #3672
2020-06-02 07:59:46 +02:00
Daniel Gultsch
637c208f55
ask for resource and use jingle direct init when JMI is not available. fixes #3751
2020-05-30 14:56:12 +02:00
Daniel Gultsch
8edfc61346
fixed concurrent modification when iterating over presences
2020-05-30 10:57:22 +02:00
Daniel Gultsch
8603d24bcb
add record voice mail button to busy screen. fixes #3754
2020-05-30 10:30:57 +02:00
Daniel Gultsch
59d1a2982e
RtpSessionActivity: throw instead of finish when session wasn’t found
2020-05-28 09:22:58 +02:00
Daniel Gultsch
63ba21a512
catch ISE cause by race when displaying video track. fixes #3752
2020-05-27 15:53:05 +02:00
Daniel Gultsch
5e3aab3abe
ensure that finishConnection succeeds
2020-05-27 13:54:35 +02:00
Daniel Gultsch
575ada3b27
fix scram crash for broken metronome servers
2020-05-27 13:53:28 +02:00
Daniel Gultsch
1c625e55a0
set candidate gathering to continually. fixes #3719
...
This should be good enough to survive some network switches where both networks are online at the same time to allow for some handover
(for example when enabling wifi the 3G connection will usually (probably depends on OS) live on for a moment
2020-05-25 11:11:29 +02:00
Daniel Gultsch
8475a28dc5
control voice call volume when playing audio through earpiece. fixes #3705
2020-05-25 10:43:56 +02:00
Daniel Gultsch
7ca543e42f
replace /me when quoting messages. fixes #3669
2020-05-24 10:52:34 +02:00
Daniel Gultsch
88cc097732
fail pending messages on policy violation. fixes #3735
2020-05-22 18:23:53 +02:00
Daniel Gultsch
ed4d7bff92
reset tone manager after reaching NULL status
2020-05-22 16:25:29 +02:00
Daniel Gultsch
550fbc6d2c
make sure automatic jmi responses are sent before ack
2020-05-22 13:22:22 +02:00
Daniel Gultsch
685e01e83f
give TonManager control over audio mode to play dial tones on earpiece. fixes #3738
2020-05-21 15:39:59 +02:00
Daniel Gultsch
a2a7256682
disable hardware AEC on some devices. fixes #3734
2020-05-21 11:13:46 +02:00
Daniel Gultsch
de941f6036
use escaped jid for invites
2020-05-21 08:41:04 +02:00
Daniel Gultsch
574bccfc59
avoid unnecessary call to Jid.ofDomain()
2020-05-21 07:57:57 +02:00
Daniel Gultsch
aa1e69d277
use escaped jid for EXTRA_ACCOUNT
2020-05-20 20:14:13 +02:00
Daniel Gultsch
304411fc09
return audio mode to normal (instead of previous mode) after call ended
2020-05-20 19:40:26 +02:00
Daniel Gultsch
bfeebc141f
invalide options menu after pinning/unpinning. fixes #3745
2020-05-19 19:39:05 +02:00
Daniel Gultsch
dd0f354b62
publish pep bookmarks 1.0 to an item called 'current'
2020-05-19 19:39:05 +02:00
Daniel Gultsch
f8fedf0059
sasl prep password before hashing. fixes #1893
2020-05-19 15:28:12 +02:00
Daniel Gultsch
22f3aac465
fix media browser for escapbed jids
2020-05-18 11:48:24 +02:00
Daniel Gultsch
3ca10b8fa9
show escaped jids when it comes to account selection
2020-05-18 09:35:35 +02:00
Daniel Gultsch
df3273a6fc
fix jid.withResource() for domain jids
2020-05-18 09:14:57 +02:00
Daniel Gultsch
a0920b83e2
use Account.getDomain() for direct access to domain jid
2020-05-17 10:24:46 +02:00
Daniel Gultsch
b347d57848
don’t escape jids when parsing from uri
2020-05-17 08:53:44 +02:00
Daniel Gultsch
1da490f77a
do not request storage permission for attaching location
2020-05-16 17:51:14 +02:00
Daniel Gultsch
4dd3b0c2aa
allow to pin conversations on top. fixes #3480
2020-05-16 12:10:26 +02:00
Daniel Gultsch
7a21b2c5ed
fixed parsing of unescaped jids with @ in local part
2020-05-16 10:40:26 +02:00
Daniel Gultsch
2195bce303
don’t allow escaped usernames in magic create
2020-05-16 08:55:13 +02:00
Daniel Gultsch
78a82a74bc
use unescaped jid in ManageAccount
2020-05-15 20:20:22 +02:00
Daniel Gultsch
dc29cf27a3
validate conference jid on input
2020-05-15 19:22:15 +02:00
Daniel Gultsch
198a7db954
use escaped jid in more places
2020-05-15 18:44:55 +02:00
Daniel Gultsch
ef7d4fca86
show escaped jid in most of the UI
...
for historical reasons we store unescaped variants in DB and use them in intents.
2020-05-15 18:22:04 +02:00
Daniel Gultsch
b6703dbe38
switch xmpp-addr to jxmpp-jid
2020-05-15 17:06:16 +02:00
Daniel Gultsch
1b4f9cc8ab
allow 'login with certificate' from welcome screen. fixes #3724
2020-05-13 13:52:05 +02:00
Daniel Gultsch
36d2ecfcfa
always use private key for TLS connection when one is configured
2020-05-13 09:38:30 +02:00
Daniel Gultsch
2c4788b7c7
send retract when unable to setup webrtc as initiator. fixes #3717
2020-05-11 12:20:32 +02:00
Daniel Gultsch
b845c601d0
include senders in jingle file offer
2020-05-11 11:09:18 +02:00
Daniel Gultsch
90526efbd4
fixed destination calculation for direct socks candidates. fixes #3715
2020-05-11 11:08:45 +02:00
Daniel Gultsch
46579550e4
fixed weird ToneGenerator crash. fixes #3712
...
obviously tones won’t work then anymore
2020-05-10 17:54:16 +02:00
Daniel Gultsch
4d3d3a7038
tie breaking racing jingle message proposals. fixes #3698
2020-05-10 14:09:16 +02:00
Daniel Gultsch
2c5bed61a1
introduce extra RTP state to handle going from sending proceed to receiving retract
2020-05-09 21:35:21 +02:00
Daniel Gultsch
f4247379bd
catch UnsatisfiedLinkError when trying to init libwebrtc. fixes #3707
2020-05-09 19:48:54 +02:00
Daniel Gultsch
92fc22b313
show call duration in audio calls. fixes #3708
2020-05-09 11:14:39 +02:00
Daniel Gultsch
6daaca496b
externalize time passed utils
2020-05-09 09:42:33 +02:00
Daniel Gultsch
072edc5a62
hide microphone button in video-only calls. fixes #3700
2020-05-08 21:15:54 +02:00
Daniel Gultsch
bd0234ba4d
dismiss incoming call notification on crash. fixes #3701
2020-05-08 19:34:20 +02:00
Daniel Gultsch
abfa4eae08
remove white space before parsing omemo bundle base64
2020-05-08 19:33:49 +02:00
Daniel Gultsch
285c750e69
throw IllegalStateException when trying to finish from a non terminal state
2020-05-08 18:36:52 +02:00
Daniel Gultsch
350fc57d87
properly wrap IPv6 addresses
2020-05-08 17:52:41 +02:00
Daniel Gultsch
5af4c865a7
make sure we finsh() the connection after transitioning into terminal state
2020-05-08 17:22:27 +02:00
Daniel Gultsch
1b237e4ea0
pulled translations from transifex
2020-05-06 21:46:11 +02:00
Daniel Gultsch
fb57ef47bc
catch IllegalStateException around acceptCall()
...
this can happen when the UI races a call retrection
2020-05-05 09:37:27 +02:00
Daniel Gultsch
c159bbfc81
play dial sounds on wrong track to make them play in silent mode. fixes #3697
2020-05-03 23:15:21 +02:00
Daniel Gultsch
476fb23656
show timestamp for missed incoming calls. fixes #3692
2020-05-03 18:36:15 +02:00
Daniel Gultsch
3c3f5d8e6f
mark missed calls as unread (bold) in overview. fixes #3687
2020-05-03 18:07:00 +02:00
Daniel Gultsch
3577afea4e
fixed crash caused by race when dedecting if mic is on
2020-05-03 11:54:58 +02:00
Daniel Gultsch
e70b6eec98
do not mirror back camera. fixes #3693
2020-05-03 11:54:58 +02:00
Daniel Gultsch
5a5f887229
code cleanup in bundle parsing
...
also switch to guavas base64 parser to avoid potential ROM bugs
2020-05-03 11:54:58 +02:00
Daniel Gultsch
abb33b048a
fixed crash after accepting voice calls on devices that don’t have an earpiece (tablets)
...
fixes #3682
2020-05-02 18:06:56 +02:00
Daniel Gultsch
63ddd97b6b
add button to switch cameras during video call
...
RIP symmetry :-(
fixes #3683
2020-05-02 17:15:50 +02:00
Daniel Gultsch
e4b906ebeb
fix crash on unknown sasl mechanims
2020-05-02 10:20:18 +02:00
Daniel Gultsch
48163a5604
show proposal as ongoing call
2020-05-02 09:50:17 +02:00
Daniel Gultsch
f7a0d2031a
disable TLS cert validation for stun/turn server
...
turns out libwebrtc doesn’t use the system root CA store but comes with only a few default CAs.
in anyway we will probably only use tcp/443 to bypass firewalls and not to actually secure anything.
2020-05-01 20:17:23 +02:00
Daniel Gultsch
58429c42ee
lower case protocol; we have seen upper case in the wild for some reason
2020-05-01 20:15:09 +02:00
Daniel Gultsch
7ac5e8e828
properly close WebRTCWrapper even when init failed
2020-05-01 13:56:24 +02:00
Daniel Gultsch
eab4ac017f
minor code clean up
2020-05-01 07:58:58 +02:00
Daniel Gultsch
86b2631449
revert commit that attempted to do bare jid matching for LMC
...
That commit never worked because there were other checks in place later down the stream.
Allowing other clients (resources) to correct messages introduces the potential for nasty race conditions.
Furthermore we also have a check in place that would check that the OMEMO fingerprint is the same for security reasons. Removing that check is currently undesirable. Therefor correcting a message from another client would only work for plain text messages (and maybe PGP); this only adds confusion for users for very little benefit.
2020-05-01 07:45:00 +02:00
Daniel Gultsch
8374df84aa
do not change intent to retracted if end card had already been reached
2020-04-30 09:06:43 +02:00
Daniel Gultsch
deae2b109f
do not crash UI after ignoring improperly formatted jingle init
2020-04-29 15:54:02 +02:00
Daniel Gultsch
8a586527c4
check if setting local description was succesful
2020-04-29 15:32:27 +02:00
Daniel Gultsch
a49d69c878
parse candidates from session-init and session-accept
2020-04-29 10:36:54 +02:00
Daniel Gultsch
54ca3fb020
release video after end card reached. fixes video call retry
2020-04-29 09:22:49 +02:00
Daniel Gultsch
333f509e53
synchronize public WebRTCWrapper methods so closes don’t race
2020-04-29 09:10:15 +02:00
Daniel Gultsch
0d4b175760
better failure behaviour after direct init from jitsi
2020-04-29 08:51:38 +02:00
Daniel Gultsch
f93bac6d73
catch ISE around peerconnection.dispose()
2020-04-28 20:15:23 +02:00
Daniel Gultsch
faf1ff365d
modify call connected tone
2020-04-28 11:22:42 +02:00
Daniel Gultsch
8183c54ba0
use stanza-id for display markers in group chats
2020-04-28 08:25:21 +02:00
Daniel Gultsch
27bf871472
play beep when voice call connects
2020-04-28 07:30:27 +02:00
Daniel Gultsch
418cecad11
remove XEP-0357 support for group chats
2020-04-28 06:50:04 +02:00
Daniel Gultsch
fc4397e5b9
play busy and dial tones
2020-04-27 17:51:38 +02:00
Daniel Gultsch
07911b2094
indicate ongoing call. fixes #3675
2020-04-27 11:53:31 +02:00
Daniel Gultsch
9fbf73d1ea
do not log failed calls that never rang
2020-04-26 10:38:19 +02:00
Daniel Gultsch
006d7447a3
put version code into crash report
2020-04-25 20:13:20 +02:00
Daniel Gultsch
c41033e83c
only take udp candidates from transport-info
2020-04-25 20:13:08 +02:00
Daniel Gultsch
a5beaaed9d
null reference to rtpconnection when end card is reached
...
this will make re-init work if for example retry end card had been reached and we get another call
2020-04-24 21:27:03 +02:00
Daniel Gultsch
cacd85b4f1
catch ISE when entering PIP
2020-04-24 10:37:46 +02:00
Daniel Gultsch
4f5415ecba
terminated rtp connection do not count as busy
2020-04-24 09:41:54 +02:00
Daniel Gultsch
c0036b4ca6
increase busy timeout to 30s
2020-04-24 09:16:59 +02:00
Daniel Gultsch
96f6ae2b49
additional null check in case to is null
2020-04-23 20:11:45 +02:00
Daniel Gultsch
80cac3bd69
disable tcp candidates
2020-04-23 19:51:58 +02:00
Daniel Gultsch
d7a8519ad6
do not continue to accept call if reinit() caused activity to finish
2020-04-23 12:52:02 +02:00
Daniel Gultsch
cfb9368edb
check if pip feature is available on top of doing version check
2020-04-23 12:14:45 +02:00
Daniel Gultsch
60cea03dce
do not attempt retract if onStop was faster than backend connect
2020-04-23 10:13:10 +02:00
Daniel Gultsch
a008993d06
add 20s busy timeout to incoming calls
2020-04-22 21:59:20 +02:00
Daniel Gultsch
892d913e2c
parsing iq erros also need to finish the connection
2020-04-22 18:42:07 +02:00
Daniel Gultsch
9fa9ca9cbc
catch securityException when parsing rtp description
2020-04-22 16:35:08 +02:00
Daniel Gultsch
9afac21b0b
don’t throw when user double taps accept button
2020-04-22 14:49:48 +02:00
Daniel Gultsch
876b1149d5
avoid double termination after failed connection
2020-04-21 22:59:54 +02:00
Daniel Gultsch
e0cb127005
retract call when pressing home or power button during ringing
2020-04-21 22:46:46 +02:00
Daniel Gultsch
3c0b3f4b94
allow dnd overwrite for incoming calls
2020-04-21 18:13:09 +02:00
Daniel Gultsch
442b952700
add jingle message init namespace to features
2020-04-21 14:59:03 +02:00
Daniel Gultsch
5b12e23382
improve logging for throws from native callbacks
2020-04-21 12:00:13 +02:00
Daniel Gultsch
eb911b8196
show 215 status in server info
2020-04-21 11:40:05 +02:00
Daniel Gultsch
d5e3d13158
do not just assume rtcp-mux
2020-04-21 09:11:17 +02:00
Daniel Gultsch
7898ba65cd
extend extended webrtcwrapper logging
2020-04-20 17:05:27 +02:00
Daniel Gultsch
23d1ee5e41
render contact’s avatar during incoming call
2020-04-20 15:57:31 +02:00
Daniel Gultsch
187dff3df9
put contact picture in incoming call notification
2020-04-20 15:57:31 +02:00
Daniel Gultsch
df2ef0eeb0
automatically reject/ignore calls from strangers if the setting is set
2020-04-20 15:57:31 +02:00
Daniel Gultsch
e661d5b7ad
provide deep link from settings into call notification settings
2020-04-20 15:57:31 +02:00
Daniel Gultsch
1cc0dfad84
move sdp logging to different tag
2020-04-20 15:57:31 +02:00
Daniel Gultsch
5a0979b41e
store 'ended call' when ended from proceed
2020-04-20 15:57:31 +02:00
Daniel Gultsch
f7f0dc99a7
launch calls in new task
2020-04-20 15:57:31 +02:00
Daniel Gultsch
c7269bc0aa
check microphone availability on background thread
2020-04-20 15:57:31 +02:00
Daniel Gultsch
31dfb0c704
cache useTor information in activity
2020-04-20 15:57:31 +02:00
Daniel Gultsch
a12760300c
ensure that rtp connection is registered with connection manager
2020-04-20 15:57:30 +02:00
Daniel Gultsch
c20c40a807
ensure webrtc connection gets closed after connection failure
2020-04-20 15:57:30 +02:00
Daniel Gultsch
7dfd47a5c4
better crash than leave WebRTCWrapper unclosed
2020-04-20 15:57:30 +02:00
Daniel Gultsch
934b98d199
add microphone availability check
2020-04-20 15:57:30 +02:00
Daniel Gultsch
48f752366b
paint local mic off button in pip
2020-04-20 15:57:30 +02:00
Daniel Gultsch
644e5aa856
remove video sinks when calling onStop. otherwise going in and out foreground will give us endless sinks
2020-04-20 15:57:30 +02:00
Daniel Gultsch
16d34c2ba0
parse turns and stuns (regression from earlier commit)
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ab2681640a
allow pip during connecting
2020-04-20 15:57:30 +02:00
Daniel Gultsch
2f437ea845
ignore iq errors if session has already been terminated
2020-04-20 15:57:30 +02:00
Daniel Gultsch
fa3ef07580
be more strict with ice candidate parsing
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0a18ab35c0
fixed 215 credential detection
2020-04-20 15:57:30 +02:00
Daniel Gultsch
8472712b3e
play notification sound pre notification categories
2020-04-20 15:57:30 +02:00
Daniel Gultsch
e545e95d39
getMedia() would throw null pointer when called after going from proposed to some error state
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ea2ed85ed7
support picture in picture for video calls
2020-04-20 15:57:30 +02:00
Daniel Gultsch
21e412ef6f
only show remote video when connected
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0c4f0c074d
improve busy behaviour with multiple devices
2020-04-20 15:57:30 +02:00
Daniel Gultsch
4558b9a7b0
select proper media for retry
2020-04-20 15:57:30 +02:00
Daniel Gultsch
45d5d1f635
capture in ~1920 resolution when available
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b95d406e61
use more approriate reason when failing because of parse errors
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ec6bcec849
use different aspect ratio for landscape
2020-04-20 15:57:30 +02:00
Daniel Gultsch
36e117979a
put 'video' in ongoing video call notification
2020-04-20 15:57:30 +02:00
Daniel Gultsch
d7e93e18e5
add a couple of todos to RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f995965dea
parse 0339 source groups from sdp
2020-04-20 15:57:30 +02:00
Daniel Gultsch
01a9a52990
show enable/disable video in video calls
2020-04-20 15:57:30 +02:00
Daniel Gultsch
445009c558
request camera permissions
2020-04-20 15:57:30 +02:00
Daniel Gultsch
5a20faaf0f
show 'incoming video cal' notification
2020-04-20 15:57:30 +02:00
Daniel Gultsch
d4788fc1f4
display video call based on availability
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b4df19177f
make seperate menu items for audio and video calls
2020-04-20 15:57:30 +02:00
Daniel Gultsch
17d9b02f41
properly paint local video over remote
2020-04-20 15:57:30 +02:00
Daniel Gultsch
d057ae3439
transmit media from proposal to actual session
2020-04-20 15:57:30 +02:00
Daniel Gultsch
8c273e7eee
parse media from session proposal
2020-04-20 15:57:30 +02:00
Daniel Gultsch
1489dba44f
release resource. stop caputuring when webrtc ends
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b20b00e77f
use toolbar to display status text in RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
339bdaea06
rudimentary video caputuring
2020-04-20 15:57:30 +02:00
Daniel Gultsch
bfb9a6267a
complete list of reasons
2020-04-20 15:57:30 +02:00
Daniel Gultsch
dd42a6b850
don’t transition when calling endCall and session was already terminated
2020-04-20 15:57:30 +02:00
Daniel Gultsch
65b43661dd
RtpConnection: synchronize all externally call methods to guard state transitions
2020-04-20 15:57:30 +02:00
Daniel Gultsch
172d2c693f
depulicate 'propose's when doing mam catchup
2020-04-20 15:57:30 +02:00
Daniel Gultsch
e16e0d895e
cancle ongoing jingle sessions on xmpp rebind
2020-04-20 15:57:30 +02:00
Daniel Gultsch
493ca68464
add <rtcp-mux/> in description
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ef22071bd1
turn proximity wake lock and/off depending on speaker configuration
2020-04-20 15:57:30 +02:00
Daniel Gultsch
9bc264bd73
do not use proximity wake lock on speaker phone
2020-04-20 15:57:30 +02:00
Daniel Gultsch
981aeaf264
make mute and speaker button work
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b924a63d01
copy audio manager from AppRTCDemo
2020-04-20 15:57:30 +02:00
Daniel Gultsch
5b98107e9a
put jingle messages in MAM and parse call log during catchup
2020-04-20 15:57:30 +02:00
Daniel Gultsch
9a41d11aed
do not show context menu for call logs
2020-04-20 15:57:30 +02:00
Daniel Gultsch
4be2309202
more conditions under which to print call log
2020-04-20 15:57:30 +02:00
Daniel Gultsch
3439f40411
show call log messages in conversation stream
2020-04-20 15:57:30 +02:00
Daniel Gultsch
1dc88f38ca
avoid terminating twice
2020-04-20 15:57:30 +02:00
Daniel Gultsch
82f9a77777
be more conservative when parsing rtp content
2020-04-20 15:57:30 +02:00
Daniel Gultsch
deaa76b5ca
when using onNewIntent make sure to store intent otherwise onBackground might just overwrite it again
2020-04-20 15:57:30 +02:00
Daniel Gultsch
609120c0d8
only ever create one wake lock in rtpsessionactivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
c9f7e174f7
use foreground service for ongoing call notification
2020-04-20 15:57:30 +02:00
Daniel Gultsch
c6db651322
allow all jingle states to transition into terminated
2020-04-20 15:57:30 +02:00
Daniel Gultsch
5eea961155
improved strategy for ignoring self addressed jingle messages
2020-04-20 15:57:30 +02:00
Daniel Gultsch
7b382d2ba5
include more human readable text in application errors
2020-04-20 15:57:30 +02:00
Daniel Gultsch
07e671d7c3
do not offer jingle calls when using Tor
2020-04-20 15:57:30 +02:00
Daniel Gultsch
9d83981f2c
respond with busy if there is anthor rtp session
2020-04-20 15:57:30 +02:00
Daniel Gultsch
d19b5e0634
show notification during ongoing call
2020-04-20 15:57:30 +02:00
Daniel Gultsch
2e8b91665b
improvements to RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
14d008d89d
turn screen off during call
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0302eacac1
back button rejects or ends call
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f5c4de8770
make retry work
2020-04-20 15:57:30 +02:00
Daniel Gultsch
2ba84bd32e
no need to be careful about Int parsing in session description; just fail
2020-04-20 15:57:30 +02:00
Daniel Gultsch
6884e427ef
require dtls and ensure procceds get tracked
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0661c1bd37
add state transitions for iq service-unavailable errors and timeouts
2020-04-20 15:57:30 +02:00
Daniel Gultsch
39e3791345
incude human readable text in some session-terminates
2020-04-20 15:57:30 +02:00
Daniel Gultsch
6a1df0538e
request recording permission when making or accepting audio calls
2020-04-20 15:57:30 +02:00
Daniel Gultsch
7749a7ce22
fixed rotation issues in RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
268eedad89
proper iq tracing (handling of errors); responding to all iqs
2020-04-20 15:57:30 +02:00
Daniel Gultsch
15a2491d7b
correctly parse turn server
2020-04-20 15:57:30 +02:00
Daniel Gultsch
845b3d8a0e
properly parse transport info and apply ice candidates after direct init
2020-04-20 15:57:30 +02:00
Daniel Gultsch
3e5e4e813b
reject call from proceed state; and deal with direct inits
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0bf991d95c
make jingle->sdp parsing fail on some obvious errors
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ca9b95fc9c
discover stun server
2020-04-20 15:57:30 +02:00
Daniel Gultsch
859bc0bef3
send and receive session terminates
2020-04-20 15:57:30 +02:00
Daniel Gultsch
00f273b0c0
show retry button after failed call
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f7d1e02d4b
parse 'accept' messages
2020-04-20 15:57:30 +02:00
Daniel Gultsch
9edadc9835
process retract jingle messages
2020-04-20 15:57:30 +02:00
Daniel Gultsch
a11d506bf0
support reject
2020-04-20 15:57:30 +02:00
Daniel Gultsch
7909a72d43
make retract jingle messages work
2020-04-20 15:57:30 +02:00
Daniel Gultsch
e2f1cec2e5
prepare more state transitions
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ccfc55e9b6
show proper notification on incoming call
2020-04-20 15:57:30 +02:00
Daniel Gultsch
4c6ee9693a
use appbarlayout in RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
0e88b56eb4
display status information in ui
2020-04-20 15:57:30 +02:00
Daniel Gultsch
a9a35fb74b
show status in RtpSessionActivity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f8c0328416
dummy Jingle activity
2020-04-20 15:57:30 +02:00
Daniel Gultsch
22c755c5ce
implement session accept
2020-04-20 15:57:30 +02:00
Daniel Gultsch
9dfa9df790
implement sending of session-accept
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ac9a1a773e
receive candidates/transport-info
2020-04-20 15:57:30 +02:00
Daniel Gultsch
885ec0febe
a couple of bug fixes for SessionDescription.toString()
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f264ef9f8b
create sdp string and set on peer connection
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b1c0e93b34
rudimentary rtpmap to session converter
2020-04-20 15:57:30 +02:00
Daniel Gultsch
2591a96945
sdp candidate to transport-info
2020-04-20 15:57:30 +02:00
Daniel Gultsch
4d70855b4c
sdp to ice transport conversion
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b44a3aeac6
parse sdp to jingle (yet w/o transport)
2020-04-20 15:57:30 +02:00
Daniel Gultsch
ef51ec2c1d
create objects for ssma (xep-0339)
2020-04-20 15:57:30 +02:00
Daniel Gultsch
28ead10ca4
sdp media to description parsing
2020-04-20 15:57:30 +02:00
Daniel Gultsch
18059345c8
payload-type and rtp-hdrext sdp parsing
2020-04-20 15:57:30 +02:00
Daniel Gultsch
5b1d86d67e
dummy code to get sdp out of (non-working) libwebrtc
2020-04-20 15:57:30 +02:00
Daniel Gultsch
3b857e6894
create temporary RtpSessionPropsoal as placeholder before we can create actual session
2020-04-20 15:57:30 +02:00
Daniel Gultsch
e2e4390d51
untested sdp parser
2020-04-20 15:57:30 +02:00
Daniel Gultsch
766d1d603e
show preliminary call button if contact supports it
2020-04-20 15:57:30 +02:00
Daniel Gultsch
4e13893662
create stub objects for most of what’s in description and transport
2020-04-20 15:57:30 +02:00
Daniel Gultsch
43cf1783a4
support multiple jingle contents
2020-04-20 15:57:30 +02:00
Daniel Gultsch
b2aa0e3352
use final varible to mark initiator once connection object has been created
2020-04-20 15:57:30 +02:00
Daniel Gultsch
5b15348f13
process message inits
2020-04-20 15:57:30 +02:00
Daniel Gultsch
385692ea28
route jingle message inits
2020-04-20 15:57:30 +02:00
Daniel Gultsch
a4acfb2a19
clean iq callback code in XmppConnection
2020-04-20 15:57:30 +02:00
Daniel Gultsch
f9650b95d8
create stub JingleRTPConnection
2020-04-20 15:57:30 +02:00
Daniel Gultsch
963ddd11c2
refactor jingle code to use objects for TransportInfo
2020-04-20 15:57:29 +02:00
Daniel Gultsch
eb22bd0499
create 'Description' object
2020-04-20 15:57:29 +02:00
Daniel Gultsch
7538e387ec
fixed bug in ibb delivery introduced in earlier refactoring
2020-04-20 15:57:29 +02:00
Daniel Gultsch
34f42c73bc
cleaned JinglePacket and Content element
2020-04-20 15:57:29 +02:00
Daniel Gultsch
23ebb6ae80
rename JingleConnection to JingleFileTransferConnection; use ID tuple to identify sessions
2020-04-20 15:57:29 +02:00
Daniel Gultsch
b40a65652f
disable HTTP upload during jingle development
...
we are going to refactor jingle a lot. in order to better spot potential
bugs in the Jingle File Transfer implementation we are going to disable
HTTP upload during development.
2020-04-20 15:57:29 +02:00
Daniel Gultsch
1d62cb0024
pdf renderer might throw security exception on password protected pdf
2020-04-20 15:57:06 +02:00
Daniel Gultsch
c5da699afe
dont crash when fields names in caps are null
2020-04-20 15:53:52 +02:00
Daniel Gultsch
62934e6487
change wording of previous commit
2020-03-31 19:49:08 +02:00
Daniel Gultsch
ff18ea452d
display toast when trying to join channel with no enabled accounts
2020-03-31 19:46:05 +02:00
Daniel Gultsch
3d0138506d
fixed typo. closes #3667
2020-03-31 11:18:16 +02:00
Daniel Gultsch
4e33ebb308
close FileInputStream in MTM. fixes #1150
2020-03-26 08:25:22 +01:00
Daniel Gultsch
41ada3480c
add jfif and jif as jpeg mime types
2020-03-12 21:28:54 +01:00
Daniel Gultsch
00191e2b60
explicitly use BouncyCastle for file crypto
2020-03-09 19:12:30 +01:00
Daniel Gultsch
257de4b51e
fixed typo
2020-03-09 15:06:21 +01:00
Daniel Gultsch
aecb771ab5
use 16 byte IVs for http upload files larger than 768KiB
...
Ever since Android 9+ switched to Conscrypt we can no longer efficiently
encrypt (and decrypt) large files with AES-GCM. We did’t notice this before
because when using 16 byte IVs even modern Androids will fall back to bouncy
castle. However the 'bug'/'feature' in Conscrypt surfaced when we switched over
to 12 byte IVs (which uses Conscrypt on Android 9+)
Switching back entirely to 16 byte IVs is undesirable as this would break
compatibility with Monal. So we end up with a weird compromise where we use
12 byte for normale plain text OMEMO messages and 'small' files where the
inefficiencies aren’t a problem.
The result of this commit is that Monal won’t be able to receive our files
larger than 768KiB. However the alternative is that Conversations would always
OOM when attempting to send larger files (where large depends on the available
RAM.)
fixes #3653
2020-03-08 13:13:19 +01:00
Daniel Gultsch
788b0f7f2d
momentarily go back to 16 byte IVs
...
The Crypto provider used from Android P onwards (conscrypt) has a weird bug
that when 12 bytes IVs are used it will decrypt or encrypt the entire file
in RAM instead of streaming it. That will cause OOM for 'larger' files on http
upload. (both downloads and uploads are effected)
It is currently unclear why this is happening and why Conscrypt is put into a
different mode.
We are only observing that Android versions below P are fine and using 16 bytes
is fine on all Android versions.
2020-03-07 18:33:29 +01:00
Daniel Gultsch
b2e9a954ab
avoid bundled source selection that comes with ImageCropper on Android 10
2020-03-05 13:17:18 +01:00
Daniel Gultsch
7b5d0e034e
when setting moderated also set non standard field to not make users participants by default
2020-03-02 11:11:23 +01:00
Daniel Gultsch
08bc3ca0d5
do not merge oob messages
2020-03-02 11:10:38 +01:00
genofire
d353372768
fix typo ( #3646 )
...
sorry, this makes me crazy
2020-02-29 15:02:36 +01:00
Daniel Gultsch
0f40e7e73b
fixed typo in resolver that cause hostnames not to be marked as authenticated (with DNSSec)
...
usually this wasn’t a problem as this is only the fallback after no IPs
have been discovered.
this also isn‘t a security issue as worst case is the hostname doesn’t get
accepeted as fallback in cert validation.
thanks @genofire for spotting this
2020-02-29 12:55:54 +01:00
genofire
5dd666257d
[BUGFIX] crash on resolve.toString if hostname is null ( #3635 )
2020-02-29 10:14:52 +01:00
Daniel Gultsch
d6ae9d8d14
switch to sending 12 byte IVs
2020-02-17 11:13:38 +01:00
Daniel Gultsch
e4685ad47a
hide local part of group chat xmpp address
2020-02-17 11:10:41 +01:00
Daniel Gultsch
d37aeef182
prevent sharing of xmpp uri for group chat bookmarks
2020-02-16 17:30:54 +01:00
Daniel Gultsch
9b55d90705
do not warn user if bookmark already exists
...
fixes #3631
2020-02-16 16:04:45 +01:00
Daniel Gultsch
d64bc1776b
show pdf previews in media browser
...
fixes #3639
2020-02-14 16:02:15 +01:00
Daniel Gultsch
c34d40ebff
fix user adapter view recycling bug
2020-02-14 12:04:11 +01:00
Daniel Gultsch
a06eb10ed8
fixed rendering of transparent pdfs; white overlay for very dark pdf
2020-02-12 09:09:34 +01:00
Daniel Gultsch
fc2b27c3b4
create pdf overlay for pdf thumbs
2020-02-11 19:55:31 +01:00
Daniel Gultsch
2aee26c49a
display PDF previews
2020-02-11 17:41:54 +01:00
Daniel Gultsch
09dff6310d
fix button alignment on Andrid <4.4
...
fixes #3625
2020-01-24 10:38:54 +01:00
Daniel Gultsch
843d7fe12d
evict cached previews when file gets deleted
2020-01-20 10:54:55 +01:00
Daniel Gultsch
66da5ffb6c
fixed download of previously deleted omemo files
2020-01-20 10:43:17 +01:00
Daniel Gultsch
9af056bb16
temporarily go back to 16 byte iv for imminent bug fix release
2020-01-19 13:40:48 +01:00
Daniel Gultsch
c62d5ebcb3
added failure logging to http download
2020-01-19 11:36:26 +01:00
Daniel Gultsch
c502503994
pass omemo decrypt up to higher layers to count as download error. decrypt all encrypted files
2020-01-19 10:01:43 +01:00
Daniel Gultsch
581eb5556f
make theme depend on dark/night mode on android 10+
...
closes #3611
2020-01-18 14:14:43 +01:00
Daniel Gultsch
e38a9cd729
omemo changes: use 12 byte IV, no longer accept auth tag appended to payload
2020-01-18 12:08:03 +01:00
Daniel Gultsch
b56f6fbf4c
updated screenshots
2020-01-18 09:12:50 +01:00
Daniel Gultsch
0fe47e5e4f
removed logging that accidentally got commited earlier
2020-01-16 20:46:45 +01:00
Daniel Gultsch
c8b5b96af9
support xmpp uris with single 'omemo' parameter for fingerprint (w/o sid)
2020-01-16 18:54:56 +01:00
Daniel Gultsch
724f30bcc5
fixed adding omemo encrypted images to gallery
2020-01-15 14:19:17 +01:00
ChaosKid42
f1d4127ace
simplify osm attribution ( #3613 )
2020-01-11 15:25:58 +01:00
Daniel Gultsch
f57a28ca32
add scan qr button to welcome screen
...
closes #2920
2020-01-11 14:06:35 +01:00
Daniel Gultsch
9653d68bdd
parse install referrer from gplay
2020-01-10 12:51:04 +01:00
Daniel Gultsch
6025e5de28
make registration uris work with fixed usernames
2020-01-09 20:10:19 +01:00
Daniel Gultsch
e57bd477a9
preselect proper account in create contact dialog after following invite
2020-01-09 17:42:02 +01:00
Daniel Gultsch
6205574bcb
support ?roster;ibr=y xmpp uris
2020-01-09 17:42:02 +01:00
Daniel Gultsch
d039c4870f
support registration via pars tokens
2020-01-09 17:42:02 +01:00
Daniel Gultsch
80e83f77a7
pulled translations from transifex
2020-01-08 19:05:12 +01:00
Daniel Gultsch
4e0f05f0a1
refactored xmpp uri parsing to expose all params
2020-01-08 10:51:18 +01:00
Daniel Gultsch
9ccb5fdb46
show edit display name in all flavors
2020-01-05 15:59:54 +01:00
Daniel Gultsch
83e1d0d0a5
make checkmark icon more material
2020-01-05 13:30:26 +01:00
Anjan Momi
0ddfc51d6c
show number of participants in a MUC
...
fixes #3447
2020-01-05 11:22:39 +01:00
Anjan Momi
0315b3b5c2
added openstreetmap copyright notice to maps
...
fixes #3588
2020-01-04 20:44:05 +01:00
Daniel Gultsch
42d69fd5e3
don’t crash when long pressing invalid geo-uris
2019-12-30 00:23:44 +01:00
Daniel Gultsch
af3c106dc8
reset file to normal message when attempting re-download after delete
...
fixes : #3604
2019-12-30 00:14:55 +01:00
Daniel Gultsch
2b375877eb
extend omemo auto expiry to 42 days (6 weeks)
...
closes #3584
2019-12-29 15:34:06 +01:00
Daniel Gultsch
ed4a73e1c7
persist file size across aborts
...
fixes #3601
2019-12-26 19:01:01 +01:00
Daniel Gultsch
a60e29d4f4
removed c style array
2019-12-26 17:36:16 +01:00
Daniel Gultsch
9bcef7a8e7
display '#' in generated channel avatars
2019-12-22 19:30:58 +01:00
Marc Schink
5117956648
Add missing space in debug output
2019-12-21 13:16:22 +01:00
Marc Schink
92cf221a2b
Implement download resumption for OMEMO encrypted files
2019-12-21 13:16:18 +01:00
Marc Schink
cae124d93f
createOutputStream(): allow to disable decryption
2019-12-20 19:17:55 +01:00
Daniel Gultsch
ef98a24bf6
add .heic to list of known mime types
...
fixes #3598
2019-12-12 18:54:46 +01:00
Daniel Gultsch
8d245fc754
don’t use secure delete when migrating edit column
2019-12-08 11:33:09 +01:00
Daniel Gultsch
00361e1e3d
make + in e164 pattern not optional
2019-12-06 11:16:33 +01:00
Daniel Gultsch
a3d639747a
fixups for last commit
2019-12-05 14:03:54 +01:00
Daniel Gultsch
8263fb73e9
jingle ibb: wait to receive ibb
...
previously we signalled succesfull file reception after receiving enough bytes on ibb;
however that causes us to race with the session-info file hash. now the recipient will wait for
<close/> and the sender will make sure to send the session-info before sending close.
closes #3500
2019-12-05 13:28:14 +01:00
Daniel Gultsch
8a5d658b2a
reduce cursor size back to 4m; now that the cause is fixed
2019-12-04 20:46:22 +01:00
Daniel Gultsch
cc79d8f6b3
properly restore LMC edits. switch to LMC v1.1
...
fixes #3566
closes #3592
2019-12-04 19:20:24 +01:00
Daniel Gultsch
b3c00d7163
use Base64.NO_WRAP instead of trim()
2019-12-04 17:35:06 +01:00
Daniel Gultsch
83520ad8e7
show jabber accounts from local address in Quicksy flavor
2019-12-02 13:50:58 +01:00
Daniel Gultsch
b135486bb4
prevent crash when deleting account on servers that don't support omemo
2019-12-02 13:21:18 +01:00
Daniel Gultsch
a99d7a7400
increase cursor window size on Android P when restoring messages
2019-12-02 13:20:53 +01:00
Daniel Gultsch
10c5d151d3
delete cached posh file after not being able to verify
2019-11-18 19:12:04 +01:00
Daniel Gultsch
eb943619af
do not crash when audio file reports zero length
2019-11-10 11:30:58 +01:00
Daniel Gultsch
97745bdfbe
prevent crash when counterpart in message was null
2019-11-10 11:30:31 +01:00
Daniel Gultsch
79e174743e
check if sender is in contact list before accepting jingle file
2019-11-09 22:58:02 +01:00
Daniel Gultsch
8d6fdfbde7
disable local server disco on Quicksy flavor
2019-11-09 10:20:58 +01:00
Daniel Gultsch
f6724e405e
allow jingle state transition for fallback after proxy failure
2019-11-09 09:31:35 +01:00
Daniel Gultsch
8e42d0d39c
make jingle state transitions less error prone
2019-11-08 22:27:14 +01:00
Daniel Gultsch
aa50f8da9d
move foreground setting and backup setting to main settings screen
2019-11-08 14:14:28 +01:00
Daniel Gultsch
7cc2478f5c
remove 'send indicate' setting and default to true
2019-11-08 12:23:06 +01:00
Daniel Gultsch
b320dea4d9
fixed spinning wheel when switching between local and jabber.network discovery
2019-11-08 12:18:39 +01:00
Daniel Gultsch
abc1cb5a89
remove 'indicate received' setting and default to true
2019-11-08 12:06:38 +01:00
Daniel Gultsch
7f25d91d33
do not validate port if hostname is empty. closes #3578
2019-11-03 22:03:46 +01:00
Daniel Gultsch
f7b7464a65
fixed links in privacy warning in channel discovery. fixes #3577
2019-11-02 17:00:23 +01:00
Daniel Gultsch
07786d4576
optionally search local muc rooms instead of jabber.network
2019-11-02 09:43:37 +01:00
Daniel Gultsch
adfbe59e57
mark silent notifications as local only
...
this will prevent silent notifications (for example those supressed by grace
period) showing up on my smart watch
2019-11-01 11:03:58 +01:00
Daniel Gultsch
ecad9cbe3c
catch security exception when passing on share intent that didn’t give us permission
2019-11-01 10:40:17 +01:00
Daniel Gultsch
2bed0dad12
attempt to fix some rare crashes
2019-10-26 13:23:27 +02:00
Daniel Gultsch
db3ca3f165
store message bodies up to 1MB
2019-10-23 22:34:43 +02:00
Daniel Gultsch
ab516299e7
catch all exceptions when closing closable
2019-10-23 22:34:25 +02:00
Daniel Gultsch
2f59d66fd1
catch dead system exception when creating error notification
2019-10-23 22:33:51 +02:00
Daniel Gultsch
9bea8074ab
fixed loading channel results from cache
2019-10-11 19:39:45 +02:00
Daniel Gultsch
e0b5010f24
don’t mark pgp encrypted files received from dino as deleted
2019-10-11 15:37:41 +02:00
Daniel Gultsch
ddffe198c6
change background if no results found in channel search. fixes #3559
2019-10-10 12:54:43 +02:00
Daniel Gultsch
2ab65609e4
always show 'contact details' on avatar long press in non-anon
2019-10-09 20:40:56 +02:00
Daniel Gultsch
8578af2b2b
flush on socks connection
2019-10-07 22:02:36 +02:00
Daniel Gultsch
799fffcb4a
Revert "pulled translations from transifex"
...
This reverts commit ea633f3d8f
.
2019-10-07 21:58:57 +02:00
Daniel Gultsch
79c3135b4d
properly guard bookmarks2 deletion
2019-10-07 13:49:39 +02:00
Daniel Gultsch
077e695f68
trigger omemo self healing for live msgs on server w/o MAM
2019-10-07 13:38:56 +02:00
Daniel Gultsch
4df8343b05
set autojoin=true after following invite
2019-10-07 09:51:03 +02:00
Daniel Gultsch
b96ef1e591
update ui after bookmark change
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f530e395ca
bookmarks2. introduce #compat namespace
2019-10-07 09:37:12 +02:00
Daniel Gultsch
94c592f213
leave/join on bookmark modifactions
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f26e0720c6
support for purge and delete
2019-10-07 09:37:12 +02:00
Daniel Gultsch
95bf66ca7d
Bookmarks2: support retraction
2019-10-07 09:37:12 +02:00
Daniel Gultsch
f1aa5f2cab
support for delete bookmarks2
2019-10-07 09:37:12 +02:00
Daniel Gultsch
6923b2898c
WIP Bookmarks 2 support
2019-10-07 09:37:12 +02:00
Daniel Gultsch
ea633f3d8f
pulled translations from transifex
2019-10-07 09:36:15 +02:00
ChaosKid42
af898b3bc4
LMC: find replacedMessages based on bare JID ( #3548 )
2019-10-05 20:18:42 +00:00
Daniel Gultsch
6155938623
show reason in error message
2019-10-05 22:14:38 +02:00
Daniel Gultsch
01fc78d2a5
disable context menu on failed jingle files. fixes #3556
2019-10-05 22:05:03 +02:00
Daniel Gultsch
d6835101b9
fixes for previous commit
2019-10-05 21:58:21 +02:00
Daniel Gultsch
7ce7a505a0
mark cancelled jingle ft as such on both sides
...
fixes #3554
2019-10-05 21:30:15 +02:00
Daniel Gultsch
6776603b90
fully read port in socks connection
...
incoming direct connections in receive mode wouldn’t clear the entire
destination from the input stream; thus adding a leading 0x00 to the file
fixes #3557
2019-10-03 20:47:31 +02:00
Daniel Gultsch
3d332f6f35
set shorter timeouts when using direct candidates
2019-10-03 09:37:01 +02:00
Marcin Mielniczuk
c7bbfaf061
Use a more meaningful name for old status ( #3552 )
2019-10-01 19:42:05 +00:00
Daniel Gultsch
322352ccbf
use new jabber.search.network endpoint
2019-10-01 12:42:12 +02:00
Daniel Gultsch
37b87e18ee
fix NPE when using channel search and DOMAIN_LOCK closes #3458
2019-10-01 12:24:57 +02:00
Daniel Gultsch
f8bd4284a5
report not-acceptable on jingle errors
2019-10-01 11:31:15 +02:00
Daniel Gultsch
d2d9bbe3da
improved jingle debugging
2019-09-29 13:32:45 +02:00
Daniel Gultsch
aef394c9f0
ability to open files from media preview. fixes #3521
2019-09-29 02:00:06 +02:00
Daniel Gultsch
618d892ae7
account deletion: only attempt to delete omemo id when connected
2019-09-29 01:40:40 +02:00
Daniel Gultsch
7b160a358e
do not add 'quote' when sharing own msgs
2019-09-28 23:56:29 +02:00
Daniel Gultsch
863ac7f2e5
show resource prompt when sending uncompressed video
2019-09-28 23:56:02 +02:00
Daniel Gultsch
9276eff1db
delete omemo keys when deleting account
2019-09-28 21:52:07 +02:00
Daniel Gultsch
11736ce48c
make list selection manager work with app compat
2019-09-26 23:47:55 +02:00
Daniel Gultsch
6c5b71440f
channel search result long press to show join dialog
2019-09-24 17:29:34 +02:00
Daniel Gultsch
75d35c357e
print emoji only status messages larger
2019-09-22 11:39:34 +02:00
Daniel Gultsch
426090c301
do not parse invites from type=groupchat
2019-09-22 10:00:09 +02:00
Daniel Gultsch
3820950408
show context menu in channel search to share uri
2019-09-21 10:51:05 +02:00
Daniel Gultsch
ed46d12115
close correct socket after faulty jingle socks connection
2019-09-20 10:00:57 +02:00
Daniel Gultsch
abe01f18f2
improved logging for messages waiting for join
2019-09-19 10:00:50 +02:00
Daniel Gultsch
af74c3604c
fixed R8 weirdness
2019-09-18 11:04:36 +02:00
Daniel Gultsch
02351dc0fb
fixed direct invites after adhoc
2019-09-18 09:55:18 +02:00
Daniel Gultsch
4c92d1b755
cancel spinning wheel on muclumbus error
2019-09-18 09:17:47 +02:00
Daniel Gultsch
2ec1d0cc09
warn when using _only_ ambiguous cyrillic
2019-09-16 15:13:53 +02:00
Daniel Gultsch
d963d95e30
fixed some minor NPE
2019-09-16 14:20:15 +02:00
Daniel Gultsch
ab57c59838
clear notifications when deleting account
2019-09-15 12:23:56 +02:00
Daniel Gultsch
4cd652884c
do not finish or repair sessions for untrusted senders
...
finishing (sending a key transport message in response to pre key message) as
well as reparing sessions will leak resource and availability and might in
certain situations in group chat leak the Jabber ID.
Therefor we disable that. Leaking resource might not be considered harmful by
a lot of people however we have always doing similar things with receipts.
2019-09-15 11:49:58 +02:00
Daniel Gultsch
be4953b1e4
parse LMC 1.1
2019-09-13 16:38:15 +02:00
Daniel Gultsch
e395da18bf
when parsing omemo messages ensure we only find one element
2019-09-12 12:43:11 +02:00
Daniel Gultsch
a7c47a33fa
inherit language from parent message when finding localized body
2019-09-12 12:42:42 +02:00
Daniel Gultsch
9bf5fb98ac
show language in message bubble if multiple language variants were received
...
XML and by inheritence XMPP has the feature of transmitting multiple language
variants for the same content. This can be really useful if, for example, you
are talking to an automated system. A chat bot could greet you in your own
language.
On the wire this will usually look like this:
```xml
<message to="you">
<body>Good morning</body>
<body xml:lang="de">Guten Morgen</body>
</message>
```
However receiving such a message in a group chat can be very confusing and
potentially dangerous if the sender puts conflicting information in there and
different people get shown different strings.
Disabeling support for localization entirely isn’t an ideal solution as on
principle it is still a good feature; and other clients might still show a
localization even if Conversations would always show the default language.
So instead Conversations now shows the displayed language in a corner of the
message bubble if more than one translation has been received.
If multiple languages are received Conversations will attempt to find one in
the language the operating system is set to. If no such translation can be
found it will attempt to display the English string.
If English can not be found either (for example a message that only has ru and
fr on a phone that is set to de) it will display what ever language came first.
Furthermore Conversations will discard (not show at all) messages with with
multiple bodies of the same language. (This is considered an invalid message)
The lanuage tag will not be shown if Conversations received a single body in
a language not understood by the user. (For example operating system set to
'de' and message received with one body in 'ru' will just display that body as
usual.)
As a guide line to the user: If you are reading a message where it is important
that this message is not interpreted differently by different people (like a
vote (+1 / -1) in a chat room) make sure it has *no* language tag.
2019-09-12 10:12:51 +02:00
Daniel Gultsch
a39fff5c8e
fixed 2 issues reported by new linter
2019-09-11 15:42:43 +02:00
Daniel Gultsch
8b69f8ae50
include ticker information in notification. fixes #3532
2019-09-08 17:58:15 +02:00
Daniel Gultsch
dd9777a6b7
do not include scope in ipv6 annoucment
2019-09-08 17:44:26 +02:00
Daniel Gultsch
9129c9acde
JET uses plain text file size
2019-09-06 13:11:37 +02:00
Daniel Gultsch
0e1c26c569
do not include link local in direct candidates
2019-09-05 13:17:45 +02:00
Daniel Gultsch
571c29f92a
make Tor connections work with direct TLS
2019-09-05 12:08:58 +02:00
Daniel Gultsch
7ec1b443ab
implemented support for for jingle encrypted transports (XEP-0396)
2019-09-04 16:14:01 +02:00
Daniel Gultsch
ff4d127b6f
use higher priority for proxy on receiving end
2019-09-02 08:51:50 +02:00
Daniel Gultsch
90e669313e
send fallback to ibb after proxy activation failed
2019-09-01 21:41:28 +02:00
Daniel Gultsch
10b1365264
also reply with direct connections on response
2019-09-01 20:42:07 +02:00
Daniel Gultsch
1c413edf06
bare minimum direct connections
2019-09-01 15:06:59 +02:00
Daniel Gultsch
783ed53d3a
order canditates by priority before attempting to connect
2019-09-01 11:34:36 +02:00
Daniel Gultsch
7d6bd540d9
version bump to 2.5.7 + changelog
2019-08-29 12:14:01 +02:00
Daniel Gultsch
29d0bed38b
when sharing text from Conversations to Conversations use quotes
2019-08-26 13:40:47 +02:00
Daniel Gultsch
219ae65ef7
more ibb fixes (include sid in transport-accept)
2019-08-22 14:47:30 +02:00
Daniel Gultsch
98eb49904c
fixed unlikely race between enabling carbons and discovering last MAM id
2019-08-22 09:57:39 +02:00
Daniel Gultsch
c84a89924e
include pgp sig and status in presence to non anon muc
2019-08-19 14:27:11 +02:00
Daniel Gultsch
f11adf4c02
do not put default nick into bookmark if none has been set before
2019-08-19 13:55:52 +02:00
Daniel Gultsch
fddd974412
do not put version info into disco
...
This will reduce traffic by limiting the variety of different caps version hashes.
It might also improve privacy by not leaking fdroid vs playstore vs self build information
2019-08-18 13:03:58 +02:00
Daniel Gultsch
daf7e6224f
fixed pgp decryption of automatically accepted jingle ft
2019-08-16 15:29:58 +02:00
Daniel Gultsch
d3ccba445a
increased reconnection interval after policy violation
2019-08-16 15:00:26 +02:00
Daniel Gultsch
0770914edf
refactored filename and extension parsing
2019-08-16 14:09:42 +02:00
Daniel Gultsch
c039ffcf35
clean up logging
2019-08-14 18:44:57 +02:00
Daniel Gultsch
195988398e
removed dead code in location activity
2019-08-14 17:04:45 +02:00
Daniel Gultsch
e735be323e
catch npe on participants context menu
2019-08-14 17:04:31 +02:00
Daniel Gultsch
6e1394ab40
make config flag for leave before join
2019-08-14 12:04:27 +02:00
Daniel Gultsch
ed95dd64ad
create empty disco result on error to fire advance stream features event
2019-08-13 21:18:32 +02:00
Daniel Gultsch
8ac042418b
fixes #3514
2019-08-11 16:54:00 +02:00
Daniel Gultsch
011bdd8ef6
fixed send_multiple share intent with empty extras. fixes #3512
2019-08-05 21:32:20 +02:00
Daniel Gultsch
238df77a1e
catch IllegalArgumentException when reading backup file
2019-07-25 17:01:43 +02:00
Daniel Gultsch
f597fc46da
implement time out for waiting on voice recording
2019-07-23 17:31:56 +02:00
Daniel Gultsch
a4665d4657
made domain verifier case insensitive. fixes #3495
2019-07-20 17:51:37 +02:00
Daniel Gultsch
c87e43eb92
put initial xmpp uri into signup intent
2019-07-20 15:58:05 +02:00
Daniel Gultsch
c1589d76b5
resetToWaiting should include http uploaded files
2019-07-20 12:15:06 +02:00
Daniel Gultsch
3837ec8122
do not include DNS servers from networks know to be inactive
...
* we still include DNS servers from VPNs because of edge cases where the XMPP server is hosted in the VPN
* on older Android versions we don’t know if a network is active or not (activeNetwork == null)
fixes #3465
2019-07-18 11:24:33 +02:00
Daniel Gultsch
b68851b719
create share button in backup done notification
2019-07-15 19:11:00 +02:00
Daniel Gultsch
97598c63dc
split on first dot when using domain instead of black listed local part
2019-07-15 19:09:53 +02:00
Daniel Gultsch
bc3e5f1dd4
muc message corrections only compare bare jid true counterpart
...
during live messages we only store the bare real jid; on muc catch up we might get the full jid
for that reason we only compare bare jids
2019-07-14 17:58:31 +02:00
Daniel Gultsch
719b35e431
prefer attachment in share intent if there is one
2019-07-14 16:39:09 +02:00
Daniel Gultsch
7e93c1021b
handle blocking and unblocking of full jids
2019-07-10 17:58:48 +02:00
Daniel Gultsch
8138eb0346
use more default values in LocationActivity
...
fixes #3475
2019-07-04 18:17:16 +02:00
Daniel Gultsch
98c4e9056f
use helper method to close socket
2019-07-04 10:12:08 +02:00
Daniel Gultsch
feba9a71ee
code clean up
2019-07-02 11:10:21 +02:00
Daniel Gultsch
8c526de0af
disable muc push on archive instead of leave
...
leave can be triggered on swipe and doesn’t mean we don’t want pushes
2019-07-01 14:35:00 +02:00
Daniel Gultsch
4f0214b477
check if activity is not null before using it to paint send button
2019-07-01 10:17:29 +02:00
Daniel Gultsch
7ec8f7952f
migrate copy ond write list to synchronized hashset for pending mucs
2019-06-30 21:57:37 +02:00
Daniel Gultsch
9f08a32ffb
include remote server errors in errors that should trigger a self ping
2019-06-30 20:08:28 +02:00
Daniel Gultsch
0ecdb43be6
rate limit muc pings / joins. never run two pings at same time
2019-06-30 19:54:07 +02:00
Daniel Gultsch
49224335fc
attempt to unregister when receiving push for channel no longer joined
...
when receiving a FCM push message for a channel the user is no longer in (this can happen when the disable command failed) an attempt will be made to explicitly unregister from the app server (which in turn will then send item-not-found on next push)
2019-06-26 17:40:12 +02:00
Daniel Gultsch
7809af9b57
implement FCM push for group chats
2019-06-25 18:15:51 +02:00
Daniel Gultsch
e467fe341e
implement client support for muc push
...
Staying connected to a MUC room hosted on a remote server can be challenging.
If a server reboots it will usually send a shut down notification to all
participants. However even if a client knows that a server was shut down it
doesn’t know when it comes up again. In some corner cases that shut down
notification might not even be delivered successfully leaving the client in a
state where it thinks it is connected but it really isn’t.
The possible work around implemented in this commit is to register the clients
full JID (user@domain.tld/Conversations.r4nd) as an App Server according to
XEP-0357 with the room. (Conversations checks for the push:0 namespace on the
room.)
After cycling through a reboot the first message send to a room will trigger
pubsub notifications to each registered full JID. This event will be used to
trigger a XEP-0410 ping and if necessary a subsequent rejoin of the MUC.
If the resource has become unavailable during down time of the MUC server the
user’s server will respond with an IQ error which in turn leads to the MUC
server disabling that push target.
Leaving a MUC will send a `disable` command. If sending that disable command
failed for some reason (network outage) and the client receives a pubsub
notification for a room it is no longer joined in it will respond with an
item-not-found IQ error which also disables subsequent pushes from the server.
Note: We 0410-ping before a join to avoid unnecessary full joins which can be
quite costly. Further client side optimazations will also surpress pings when
a ping is already in flight to further save traffic.
2019-06-24 18:16:06 +02:00
Daniel Gultsch
b6d059ed89
ping muc after receiving not-acceptable error
2019-06-18 18:40:16 +02:00
Daniel Gultsch
17c8bf3452
attempt to keep messages waiting until muc is connected
2019-06-18 18:09:44 +02:00
Daniel Gultsch
6862b60c3f
self ping (xep-0410) after receiving invite to muc
2019-06-18 13:20:24 +02:00
Daniel Gultsch
4c3cd89fe7
syntax clean up
2019-06-17 17:37:02 +02:00
Daniel Gultsch
782d889cc5
disallow subsequent session-accept
2019-06-17 09:51:49 +02:00
Daniel Gultsch
c1bdda0a9b
reenable http upload that got disabled in last commit
2019-06-17 08:33:19 +02:00
Daniel Gultsch
9fc1ead74f
use ibb if other party doesn’t annouce s5b feature
2019-06-16 22:57:10 +02:00
Daniel Gultsch
fe6c981ae2
accept direct ibb jingle offers
2019-06-16 21:23:18 +02:00
Daniel Gultsch
1cfba86aff
don’t crash when attempting to publish bookmarks while offline
2019-06-16 18:05:06 +02:00
Daniel Gultsch
52c0bf73a0
handle some rare npe
2019-06-16 18:04:43 +02:00
Daniel Gultsch
2fbd9e6744
MessageStyle notifications replace car extender
2019-06-16 16:02:22 +02:00
Daniel Gultsch
953307ca30
use socks instead of http proxy for http upload
...
http proxy doesn’t seem to work with onion v3
2019-06-16 15:06:34 +02:00
Daniel Gultsch
997f922401
put geo uri in attachment preview when shared
2019-05-28 22:32:42 +02:00
Daniel Gultsch
16ce476bbc
show negative max files size (unknown/unlimited) simply as available
2019-05-27 18:32:04 +02:00
Daniel Gultsch
9a8cc5b2e7
fixed some NPE
2019-05-22 23:58:39 +02:00
Daniel Gultsch
e5378df39c
synchronize around attributes in toContentValues()
2019-05-22 23:58:08 +02:00
Daniel Gultsch
10653df164
show error messages in text layout not edittext
2019-05-22 17:31:11 +02:00
Daniel Gultsch
c965049605
handle invalid canditates in jingle
2019-05-22 17:30:51 +02:00
Daniel Gultsch
132f81df23
double check that activity is not null in updateSend button
2019-05-22 17:30:04 +02:00
Daniel Gultsch
a909e1a7cf
fixed NPE in channel discovery after race to create menu
2019-05-22 17:29:27 +02:00
Daniel Gultsch
5bedde7913
run postDelayed in background thread
2019-05-08 14:11:28 +02:00
Daniel Gultsch
6785d8c69f
set volume control channel to media volume / default. fixes #3451
2019-05-08 14:11:06 +02:00
Daniel Gultsch
ba327d8512
set own omemo devices to inactive after 14 days of inactivity; was 7 days
2019-05-03 10:48:33 +02:00
Daniel Gultsch
82dcae59e3
added language tag in channel search results
2019-05-02 20:09:43 +02:00
Daniel Gultsch
818f2ab61c
fixed rare NPE cause by race
2019-05-02 20:09:16 +02:00
Daniel Gultsch
61604dedea
jingle: send canditate error before fallback
2019-04-30 11:23:15 +02:00
Daniel Gultsch
73d66fd703
go forward through cursor in message restore
...
We have seen some weird CursorIndexNotFoundException that we were unable to reproduce.
We assume that going forward (moveToNext()) through the cursor instead of (moveToPrevious() fixes that issue
2019-04-30 10:45:28 +02:00
af8a524db1
137d48810d
Make use of Namespace.REGISTER constant ( #3446 )
2019-04-29 07:51:46 +00:00
ialokim
15791b732c
fix export error for non-unicode numbers ( #3444 )
2019-04-28 10:46:49 +00:00
Daniel Gultsch
7c35f28633
do not synchronize twice when adding status and date bubbles
2019-04-27 15:24:37 +02:00
Daniel Gultsch
bcab77a044
wait with presence selection until attachment commit
2019-04-27 14:41:43 +02:00
Daniel Gultsch
b2ea91909b
introduced type private_file_message to handle attachments in PMs. fixes #3372
2019-04-27 11:46:43 +02:00
Daniel Gultsch
b55d4bc62f
do not jump out of whispher mode when selecting attach
2019-04-26 17:53:00 +02:00
Daniel Gultsch
dc70b7e28a
add bookmark when clicking on channel search result
2019-04-26 12:26:49 +02:00
Daniel Gultsch
76fb17c972
add contact dialog: warn on suspicious addresses
2019-04-26 12:05:52 +02:00
Daniel Gultsch
d2c9ce7bf0
store correcting message in db
2019-04-26 11:18:16 +02:00
Daniel Gultsch
8a1a9f4f55
put PM hint above edittext. fixes #3432
2019-04-26 10:23:26 +02:00
Daniel Gultsch
182a81e3ef
only show opened FAB when some accounts are enabled
2019-04-26 09:30:38 +02:00
Daniel Gultsch
6704db21fb
added Tor support to channel search
2019-04-25 21:10:50 +02:00
Daniel Gultsch
9db1c10f45
open FAB when no contacts or bookmarks are found
2019-04-25 19:52:42 +02:00
Daniel Gultsch
7b61bb9841
rework welcome screens to split use existing account / create new
...
closes #3440
2019-04-25 19:01:34 +02:00
Daniel Gultsch
a04b7a1c0f
keyboard event callbacks shoud run on ui thread. fixes #3441
2019-04-25 12:27:38 +02:00
Daniel Gultsch
ff84ee6964
cache channel search results
2019-04-24 13:25:54 +02:00
Daniel Gultsch
2fa687b8ae
refactor muc search to use http
2019-04-22 13:00:45 +02:00
Daniel Gultsch
a0f88aa9b4
implement channel discovery over jabber.search.network
2019-04-22 10:42:21 +02:00
Daniel Gultsch
7a825231fb
run keyboard listeners on background executor
2019-04-17 18:25:21 +02:00
Daniel Gultsch
39bc067405
execute some dismiss error notification and reset error in background
2019-04-17 12:49:36 +02:00
Daniel Gultsch
d04e2e99f3
use mediated invite on reinvite if user is not member
2019-04-11 08:57:20 +02:00
Daniel Gultsch
bf7d50692c
use styled warning for message error. fixes #3428
2019-04-08 16:32:41 +02:00
Daniel Gultsch
d390345073
show max file upload size in server info
2019-03-23 07:27:03 +01:00
Daniel Gultsch
74301831d2
do sent/received correct based on true counterpart introduces in f406631512
only for type=groupchat
2019-03-15 12:46:27 +01:00
Daniel Gultsch
46596e8652
fix backup creation for older installations
...
if your Conversations installation is older than December 2016 (version 1.15.0) the backup would
include historic data that a current installation is not able to read on restore.
This commits excludes that data from the backup.
If you had problems importing the backup you need to create a new backup after this patch
2019-03-07 09:08:37 +01:00
Daniel Gultsch
c7dea9dded
fixed security exception when attempting to display image in notification
2019-03-03 08:32:54 +01:00
Daniel Gultsch
875f0b9943
find activity even if wrapped in context wrapper. fixes #3396
2019-03-03 08:31:46 +01:00
Daniel Gultsch
f406631512
double check that muc message is ours if true jid is known
2019-03-02 08:36:36 +01:00
Daniel Gultsch
a29a5fd491
copy intent extras in eventreceiver
2019-02-27 14:16:26 +01:00
Daniel Gultsch
24a51d8715
do null check before splitting error message for processing
2019-02-23 10:24:08 +01:00
Daniel Gultsch
d95b904b5b
show file too large instead of generic delivery failed
2019-02-20 21:44:06 +01:00
Daniel Gultsch
3fabb52293
after switching from forced foreground to foreground notification needs update
2019-02-16 11:58:16 +01:00
Daniel Gultsch
905d2ab432
explicitly set profile+level for encoder
...
some modern Androids (namely my Xiaomi Mi A1 after the update to Andorid 9) seem to require that
2019-02-16 11:40:51 +01:00
Daniel Gultsch
f26a57ced4
fixed regression of search hint not updating in StartConversation screen
2019-02-15 14:07:39 +01:00
Daniel Gultsch
6b5e81df49
allow filtering in participant view. fixes #3371
2019-02-15 14:00:42 +01:00
Daniel Gultsch
5f543e8314
show notification when backup is done
2019-02-15 13:17:49 +01:00
Daniel Gultsch
d79768e923
do not show 'manage permissions' submenu when only 'remove from room' is visible
2019-02-15 09:57:58 +01:00
Daniel Gultsch
bebce313b2
print available stream features / mechanisms on incompat server
2019-02-09 20:21:29 +01:00
Daniel Gultsch
ef09b0ab1a
use the term channel in destroy dialog
2019-02-08 13:46:33 +01:00
Daniel Gultsch
310362130f
catch activity not found when trying to open contact app
2019-02-07 21:39:30 +01:00
Daniel Gultsch
bfaf10aa72
brought back 'moderated' config in advanced mode
2019-02-07 18:11:21 +01:00
Daniel Gultsch
b648c482f3
allow corrections in all mucs
2019-02-07 18:11:07 +01:00
Daniel Gultsch
ad64058d25
hide lock icon in channels; modify muc user context
2019-02-07 13:18:42 +01:00
Daniel Gultsch
b6a501d24b
rights managment in muc
2019-02-06 23:47:29 +01:00
Daniel Gultsch
32ef3755e2
show different room settings for channels and groups
2019-02-06 18:29:07 +01:00
Daniel Gultsch
2b913f367d
provide the same fab submenu for both tabs. rename tab to bookmark
2019-02-06 14:45:51 +01:00
Daniel Gultsch
179beb15e0
fix xmpp uri links that have a aditional chars after join
...
for example xmpp:foo@bar.tld?join,
2019-01-31 13:59:41 +01:00
Daniel Gultsch
e0965a2bf2
remove warning messages for kick after ban failing. on modern servers ban is enough to also kick
2019-01-28 10:52:35 +01:00
Daniel Gultsch
b30fb46c85
make sure that http upload/download is not startetd multiple times
2019-01-28 10:39:01 +01:00
Daniel Gultsch
0898783309
schedule another ping 30s after connectivity_change
2019-01-27 20:54:45 +01:00
Daniel Gultsch
8bc9f9a7c8
fixed context menu on self contact
2019-01-27 18:57:41 +01:00
Daniel Gultsch
2bc9fdf5d3
show sub menu fabs for create group chats. fixes #2950
2019-01-27 16:35:55 +01:00
Daniel Gultsch
20e731c956
show context menu when long pressing own account picture
2019-01-27 11:38:20 +01:00
Daniel Gultsch
2f3ccb5f90
changed order of users and media in muc details
2019-01-27 10:32:27 +01:00
Daniel Gultsch
b532f5ed1f
add context menu for muc user adapter
2019-01-26 20:31:52 +01:00
Daniel Gultsch
b9c4309a28
refactored group chat members into seperate screen
2019-01-25 17:58:23 +01:00
Licaon_Kter
0ba3f31cbc
Fix type in presence ( #3357 )
2019-01-25 13:39:36 +00:00
Daniel Gultsch
7f170276a9
refactored avatar workers into single class
2019-01-25 10:07:02 +01:00
Daniel Gultsch
18807305c1
do not require starttls when connecting over to .onion domain
2019-01-25 08:48:46 +01:00
Daniel Gultsch
8fbe445c99
scan all files in case some files were previously marked as deleted by accident
2019-01-24 15:03:58 +01:00
Daniel Gultsch
04d1b92a79
make bitmap worker task static; migrate conversation list row to binder
2019-01-24 12:27:57 +01:00
Daniel Gultsch
a32bb652f7
always show number of connected accounts in foreground notification. fixes #3352
2019-01-23 17:07:14 +01:00
Daniel Gultsch
2e0db4dcda
do not show installed accounts in restore view
2019-01-23 12:45:15 +01:00
Daniel Gultsch
18982174ce
ask for permissions before opening restore backup. use insert or ignore for messages
2019-01-23 11:20:36 +01:00
Daniel Gultsch
c9fc40dfe5
WIP backup & restore
2019-01-22 19:25:45 +01:00
Daniel Gultsch
a0be2dc54f
updated readme
2019-01-21 11:55:52 +01:00
Daniel Gultsch
83c3258dd7
properly jump out of connection loop on state changing errors
2019-01-19 11:47:21 +01:00
Daniel Gultsch
dcdf340a41
normalize nicks before getting them from bookmarks or pep
2019-01-19 11:42:57 +01:00
Daniel Gultsch
477f2d34f3
use clear top flag in shortcut intent
2019-01-18 12:28:35 +01:00
Daniel Gultsch
a53774bc6d
resend presence to muc avatar update. fixes #3175
2019-01-17 17:55:47 +01:00
Daniel Gultsch
e714d7cd29
null checks when deleting old files
...
fixes #3345
2019-01-17 11:56:34 +01:00
Daniel Gultsch
caf5fcad88
fixed enabled accounts check in onCreate
2019-01-13 22:18:32 +01:00
Daniel Gultsch
526c2637c1
provide Set as Profile intent. fixes #2594
2019-01-13 15:28:24 +01:00
Daniel Gultsch
004411cf51
force foreground service during onCreate()
...
creating / upgrading the database and reading accounts can be expensive
and will otherwise trigger an AN
2019-01-13 11:27:16 +01:00
Daniel Gultsch
d02fd73af8
explicitly start service (instead of just bind) service from contact chooser
2019-01-13 09:42:44 +01:00
Daniel Gultsch
67fddd1654
fix manual location correcting / fab not showing up on 4.4
...
fixes #3097
2019-01-12 21:08:17 +01:00
Daniel Gultsch
ba34561235
ignore code block start in message preview. fixes #3124
2019-01-12 14:26:33 +01:00
Daniel Gultsch
c5e35dc4b3
extend open with to audio files
2019-01-12 10:29:41 +01:00
Daniel Gultsch
918b3223b3
stop file watching when service has been destroyed
2019-01-12 10:21:21 +01:00
Daniel Gultsch
d2b8134cdf
check if we have storage permission before marking a file as deleted on resend
2019-01-12 10:09:45 +01:00
Daniel Gultsch
e9bf2b464c
explicitly set type=images for all media with an image mime type
...
this is in preperation to be able to query the database for all images
2019-01-12 09:01:35 +01:00
Daniel Gultsch
9efb3c6dc6
synchronize around notification update from corrected messages
2019-01-12 08:55:46 +01:00
Daniel Gultsch
6ecf6f1149
make contact chooser (direct sharing) smart about sharing text in groups when http is not available
2019-01-11 17:45:18 +01:00
Daniel Gultsch
8124b24479
maintain order of conversations in share with dialog
2019-01-11 17:19:54 +01:00
Daniel Gultsch
c11dd71510
fixed regression that hid enter jid button in block list view
2019-01-11 14:49:03 +01:00
Daniel Gultsch
a38cd88702
offer 'open with' in context menu for geo uris
2019-01-11 10:13:25 +01:00
Daniel Gultsch
394e252777
support enter/done key in create contact & join dialogs
2019-01-10 22:09:20 +01:00
Daniel Gultsch
7cabb2c377
check if encrypted pgp file get deleted
2019-01-10 21:24:24 +01:00
Daniel Gultsch
8ab4ca7138
fixed downloading of deleted files
2019-01-10 21:23:53 +01:00
Daniel Gultsch
a644b40c3e
don’t check if files exists when loading attachments
2019-01-10 17:43:09 +01:00
Daniel Gultsch
52afcac230
mark deleted files in database and not query them when querying for media
2019-01-10 14:52:27 +01:00
Daniel Gultsch
459db1a0a3
ignore startService failure
...
some nokia devices with Android 9 fail to start the service from the activity sometimes. since this is probably a race it should be save to ignore this
2019-01-09 18:30:28 +01:00
Daniel Gultsch
25856992d1
remove deprecated instanceIdService
2019-01-09 17:37:52 +01:00
Daniel Gultsch
a15c50a15f
added avatar to 'me' in notifications
2019-01-09 16:26:20 +01:00
Daniel Gultsch
96e3546904
put images into MessageStyle notifications
2019-01-09 12:47:09 +01:00
Daniel Gultsch
c4539b8583
use bitmap instead of URI for avatars in notification. fixes #3310
2019-01-09 09:03:33 +01:00
Daniel Gultsch
46eb1212f1
fix import after osmdroid update
2019-01-06 10:13:31 +01:00
Daniel Gultsch
dac088428c
handle decrypting/encrypting of omemo messages with duplicate device ids
2019-01-05 15:34:19 +01:00
Daniel Gultsch
136d1e1905
added work around to create 'actions' from nova launcher
...
fixes #3331
2019-01-05 10:31:13 +01:00
Daniel Gultsch
b9952f27fd
archive destoryed mucs when registering that bookmark has been removed
2019-01-03 14:07:03 +01:00
Daniel Gultsch
9d849f540f
Merge branch 'implement_room_destruction' of https://github.com/area-42/Conversations into bookmarks
2019-01-03 13:27:24 +01:00
Christoph Scholz
77b42ba9ca
remove bookmark after a room is destroyed
2019-01-02 18:07:21 +01:00
Christoph Scholz
52e1a0c708
implement room destruction
2019-01-02 18:06:38 +01:00
Daniel Gultsch
835c89328d
use person in message style notification
2019-01-02 15:29:31 +01:00
Daniel Gultsch
cfab0dbe1b
introduced 'original' as video quality and do not ignorer error
2019-01-02 10:03:33 +01:00
Daniel Gultsch
6ac1c00d00
clear conversationsuuid and pending attachments when opening new conversation
2019-01-02 09:36:22 +01:00
Daniel Gultsch
a849c34f56
clear pending view intent when processing onNewIntent()
2019-01-02 09:32:22 +01:00
Daniel Gultsch
d414f85ec0
change epub file extension to epub and added mobi
2018-12-22 21:25:39 +01:00
Daniel Gultsch
3eaa48fa46
added epub and azw mime types. try to resolve application/octet-stream by file extension instead. added preview icons for ebooks
2018-12-22 13:02:45 +01:00
Daniel Gultsch
6b75c819d8
log number of unhandled iq callbacks after resume
2018-12-22 13:00:40 +01:00
Daniel Gultsch
9659f46136
log policy violation stream error message to logcat
2018-12-18 11:02:25 +01:00
Daniel Gultsch
5c920a9362
fixed some rare crashes caused by race conditions
2018-12-17 19:35:08 +01:00
Daniel Gultsch
30d5c08c35
show accept button to confirm sasl downgrade. fixes #2498
2018-12-16 23:12:04 +01:00