diff --git a/src/main/java/eu/siacs/conversations/Config.java b/src/main/java/eu/siacs/conversations/Config.java index c73da59e309f139b3cc80c28b839421d5cae25ff..c4fe28d9821115201f33aedbce3c2071c1636c08 100644 --- a/src/main/java/eu/siacs/conversations/Config.java +++ b/src/main/java/eu/siacs/conversations/Config.java @@ -76,6 +76,8 @@ public final class Config { public static final int REFRESH_UI_INTERVAL = 500; + public static final int MAX_DISPLAY_MESSAGE_CHARS = 5 * 1024; + public static final boolean DISABLE_PROXY_LOOKUP = false; //useful to debug ibb public static final boolean DISABLE_HTTP_UPLOAD = false; public static final boolean DISABLE_STRING_PREP = false; // setting to true might increase startup performance diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java index 74bfb491a531bd70494aeac81c46d9263e6ed7ba..32646a92dd96847b434d960c65ea7203172b0f7e 100644 --- a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java +++ b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java @@ -19,6 +19,7 @@ import android.text.style.RelativeSizeSpan; import android.text.style.StyleSpan; import android.text.util.Linkify; import android.util.DisplayMetrics; +import android.util.Log; import android.util.Patterns; import android.view.View; import android.view.View.OnClickListener; @@ -39,6 +40,7 @@ import java.util.regex.MatchResult; import java.util.regex.Matcher; import java.util.regex.Pattern; +import eu.siacs.conversations.Config; import eu.siacs.conversations.R; import eu.siacs.conversations.crypto.axolotl.XmppAxolotlSession; import eu.siacs.conversations.entities.Account; @@ -308,6 +310,10 @@ public class MessageAdapter extends ArrayAdapter { } catch (ArrayIndexOutOfBoundsException e) { body = message.getMergedBody(); } + if (body.length() > Config.MAX_DISPLAY_MESSAGE_CHARS) { + Log.d(Config.LOGTAG,"not showing complete message of length "+body.length()); + body = body.substring(0, Config.MAX_DISPLAY_MESSAGE_CHARS); + } final SpannableString formattedBody = new SpannableString(body); int i = body.indexOf(Message.MERGE_SEPARATOR); while(i >= 0) { diff --git a/src/main/res/layout/message_received.xml b/src/main/res/layout/message_received.xml index e720a6ff25ca06d15b3f3763a7103c74b4113e91..466dd045ad2bb8dbe457e9bf3dd9472d6ceedc68 100644 --- a/src/main/res/layout/message_received.xml +++ b/src/main/res/layout/message_received.xml @@ -53,7 +53,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:autoLink="web" - android:maxLines="256" android:textColorLink="@color/white" android:textColor="@color/white" android:textColorHighlight="@color/grey800" diff --git a/src/main/res/layout/message_sent.xml b/src/main/res/layout/message_sent.xml index be530c5fe3384e3b8d8f03e756e772ce73389d9c..fc68c389464ed7b07b36569e491e9ebde89177a1 100644 --- a/src/main/res/layout/message_sent.xml +++ b/src/main/res/layout/message_sent.xml @@ -54,7 +54,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:autoLink="web" - android:maxLines="256" android:textColorLink="@color/black87" android:textColor="@color/black87" android:textColorHighlight="@color/grey500"