diff --git a/CHANGELOG.md b/CHANGELOG.md index 81c2d9e1f..b7ef6c6fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,20 +1,9 @@ # Changelog -### Version 2.10.5 - -* Security: Stop downloading files that exceed advertised file size -* Security: Limit POSH files to 10K - -### Version 2.10.4 - -* Fix interaction with Google Maps Share Location Plugin -* Remove footnote with regards to server fee - ### Version 2.10.3 * Store files in location appropriate for Android 11 * Attempt to reconnect call after network switch -* Show caller JID and account JID in incoming call screen ### Version 2.10.2 diff --git a/art/message_bubble_received_obsidian.svg b/art/message_bubble_received_obsidian.svg deleted file mode 100644 index a1e743733..000000000 --- a/art/message_bubble_received_obsidian.svg +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - diff --git a/build.gradle b/build.gradle index 52b2a476b..c33b5646a 100644 --- a/build.gradle +++ b/build.gradle @@ -58,7 +58,7 @@ dependencies { implementation 'androidx.viewpager:viewpager:1.0.0' - playstoreImplementation('com.google.firebase:firebase-messaging:23.0.2') { + playstoreImplementation('com.google.firebase:firebase-messaging:23.0.0') { exclude group: 'com.google.firebase', module: 'firebase-core' exclude group: 'com.google.firebase', module: 'firebase-analytics' exclude group: 'com.google.firebase', module: 'firebase-measurement-connector' diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png deleted file mode 100644 index b35467abe..000000000 Binary files a/fastlane/metadata/android/en-US/images/icon.png and /dev/null differ diff --git a/src/cheogram/java/com/cheogram/android/ConnectionService.java b/src/cheogram/java/com/cheogram/android/ConnectionService.java index 8a68aadd2..13b3041da 100644 --- a/src/cheogram/java/com/cheogram/android/ConnectionService.java +++ b/src/cheogram/java/com/cheogram/android/ConnectionService.java @@ -99,13 +99,7 @@ public class ConnectionService extends android.telecom.ConnectionService { String tel = PhoneNumberUtils.extractNetworkPortion(rawTel); try { tel = PhoneNumberUtilWrapper.normalize(this, tel); - } catch (IllegalArgumentException | NumberParseException e) { - return Connection.createFailedConnection( - new DisconnectCause(DisconnectCause.ERROR) - ); - } - - if (xmppConnectionService == null) { + } catch (NumberParseException e) { return Connection.createFailedConnection( new DisconnectCause(DisconnectCause.ERROR) ); @@ -118,12 +112,6 @@ public class ConnectionService extends android.telecom.ConnectionService { } Account account = xmppConnectionService.findAccountByJid(Jid.of(gateway[0])); - if (account == null) { - return Connection.createFailedConnection( - new DisconnectCause(DisconnectCause.ERROR) - ); - } - Jid with = Jid.ofLocalAndDomain(tel, gateway[1]); CheogramConnection connection = new CheogramConnection(account, with, postDial); @@ -232,7 +220,7 @@ public class ConnectionService extends android.telecom.ConnectionService { if (sessionId == null || !sessionId.equals(this.sessionId)) return; if (rtpConnection == null) { this.with = with; // Store full JID of connection - findRtpConnection(); + rtpConnection = xmppConnectionService.getJingleConnectionManager().findJingleRtpConnection(account, with, sessionId); } setStatusHints(new StatusHints(null, gatewayIcon, null)); @@ -243,10 +231,10 @@ public class ConnectionService extends android.telecom.ConnectionService { setDialing(); } else if (state == RtpEndUserState.INCOMING_CALL) { setRinging(); - } else if (state == RtpEndUserState.CONNECTING) { + } else if (state == RtpEndUserState.CONNECTED) { xmppConnectionService.setDiallerIntegrationActive(true); setActive(); - } else if (state == RtpEndUserState.CONNECTED) { + postDial(); } else if (state == RtpEndUserState.DECLINED_OR_BUSY) { close(new DisconnectCause(DisconnectCause.BUSY)); @@ -281,20 +269,15 @@ public class ConnectionService extends android.telecom.ConnectionService { public void onAnswer() { // For incoming calls, a connection update may not have been triggered before answering // so we have to acquire the rtp connection object here - findRtpConnection(); - if (rtpConnection == null || rtpConnection.get() == null) { - close(new DisconnectCause(DisconnectCause.CANCELED)); - } else { - rtpConnection.get().acceptCall(); - } + this.rtpConnection = xmppConnectionService.getJingleConnectionManager().findJingleRtpConnection(account, with, sessionId); + + rtpConnection.get().acceptCall(); } @Override public void onReject() { - findRtpConnection(); - if (rtpConnection != null && rtpConnection.get() != null) { - rtpConnection.get().rejectCall(); - } + this.rtpConnection = xmppConnectionService.getJingleConnectionManager().findJingleRtpConnection(account, with, sessionId); + rtpConnection.get().rejectCall(); close(new DisconnectCause(DisconnectCause.LOCAL)); } @@ -333,12 +316,6 @@ public class ConnectionService extends android.telecom.ConnectionService { if (c) postDial(); } - protected void findRtpConnection() { - if (rtpConnection != null) return; - - rtpConnection = xmppConnectionService.getJingleConnectionManager().findJingleRtpConnection(account, with, sessionId); - } - protected void sleep(int ms) { try { Thread.sleep(ms); diff --git a/src/cheogram/java/eu/siacs/conversations/ui/MagicCreateActivity.java b/src/cheogram/java/eu/siacs/conversations/ui/MagicCreateActivity.java index 6f0386672..3419d8fc9 100644 --- a/src/cheogram/java/eu/siacs/conversations/ui/MagicCreateActivity.java +++ b/src/cheogram/java/eu/siacs/conversations/ui/MagicCreateActivity.java @@ -66,11 +66,13 @@ public class MagicCreateActivity extends XmppActivity implements TextWatcher { if (username != null && domain != null) { binding.title.setText(R.string.your_server_invitation); binding.instructions.setText(getString(R.string.magic_create_text_fixed, domain)); + binding.finePrint.setVisibility(View.INVISIBLE); binding.username.setEnabled(false); binding.username.setText(this.username); updateFullJidInformation(this.username); } else if (domain != null) { binding.instructions.setText(getString(R.string.magic_create_text_on_x, domain)); + binding.finePrint.setVisibility(View.INVISIBLE); } binding.createAccount.setOnClickListener(v -> { try { diff --git a/src/cheogram/java/eu/siacs/conversations/ui/ManageAccountActivity.java b/src/cheogram/java/eu/siacs/conversations/ui/ManageAccountActivity.java index 3d08ac4bd..0fc4757cd 100644 --- a/src/cheogram/java/eu/siacs/conversations/ui/ManageAccountActivity.java +++ b/src/cheogram/java/eu/siacs/conversations/ui/ManageAccountActivity.java @@ -3,7 +3,6 @@ package eu.siacs.conversations.ui; import android.content.ActivityNotFoundException; import android.content.ComponentName; import android.content.Intent; -import android.os.Build; import android.os.Bundle; import android.security.KeyChain; import android.security.KeyChainAliasCallback; @@ -87,8 +86,6 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda startActivity(new Intent(android.telecom.TelecomManager.ACTION_CHANGE_PHONE_ACCOUNTS)); }); - if (Build.VERSION.SDK_INT < 23) return; - outer: for (Account account : xmppConnectionService.getAccounts()) { for (Contact contact : account.getRoster().getContacts()) { diff --git a/src/cheogram/res/layout/activity_pick_server.xml b/src/cheogram/res/layout/activity_pick_server.xml index d55ea78cc..16be52ec4 100644 --- a/src/cheogram/res/layout/activity_pick_server.xml +++ b/src/cheogram/res/layout/activity_pick_server.xml @@ -84,6 +84,18 @@ android:padding="8dp" android:src="@drawable/main_logo" /> + + diff --git a/src/cheogram/res/layout/magic_create.xml b/src/cheogram/res/layout/magic_create.xml index f6e0436a5..cc0337062 100644 --- a/src/cheogram/res/layout/magic_create.xml +++ b/src/cheogram/res/layout/magic_create.xml @@ -95,6 +95,19 @@ android:padding="8dp" android:src="@drawable/main_logo" /> + + diff --git a/src/cheogram/res/values/themes.xml b/src/cheogram/res/values/themes.xml index 1eac1a82c..052fd01d3 100644 --- a/src/cheogram/res/values/themes.xml +++ b/src/cheogram/res/values/themes.xml @@ -304,22 +304,6 @@ - - - - - -