mirror of
https://codeberg.org/tom79/Fedilab.git
synced 2024-12-23 01:00:04 +02:00
Fix some crashes
This commit is contained in:
parent
a9f39ee1c6
commit
d30175d372
2 changed files with 12 additions and 8 deletions
|
@ -161,13 +161,15 @@ public class SpannableHelper {
|
||||||
while (matcherALink.find()) {
|
while (matcherALink.find()) {
|
||||||
int matchStart = matcherALink.start() - offSetTruncate;
|
int matchStart = matcherALink.start() - offSetTruncate;
|
||||||
int matchEnd = matchStart + matcherALink.group().length();
|
int matchEnd = matchStart + matcherALink.group().length();
|
||||||
//Get real URL
|
|
||||||
/*if (matcherALink.start(1) > matcherALink.end(1) || matcherALink.end() > content.length()) {
|
|
||||||
continue;
|
|
||||||
}*/
|
|
||||||
final String url = content.toString().substring(matchStart, matchEnd);
|
final String url = content.toString().substring(matchStart, matchEnd);
|
||||||
String newURL = Helper.transformURL(context, url);
|
String newURL = Helper.transformURL(context, url);
|
||||||
|
//If URL has been transformed
|
||||||
|
if (newURL.compareTo(url) != 0) {
|
||||||
content.replace(matchStart, matchEnd, newURL);
|
content.replace(matchStart, matchEnd, newURL);
|
||||||
|
offSetTruncate += (newURL.length() - url.length());
|
||||||
|
matchEnd = matchStart + newURL.length();
|
||||||
|
}
|
||||||
//Truncate URL if needed
|
//Truncate URL if needed
|
||||||
//TODO: add an option to disable truncated URLs
|
//TODO: add an option to disable truncated URLs
|
||||||
String urlText = newURL;
|
String urlText = newURL;
|
||||||
|
@ -177,8 +179,6 @@ public class SpannableHelper {
|
||||||
content.replace(matchStart, matchEnd, urlText);
|
content.replace(matchStart, matchEnd, urlText);
|
||||||
matchEnd = matchStart + 31;
|
matchEnd = matchStart + 31;
|
||||||
offSetTruncate += (newURL.length() - urlText.length());
|
offSetTruncate += (newURL.length() - urlText.length());
|
||||||
} else {
|
|
||||||
matchEnd = matchStart + (newURL.length());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!urlText.startsWith("http")) {
|
if (!urlText.startsWith("http")) {
|
||||||
|
|
|
@ -19,6 +19,8 @@ import android.annotation.SuppressLint;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
|
import android.os.Handler;
|
||||||
|
import android.os.Looper;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
@ -169,7 +171,9 @@ public class ConversationAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
|
||||||
holder.timer.scheduleAtFixedRate(new TimerTask() {
|
holder.timer.scheduleAtFixedRate(new TimerTask() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
holder.binding.statusContent.invalidate();
|
Handler mainHandler = new Handler(Looper.getMainLooper());
|
||||||
|
Runnable myRunnable = () -> holder.binding.statusContent.invalidate();
|
||||||
|
mainHandler.post(myRunnable);
|
||||||
}
|
}
|
||||||
}, 100, 100);
|
}, 100, 100);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue