From 8c61561d6375cfad3571cea98013b549ed6ecd6b Mon Sep 17 00:00:00 2001 From: Vu Hoan Huy <43563783+d4rkk3y@users.noreply.github.com> Date: Fri, 21 Jul 2023 00:22:07 +0700 Subject: [PATCH 1/5] fix(Tiktok - Settings): check for null when opening ads settings (#443) --- .../java/app/revanced/tiktok/settingsmenu/SettingsMenu.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/app/revanced/tiktok/settingsmenu/SettingsMenu.java b/app/src/main/java/app/revanced/tiktok/settingsmenu/SettingsMenu.java index f79d16b7..fc43153b 100644 --- a/app/src/main/java/app/revanced/tiktok/settingsmenu/SettingsMenu.java +++ b/app/src/main/java/app/revanced/tiktok/settingsmenu/SettingsMenu.java @@ -2,6 +2,7 @@ package app.revanced.tiktok.settingsmenu; import android.content.Context; import android.content.Intent; +import android.os.Bundle; import android.preference.PreferenceFragment; import android.view.View; import android.widget.FrameLayout; @@ -35,7 +36,8 @@ public class SettingsMenu { * @return Whether the settings menu should be initialized. */ public static boolean initializeSettings(AdPersonalizationActivity base) { - if (!base.getIntent().getExtras().getBoolean("revanced", false)) return false; + Bundle extras = base.getIntent().getExtras(); + if (extras != null && !extras.getBoolean("revanced", false)) return false; SettingsStatus.load(); From dc591ac7edaece3df8aff5b5211cbdff3ac26f6f Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 20 Jul 2023 17:24:01 +0000 Subject: [PATCH 2/5] chore(release): 0.113.1-dev.1 [skip ci] ## [0.113.1-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v0.113.0...v0.113.1-dev.1) (2023-07-20) ### Bug Fixes * **Tiktok - Settings:** check for null when opening ads settings ([#443](https://github.com/ReVanced/revanced-integrations/issues/443)) ([8c61561](https://github.com/ReVanced/revanced-integrations/commit/8c61561d6375cfad3571cea98013b549ed6ecd6b)) --- CHANGELOG.md | 7 +++++++ gradle.properties | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2d99fde5..a5b7fbe8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [0.113.1-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v0.113.0...v0.113.1-dev.1) (2023-07-20) + + +### Bug Fixes + +* **Tiktok - Settings:** check for null when opening ads settings ([#443](https://github.com/ReVanced/revanced-integrations/issues/443)) ([8c61561](https://github.com/ReVanced/revanced-integrations/commit/8c61561d6375cfad3571cea98013b549ed6ecd6b)) + # [0.113.0](https://github.com/ReVanced/revanced-integrations/compare/v0.112.0...v0.113.0) (2023-07-20) diff --git a/gradle.properties b/gradle.properties index 2d7fc94e..3c9ad2a2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ org.gradle.parallel = true org.gradle.caching = true android.useAndroidX = true -version = 0.113.0 +version = 0.113.1-dev.1 From 2a784a47d18da90ce23fcd527eef1f6e2d8e166d Mon Sep 17 00:00:00 2001 From: LisoUseInAIKyrios <118716522+LisoUseInAIKyrios@users.noreply.github.com> Date: Thu, 20 Jul 2023 21:26:50 +0400 Subject: [PATCH 3/5] feat(youtube/theme): add a switch to enable/disable custom seekbar color (#442) --- .../patches/theme/ProgressBarDrawable.java | 3 +- .../patches/theme/SeekbarColorPatch.java | 42 +++++++++++-------- .../integrations/settings/SettingsEnum.java | 17 ++++++-- 3 files changed, 40 insertions(+), 22 deletions(-) diff --git a/app/src/main/java/app/revanced/integrations/patches/theme/ProgressBarDrawable.java b/app/src/main/java/app/revanced/integrations/patches/theme/ProgressBarDrawable.java index 6050b514..28df3360 100644 --- a/app/src/main/java/app/revanced/integrations/patches/theme/ProgressBarDrawable.java +++ b/app/src/main/java/app/revanced/integrations/patches/theme/ProgressBarDrawable.java @@ -18,6 +18,7 @@ import app.revanced.integrations.settings.SettingsEnum; */ public class ProgressBarDrawable extends Drawable { + private final Paint paint = new Paint(); @Override @@ -25,7 +26,7 @@ public class ProgressBarDrawable extends Drawable { if (SettingsEnum.HIDE_SEEKBAR_THUMBNAIL.getBoolean()) { return; } - paint.setColor(SeekbarColorPatch.getCustomSeekbarColor()); + paint.setColor(SeekbarColorPatch.getSeekbarColor()); canvas.drawRect(getBounds(), paint); } diff --git a/app/src/main/java/app/revanced/integrations/patches/theme/SeekbarColorPatch.java b/app/src/main/java/app/revanced/integrations/patches/theme/SeekbarColorPatch.java index efedb5f4..942ff3c6 100644 --- a/app/src/main/java/app/revanced/integrations/patches/theme/SeekbarColorPatch.java +++ b/app/src/main/java/app/revanced/integrations/patches/theme/SeekbarColorPatch.java @@ -8,8 +8,10 @@ import app.revanced.integrations.utils.ReVancedUtils; public final class SeekbarColorPatch { + private static final boolean USE_SEEKBAR_CUSTOM_COLOR = SettingsEnum.SEEKBAR_CUSTOM_COLOR.getBoolean(); + /** - * Default color of seekbar. + * Default color of the seekbar. */ private static final int ORIGINAL_SEEKBAR_COLOR = 0xFFFF0000; @@ -19,9 +21,11 @@ public final class SeekbarColorPatch { private static final float ORIGINAL_SEEKBAR_COLOR_BRIGHTNESS; /** - * Color value of {@link SettingsEnum#SEEKBAR_COLOR} + * If {@link SettingsEnum#SEEKBAR_CUSTOM_COLOR} is enabled, + * this is the color value of {@link SettingsEnum#SEEKBAR_CUSTOM_COLOR_VALUE}. + * Otherwise this is {@link #ORIGINAL_SEEKBAR_COLOR}. */ - private static int customSeekbarColor; + private static int seekbarColor = ORIGINAL_SEEKBAR_COLOR; /** * Custom seekbar hue, saturation, and brightness values. @@ -33,22 +37,24 @@ public final class SeekbarColorPatch { Color.colorToHSV(ORIGINAL_SEEKBAR_COLOR, hsv); ORIGINAL_SEEKBAR_COLOR_BRIGHTNESS = hsv[2]; - loadCustomSeekbarColorHSV(); - } - - private static void loadCustomSeekbarColorHSV() { - try { - customSeekbarColor = Color.parseColor(SettingsEnum.SEEKBAR_COLOR.getString()); - Color.colorToHSV(customSeekbarColor, customSeekbarColorHSV); - } catch (Exception ex) { - ReVancedUtils.showToastShort("Invalid seekbar color value. Using default value."); - SettingsEnum.SEEKBAR_COLOR.saveValue(SettingsEnum.SEEKBAR_COLOR.defaultValue); - loadCustomSeekbarColorHSV(); + if (USE_SEEKBAR_CUSTOM_COLOR) { + loadCustomSeekbarColor(); } } - public static int getCustomSeekbarColor() { - return customSeekbarColor; + private static void loadCustomSeekbarColor() { + try { + seekbarColor = Color.parseColor(SettingsEnum.SEEKBAR_CUSTOM_COLOR_VALUE.getString()); + Color.colorToHSV(seekbarColor, customSeekbarColorHSV); + } catch (Exception ex) { + ReVancedUtils.showToastShort("Invalid seekbar color value. Using default value."); + SettingsEnum.SEEKBAR_CUSTOM_COLOR_VALUE.saveValue(SettingsEnum.SEEKBAR_CUSTOM_COLOR_VALUE.defaultValue); + loadCustomSeekbarColor(); + } + } + + public static int getSeekbarColor() { + return seekbarColor; } @@ -96,7 +102,7 @@ public final class SeekbarColorPatch { */ private static int getSeekbarColorValue(int originalColor) { try { - if (customSeekbarColor == ORIGINAL_SEEKBAR_COLOR) { + if (!USE_SEEKBAR_CUSTOM_COLOR || originalColor == seekbarColor) { return originalColor; // nothing to do } final int alphaDifference = Color.alpha(originalColor) - Color.alpha(ORIGINAL_SEEKBAR_COLOR); @@ -111,7 +117,7 @@ public final class SeekbarColorPatch { hsv[1] = customSeekbarColorHSV[1]; hsv[2] = clamp(customSeekbarColorHSV[2] + brightnessDifference, 0, 1); - final int replacementAlpha = clamp(Color.alpha(customSeekbarColor) + alphaDifference, 0, 255); + final int replacementAlpha = clamp(Color.alpha(seekbarColor) + alphaDifference, 0, 255); final int replacementColor = Color.HSVToColor(replacementAlpha, hsv); LogHelper.printDebug(() -> String.format("Original color: #%08X replacement color: #%08X", originalColor, replacementColor)); diff --git a/app/src/main/java/app/revanced/integrations/settings/SettingsEnum.java b/app/src/main/java/app/revanced/integrations/settings/SettingsEnum.java index 3e7097d9..0d632642 100644 --- a/app/src/main/java/app/revanced/integrations/settings/SettingsEnum.java +++ b/app/src/main/java/app/revanced/integrations/settings/SettingsEnum.java @@ -116,8 +116,8 @@ public enum SettingsEnum { HIDE_PLAYER_BUTTONS("revanced_hide_player_buttons", BOOLEAN, FALSE), HIDE_PLAYER_OVERLAY("revanced_hide_player_overlay", BOOLEAN, FALSE, true), HIDE_PREVIEW_COMMENT("revanced_hide_preview_comment", BOOLEAN, FALSE, true), - HIDE_SEEKBAR("revanced_hide_seekbar", BOOLEAN, FALSE, true), - HIDE_SEEKBAR_THUMBNAIL("revanced_hide_seekbar_thumbnail", BOOLEAN, FALSE, true), + HIDE_SEEKBAR("revanced_hide_seekbar", BOOLEAN, FALSE), + HIDE_SEEKBAR_THUMBNAIL("revanced_hide_seekbar_thumbnail", BOOLEAN, FALSE), HIDE_HOME_BUTTON("revanced_hide_home_button", BOOLEAN, FALSE, true), HIDE_SHORTS_BUTTON("revanced_hide_shorts_button", BOOLEAN, TRUE, true), HIDE_SUBSCRIPTIONS_BUTTON("revanced_hide_subscriptions_button", BOOLEAN, FALSE, true), @@ -130,7 +130,10 @@ public enum SettingsEnum { SPOOF_APP_VERSION_TARGET("revanced_spoof_app_version_target", STRING, "17.30.35", true, parents(SPOOF_APP_VERSION)), USE_TABLET_MINIPLAYER("revanced_tablet_miniplayer", BOOLEAN, FALSE, true), WIDE_SEARCHBAR("revanced_wide_searchbar", BOOLEAN, FALSE, true), - SEEKBAR_COLOR("revanced_seekbar_color", STRING, "#FF0000", true), + @Deprecated + DEPRECATED_SEEKBAR_COLOR("revanced_seekbar_color", STRING, "#FF0000"), // TODO: delete this + SEEKBAR_CUSTOM_COLOR("revanced_seekbar_custom_color", BOOLEAN, TRUE, true), + SEEKBAR_CUSTOM_COLOR_VALUE("revanced_seekbar_custom_color_value", STRING, "#FF0000", true, parents(SEEKBAR_CUSTOM_COLOR)), HIDE_FILTER_BAR_FEED_IN_FEED("revanced_hide_filter_bar_feed_in_feed", BOOLEAN, FALSE, true), HIDE_FILTER_BAR_FEED_IN_SEARCH("revanced_hide_filter_bar_feed_in_search", BOOLEAN, FALSE, true), HIDE_FILTER_BAR_FEED_IN_RELATED_VIDEOS("revanced_hide_filter_bar_feed_in_related_videos", BOOLEAN, FALSE, true), @@ -359,6 +362,14 @@ public enum SettingsEnum { // TODO: delete DEPRECATED_SHOW_OLD_VIDEO_QUALITY_MENU (When? anytime). migrateOldSettingToNew(DEPRECATED_SHOW_OLD_VIDEO_QUALITY_MENU, SHOW_OLD_VIDEO_QUALITY_MENU); + // TODO: delete this seekbar color migration code + String oldSeekbarColorValue = DEPRECATED_SEEKBAR_COLOR.getString(); + if (!oldSeekbarColorValue.equalsIgnoreCase((String) DEPRECATED_SEEKBAR_COLOR.defaultValue)) { + SEEKBAR_CUSTOM_COLOR_VALUE.saveValue(oldSeekbarColorValue); + SEEKBAR_CUSTOM_COLOR.saveValue(true); + DEPRECATED_SEEKBAR_COLOR.saveValue(DEPRECATED_SEEKBAR_COLOR.defaultValue); + } + // endregion } From e2f25cd5aeb67c4bfcaf47ccba4fbcfa7901fa0f Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 20 Jul 2023 17:28:49 +0000 Subject: [PATCH 4/5] chore(release): 0.114.0-dev.1 [skip ci] # [0.114.0-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v0.113.1-dev.1...v0.114.0-dev.1) (2023-07-20) ### Features * **youtube/theme:** add a switch to enable/disable custom seekbar color ([#442](https://github.com/ReVanced/revanced-integrations/issues/442)) ([2a784a4](https://github.com/ReVanced/revanced-integrations/commit/2a784a47d18da90ce23fcd527eef1f6e2d8e166d)) --- CHANGELOG.md | 7 +++++++ gradle.properties | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a5b7fbe8..57a8d050 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [0.114.0-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v0.113.1-dev.1...v0.114.0-dev.1) (2023-07-20) + + +### Features + +* **youtube/theme:** add a switch to enable/disable custom seekbar color ([#442](https://github.com/ReVanced/revanced-integrations/issues/442)) ([2a784a4](https://github.com/ReVanced/revanced-integrations/commit/2a784a47d18da90ce23fcd527eef1f6e2d8e166d)) + ## [0.113.1-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v0.113.0...v0.113.1-dev.1) (2023-07-20) diff --git a/gradle.properties b/gradle.properties index 3c9ad2a2..4f2340fe 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ org.gradle.parallel = true org.gradle.caching = true android.useAndroidX = true -version = 0.113.1-dev.1 +version = 0.114.0-dev.1 From e1011e42df4c28219b1ac18d34fb88becd667bf5 Mon Sep 17 00:00:00 2001 From: oSumAtrIX Date: Fri, 21 Jul 2023 16:58:00 +0200 Subject: [PATCH 5/5] ci: do not cache build directory --- .github/workflows/release.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7562538a..cab88c30 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,7 +30,6 @@ jobs: ${{ runner.home }}/.gradle/caches ${{ runner.home }}/.gradle/wrapper .gradle - build node_modules key: ${{ runner.os }}-gradle-npm-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'package-lock.json') }} - name: Setup Java @@ -38,7 +37,7 @@ jobs: - name: Build with Gradle env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: ./gradlew clean --no-daemon + run: ./gradlew build - name: Setup semantic-release run: npm install - name: Release