summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/mastodon/helper
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/mastodon/helper')
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/helper/ComposeHelper.java6
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java14
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java20
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/helper/ThemeHelper.java6
4 files changed, 35 insertions, 11 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/ComposeHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/ComposeHelper.java
index 230e186f2..57de14a38 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/helper/ComposeHelper.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/helper/ComposeHelper.java
@@ -14,17 +14,15 @@ package app.fedilab.android.mastodon.helper;
* You should have received a copy of the GNU General Public License along with Fedilab; if not,
* see <http://www.gnu.org/licenses>. */
-import static app.fedilab.android.mastodon.helper.Helper.mentionLongPattern;
-import static app.fedilab.android.mastodon.helper.Helper.mentionPattern;
+
import static app.fedilab.android.mastodon.helper.Helper.mentionPatternALL;
-import static app.fedilab.android.mastodon.helper.MastodonHelper.countWithEmoji;
import android.util.Patterns;
import java.util.ArrayList;
import java.util.regex.Matcher;
-import app.fedilab.android.mastodon.ui.drawer.ComposeAdapter;
+
public class ComposeHelper {
diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java
index 940f587d9..b2069db7c 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java
@@ -580,6 +580,20 @@ public class Helper {
}
/**
+ * Convert a date in String
+ *
+ * @param date Date
+ * @return String
+ */
+ public static String mediumDateToString(Date date) {
+ if (date == null) {
+ date = new Date();
+ }
+ DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, Locale.getDefault());
+ return df.format(date);
+ }
+
+ /**
* Convert a date in String -> format yyyy-MM-dd HH:mm:ss
*
* @param date Date
diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java
index 6f65eaa69..de58d977a 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java
@@ -16,6 +16,7 @@ package app.fedilab.android.mastodon.helper;
import static app.fedilab.android.BaseMainActivity.currentAccount;
+import static app.fedilab.android.BaseMainActivity.currentNightMode;
import android.app.Activity;
import android.content.ClipData;
@@ -104,6 +105,7 @@ public class SpannableHelper {
public static final String CLICKABLE_SPAN = "CLICKABLE_SPAN";
private static int linkColor;
+ private static boolean underlineLinks;
public static Spannable convert(Context context, String text,
Status status, Account account, Announcement announcement,
@@ -112,9 +114,9 @@ public class SpannableHelper {
return null;
}
SharedPreferences sharedpreferences = PreferenceManager.getDefaultSharedPreferences(context);
- int currentNightMode = context.getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
boolean customLight = sharedpreferences.getBoolean(context.getString(R.string.SET_CUSTOMIZE_LIGHT_COLORS), false);
boolean customDark = sharedpreferences.getBoolean(context.getString(R.string.SET_CUSTOMIZE_DARK_COLORS), false);
+ underlineLinks = sharedpreferences.getBoolean(context.getString(R.string.SET_UNDERLINE_CLICKABLE), false);
int link_color;
if (currentNightMode == Configuration.UI_MODE_NIGHT_NO && customLight) {
link_color = sharedpreferences.getInt(context.getString(R.string.SET_LIGHT_LINK), -1);
@@ -309,7 +311,9 @@ public class SpannableHelper {
@Override
public void updateDrawState(@NonNull TextPaint ds) {
super.updateDrawState(ds);
- ds.setUnderlineText(status != null && status.underlined);
+ if(!underlineLinks) {
+ ds.setUnderlineText(status != null && status.underlined);
+ }
if (linkColor != -1) {
ds.setColor(linkColor);
}
@@ -599,7 +603,9 @@ public class SpannableHelper {
@Override
public void updateDrawState(@NonNull TextPaint ds) {
super.updateDrawState(ds);
- ds.setUnderlineText(status != null && status.underlined);
+ if(!underlineLinks) {
+ ds.setUnderlineText(status != null && status.underlined);
+ }
if (linkColor != -1) {
ds.setColor(linkColor);
}
@@ -744,7 +750,9 @@ public class SpannableHelper {
@Override
public void updateDrawState(@NonNull TextPaint ds) {
super.updateDrawState(ds);
- ds.setUnderlineText(status != null && status.underlined);
+ if(!underlineLinks) {
+ ds.setUnderlineText(status != null && status.underlined);
+ }
if (linkColor != -1) {
ds.setColor(linkColor);
}
@@ -891,7 +899,9 @@ public class SpannableHelper {
@Override
public void updateDrawState(@NonNull TextPaint ds) {
super.updateDrawState(ds);
- ds.setUnderlineText(false);
+ if(!underlineLinks) {
+ ds.setUnderlineText(false);
+ }
if (linkColor != -1) {
ds.setColor(linkColor);
}
diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/ThemeHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/ThemeHelper.java
index be9ebd975..51d1b8d07 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/helper/ThemeHelper.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/helper/ThemeHelper.java
@@ -16,6 +16,7 @@ package app.fedilab.android.mastodon.helper;
import static android.content.Context.WINDOW_SERVICE;
import static app.fedilab.android.BaseMainActivity.currentInstance;
+import static app.fedilab.android.BaseMainActivity.currentNightMode;
import static app.fedilab.android.BaseMainActivity.currentUserID;
import android.app.Activity;
@@ -274,7 +275,7 @@ public class ThemeHelper {
public static void switchTo(String themePref) {
if (themes.LIGHT.name().equals(themePref) || themes.SOLARIZED_LIGHT.name().equals(themePref)) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
- } else if (themes.DARK.name().equals(themePref) || themes.SOLARIZED_DARK.name().equals(themePref)) {
+ } else if (themes.DARK.name().equals(themePref) || themes.SOLARIZED_DARK.name().equals(themePref) || themes.DRACULA.name().equals(themePref) || themes.BLACK.name().equals(themePref)) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
} else {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
@@ -286,7 +287,6 @@ public class ThemeHelper {
}
public static void applyThemeColor(Activity activity) {
- int currentNightMode = activity.getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
final SharedPreferences sharedpreferences = PreferenceManager.getDefaultSharedPreferences(activity);
boolean dynamicColor = sharedpreferences.getBoolean(activity.getString(R.string.SET_DYNAMICCOLOR), false);
boolean customAccentEnabled = sharedpreferences.getBoolean(activity.getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false);
@@ -314,6 +314,8 @@ public class ThemeHelper {
public enum themes {
LIGHT,
DARK,
+ BLACK,
+ DRACULA,
SYSTEM,
SOLARIZED_LIGHT,
SOLARIZED_DARK