Threema 1 жил өмнө
parent
commit
86c038c63f

+ 2 - 2
app/build.gradle

@@ -18,14 +18,14 @@ if (getGradle().getStartParameter().getTaskRequests().toString().contains("Hms")
 // version codes
 
 // Only use the scheme "<major>.<minor>.<patch>" for the app_version
-def app_version = "5.3"
+def app_version = "5.3.1"
 
 // beta_suffix with leading dash (e.g. `-beta1`)
 // should be one of (alpha|beta|rc) and an increasing number or empty for a regular release.
 // Note: in nightly builds this will be overwritten with a nightly version "-n12345"
 def beta_suffix = ""
 
-def defaultVersionCode = 955
+def defaultVersionCode = 956
 
 /**
  * Return the git hash, if git is installed.

+ 1 - 5
app/src/libre/play/release-notes/de/default.txt

@@ -1,5 +1 @@
-* Neuer Kommunikationslayer
-* Verbesserungen in Zusammenhang mit Perfect Forward Secrecy
-* WebRTC-Update
-* Übersetzung ins Schweizerdeutsche
-* Zahlreiche Optimierungen und Fehlerbehebung
+* Die Fallback-Funktionalität bei blockierten Ports oder IPv6-Verbindungsproblemen wurde wiederhergestellt

+ 1 - 5
app/src/libre/play/release-notes/en-US/default.txt

@@ -1,5 +1 @@
-* New and improved communications layer
-* Perfect Forward Secrecy enhancements
-* WebRTC update
-* Swiss German translation
-* Numerous optimizations and bug fixes
+* Restored connection fallback functionality in case of blocked ports or IPv6 issues

+ 4 - 1
app/src/main/java/ch/threema/app/fragments/MessageSectionFragment.java

@@ -514,7 +514,10 @@ public class MessageSectionFragment extends MainFragment
 		if (savedInstanceState != null && TestUtil.empty(filterQuery)) {
 			filterQuery = savedInstanceState.getString(BUNDLE_FILTER_QUERY);
 		}
-		messageListAdapter.setFilterQuery(filterQuery);
+
+		if (messageListAdapter != null) {
+			messageListAdapter.setFilterQuery(filterQuery);
+		}
 	}
 
 	@Override

+ 1 - 4
app/src/main/java/ch/threema/app/ui/OpenBallotNoticeView.java

@@ -359,8 +359,6 @@ public class OpenBallotNoticeView extends ConstraintLayout implements DefaultLif
 			MenuBuilder menuBuilder = new MenuBuilder(getContext());
 			new MenuInflater(getContext()).inflate(R.menu.chip_open_ballots, menuBuilder);
 
-			ConfigUtils.tintMenu(menuBuilder, ConfigUtils.getColorFromAttribute(getContext(), R.attr.colorOnSurface));
-
 			if (BallotUtil.canViewMatrix(ballotModel, identity)) {
 				menuBuilder.findItem(R.id.menu_ballot_results).setTitle(ballotModel.getState() == BallotModel.State.CLOSED ? R.string.ballot_result_final : R.string.ballot_result_intermediate);
 			}
@@ -414,8 +412,7 @@ public class OpenBallotNoticeView extends ConstraintLayout implements DefaultLif
 				menuBuilder.removeItem(R.id.menu_ballot_close);
 			}
 
-			Context wrapper = new ContextThemeWrapper(getContext(), R.style.AppBaseTheme);
-			MenuPopupHelper optionsMenu = new MenuPopupHelper(wrapper, menuBuilder, v);
+			MenuPopupHelper optionsMenu = new MenuPopupHelper(getContext(), menuBuilder, v);
 			optionsMenu.setForceShowIcon(true);
 			optionsMenu.show();
 		}

+ 5 - 3
domain/src/main/java/ch/threema/domain/protocol/connection/BaseServerConnectionProvider.kt

@@ -24,6 +24,7 @@ package ch.threema.domain.protocol.connection
 import ch.threema.domain.protocol.connection.csp.CspConnectionConfiguration
 import ch.threema.domain.protocol.connection.csp.CspConnectionImpl
 import ch.threema.domain.protocol.connection.csp.CspControllers
+import ch.threema.domain.protocol.connection.csp.socket.ChatServerAddressProvider
 import ch.threema.domain.protocol.connection.csp.socket.ChatServerAddressProviderImpl
 import ch.threema.domain.protocol.connection.csp.socket.CspSocket
 import ch.threema.domain.protocol.connection.d2m.D2mConnectionConfiguration
@@ -110,8 +111,10 @@ object BaseServerConnectionProvider {
     private fun createCspConnection(
         configuration: CspConnectionConfiguration
     ): ServerConnection {
+        val chatServerAddressProvider = ChatServerAddressProviderImpl(configuration)
+
         val dependencyProvider = ServerConnectionDependencyProvider {
-            createCspDependencies(it, configuration)
+            createCspDependencies(it, configuration, chatServerAddressProvider)
         }
 
         return CspConnectionImpl(dependencyProvider)
@@ -120,11 +123,10 @@ object BaseServerConnectionProvider {
     private fun createCspDependencies(
         connection: ServerConnection,
         configuration: CspConnectionConfiguration,
+        chatServerAddressProvider: ChatServerAddressProvider
     ): ServerConnectionDependencies {
         val controllers = CspControllers(configuration)
 
-        val chatServerAddressProvider = ChatServerAddressProviderImpl(configuration)
-
         val socket = CspSocket(
             configuration.socketFactory,
             chatServerAddressProvider,