diff --git a/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java b/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java
index 595e001d..20990e4c 100644
--- a/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java
+++ b/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java
@@ -18,7 +18,6 @@ import android.preference.SwitchPreference;
import android.text.InputType;
import android.widget.Toast;
-import java.io.File;
import java.util.ArrayList;
import static pl.jakubweg.SponsorBlockSettings.DefaultBehaviour;
@@ -31,10 +30,10 @@ import static pl.jakubweg.SponsorBlockSettings.PREFERENCES_KEY_UUID;
import static pl.jakubweg.SponsorBlockSettings.PREFERENCES_NAME;
import static pl.jakubweg.SponsorBlockSettings.adjustNewSegmentMillis;
import static pl.jakubweg.SponsorBlockSettings.countSkips;
-import static pl.jakubweg.SponsorBlockSettings.getPreferences;
import static pl.jakubweg.SponsorBlockSettings.setSeenGuidelines;
import static pl.jakubweg.SponsorBlockSettings.showToastWhenSkippedAutomatically;
import static pl.jakubweg.SponsorBlockSettings.uuid;
+import static pl.jakubweg.StringRef.sf;
import static pl.jakubweg.StringRef.str;
@@ -155,7 +154,16 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment implement
preference.setDefaultValue(defaultValue);
preference.setEntries(entries);
preference.setEntryValues(entryValues);
+
+ EditTextPreference colorPreference = new EditTextPreference(context);
+ colorPreference.setTitle("Set " + segmentInfo.title + " color");
+ colorPreference.getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
+ colorPreference.setKey(segmentInfo.key + "_color");
+ colorPreference.setDefaultValue(segmentInfo.color);
+ preferencesToDisableWhenSBDisabled.add(colorPreference);
+
category.addPreference(preference);
+ category.addPreference(colorPreference);
}
}
diff --git a/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java b/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java
index 27b1939f..47509f0b 100644
--- a/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java
+++ b/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java
@@ -7,7 +7,6 @@ import android.text.Html;
import android.text.TextUtils;
import android.util.Log;
-import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
@@ -108,6 +107,9 @@ public class SponsorBlockSettings {
segment.behaviour = behaviour;
if (behaviour.showOnTimeBar)
enabledCategories.add(segment.key);
+
+ String tmp = preferences.getString(segment.key + "_color", String.valueOf(segment.color));
+ segment.setColor(Integer.parseInt(tmp));
}
//"[%22sponsor%22,%22outro%22,%22music_offtopic%22,%22intro%22,%22selfpromo%22,%22interaction%22]";
@@ -183,8 +185,8 @@ public class SponsorBlockSettings {
public final StringRef title;
public final StringRef skipMessage;
public final StringRef description;
- public final int color;
public final Paint paint;
+ public int color;
public SegmentBehaviour behaviour;
private CharSequence lazyTitleWithDot;
@@ -201,8 +203,7 @@ public class SponsorBlockSettings {
this.description = description;
this.behaviour = behaviour;
this.color = color & 0xFFFFFF;
- paint = new Paint();
- paint.setColor(color);
+ this.paint = new Paint();
}
public static SegmentInfo[] valuesWithoutPreview() {
@@ -213,9 +214,15 @@ public class SponsorBlockSettings {
return mValuesMap.get(key);
}
+ public void setColor(int color) {
+ this.color = color;
+ paint.setColor(color);
+ paint.setAlpha(255);
+ }
+
public CharSequence getTitleWithDot() {
return (lazyTitleWithDot == null) ?
- lazyTitleWithDot = Html.fromHtml(String.format("⬤ %s", color, title))
+ lazyTitleWithDot = Html.fromHtml(String.format("⬤ %s", this.color, title))
: lazyTitleWithDot;
}
}