From a786e3df962030caf28f8eaa58c8d071b3247aef Mon Sep 17 00:00:00 2001 From: caneleex Date: Mon, 24 Jan 2022 23:01:21 +0100 Subject: [PATCH] add support for the filler category (#63) --- .../SponsorBlockPreferenceFragment.java | 2 +- .../pl/jakubweg/SponsorBlockSettings.java | 31 ++++++++++--------- app/src/main/res/values/strings.xml | 3 ++ 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java b/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java index 4b2d047..b402359 100644 --- a/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java +++ b/app/src/main/java/pl/jakubweg/SponsorBlockPreferenceFragment.java @@ -163,7 +163,7 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment implement preference.setTitle(segmentInfo.getTitleWithDot()); preference.setSummary(segmentInfo.description.toString()); preference.setKey(segmentInfo.key); - preference.setDefaultValue(defaultValue); + preference.setDefaultValue(segmentInfo.behaviour.key); preference.setEntries(entries); preference.setEntryValues(entryValues); diff --git a/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java b/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java index 0ded1b6..9bdd5f4 100644 --- a/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java +++ b/app/src/main/java/pl/jakubweg/SponsorBlockSettings.java @@ -102,9 +102,7 @@ public class SponsorBlockSettings { SegmentBehaviour behaviour = null; String value = preferences.getString(segment.key, null); - if (value == null) - behaviour = DefaultBehaviour; - else { + if (value != null) { for (SegmentBehaviour possibleBehaviour : possibleBehaviours) { if (possibleBehaviour.key.equals(value)) { behaviour = possibleBehaviour; @@ -112,10 +110,13 @@ public class SponsorBlockSettings { } } } - if (behaviour == null) - behaviour = DefaultBehaviour; + if (behaviour != null) { + segment.behaviour = behaviour; + } + else { + behaviour = segment.behaviour; + } - segment.behaviour = behaviour; if (behaviour.showOnTimeBar && segment != SegmentInfo.UNSUBMITTED) enabledCategories.add(segment.key); } @@ -185,13 +186,14 @@ public class SponsorBlockSettings { } public enum SegmentInfo { - SPONSOR("sponsor", sf("segments_sponsor"), sf("skipped_sponsor"), sf("segments_sponsor_sum"), null, 0xFF00d400), - INTRO("intro", sf("segments_intermission"), sf("skipped_intermission"), sf("segments_intermission_sum"), null, 0xFF00ffff), - OUTRO("outro", sf("segments_endcards"), sf("skipped_endcard"), sf("segments_endcards_sum"), null, 0xFF0202ed), - INTERACTION("interaction", sf("segments_subscribe"), sf("skipped_subscribe"), sf("segments_subscribe_sum"), null, 0xFFcc00ff), - SELF_PROMO("selfpromo", sf("segments_selfpromo"), sf("skipped_selfpromo"), sf("segments_selfpromo_sum"), null, 0xFFffff00), - MUSIC_OFFTOPIC("music_offtopic", sf("segments_nomusic"), sf("skipped_nomusic"), sf("segments_nomusic_sum"), null, 0xFFff9900), - PREVIEW("preview", sf("segments_preview"), sf("skipped_preview"), sf("segments_preview_sum"), null, 0xFF008fd6), + SPONSOR("sponsor", sf("segments_sponsor"), sf("skipped_sponsor"), sf("segments_sponsor_sum"), DefaultBehaviour, 0xFF00d400), + INTRO("intro", sf("segments_intermission"), sf("skipped_intermission"), sf("segments_intermission_sum"), DefaultBehaviour, 0xFF00ffff), + OUTRO("outro", sf("segments_endcards"), sf("skipped_endcard"), sf("segments_endcards_sum"), DefaultBehaviour, 0xFF0202ed), + INTERACTION("interaction", sf("segments_subscribe"), sf("skipped_subscribe"), sf("segments_subscribe_sum"), DefaultBehaviour, 0xFFcc00ff), + SELF_PROMO("selfpromo", sf("segments_selfpromo"), sf("skipped_selfpromo"), sf("segments_selfpromo_sum"), DefaultBehaviour, 0xFFffff00), + MUSIC_OFFTOPIC("music_offtopic", sf("segments_nomusic"), sf("skipped_nomusic"), sf("segments_nomusic_sum"), DefaultBehaviour, 0xFFff9900), + PREVIEW("preview", sf("segments_preview"), sf("skipped_preview"), sf("segments_preview_sum"), DefaultBehaviour, 0xFF008fd6), + FILLER("filler", sf("segments_filler"), sf("skipped_filler"), sf("segments_filler_sum"), SegmentBehaviour.IGNORE, 0xFF7300FF), UNSUBMITTED("unsubmitted", StringRef.empty, sf("skipped_unsubmitted"), StringRef.empty, SegmentBehaviour.SKIP_AUTOMATICALLY, 0xFFFFFFFF); private static final SegmentInfo[] mValuesWithoutUnsubmitted = new SegmentInfo[]{ @@ -201,7 +203,8 @@ public class SponsorBlockSettings { INTERACTION, SELF_PROMO, MUSIC_OFFTOPIC, - PREVIEW + PREVIEW, + FILLER }; private static final Map mValuesMap = new HashMap<>(values().length); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a2ea7ed..a4da718 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -175,6 +175,8 @@ Similar to "sponsor" except for unpaid or self promotion. This includes sections about merchandise, donations, or information about who they collaborated with Music: Non-Music Section Only for use in music videos. This includes introductions or outros in music videos + Filler/Tangent + Tangential scenes added only for filler or humor that are not required to understand the main content of the video. This should not include segments providing context or background details Skipped a sponsor segment Skipped sponsor Skipped intro @@ -183,6 +185,7 @@ Skipped self promotion Skipped silence Skipped preview + Skipped filler Skipped unsubmitted segment Skip automatically Show a skip button