refactor: Migrate to Morphe patcher

BREAKING CHANGE: Patches are now migrated to Morphe patcher

Signed-off-by: Aaron Veil <70171475+anddea@users.noreply.github.com>
This commit is contained in:
Eric Ahn 2026-02-13 19:00:46 +03:00 committed by Aaron Veil
parent 3174510163
commit 44d12f217c
893 changed files with 11057 additions and 12959 deletions

View file

@ -34,7 +34,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# To update `README.md` and `patches.json`, the command `./gradlew generatePatchesFiles clean` should be used instead of the command `./gradlew build clean`
run: ./gradlew generatePatchesFiles clean
run: ./gradlew :patches:buildAndroid generatePatchesList clean
- name: Setup Node.js
uses: actions/setup-node@v6

48
.gitignore vendored
View file

@ -28,74 +28,28 @@ hs_err_pid*
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf
# Generated files
.idea/**/contentModel.xml
# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml
# Gradle
.idea/**/gradle.xml
.idea/**/libraries
# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
.idea/artifacts
.idea/compiler.xml
.idea/jarRepositories.xml
.idea/modules.xml
.idea/*.iml
.idea/modules
.idea*
*.iml
*.ipr
# CMake
cmake-build-*/
# Mongo Explorer plugin
.idea/**/mongoSettings.xml
# File-based project format
*.iws
# IntelliJ
out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
# Editor-based Rest Client
.idea/httpRequests
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
### Gradle template
.gradle
**/build/

9
.idea/.gitignore vendored
View file

@ -1,9 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/
/kotlinc.xml

View file

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
</component>
</project>

View file

@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GitToolBoxProjectSettings">
<option name="commitMessageIssueKeyValidationOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
<option name="commitMessageValidationEnabledOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
</component>
</project>

View file

@ -1,7 +0,0 @@
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="zulu-17" project-jdk-type="JavaSDK" />
</project>

View file

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CommitMessageInspectionProfile">
<profile version="1.0">
<inspection_tool class="CommitFormat" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="CommitNamingConvention" enabled="true" level="WARNING" enabled_by_default="true" />
</profile>
</component>
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View file

@ -15,8 +15,22 @@
}
],
"@semantic-release/release-notes-generator",
"@semantic-release/changelog",
[
"@MorpheApp/changelog", {
"releaseJson": {
"path": "patches-bundle.json",
"downloadUrlTemplate": "https://github.com/${owner}/${repo}/releases/download/v${version}/patches-${version}.mpp",
"signatureUrlTemplate": "https://github.com/${owner}/${repo}/releases/download/v${version}/patches-${version}.mpp.asc"
}
}
],
"gradle-semantic-release-plugin",
[
"@semantic-release/exec",
{
"prepareCmd": "jq '.version=\"${nextRelease.version}\"' patches-list.json > patches-list.json.tmp && mv patches-list.json.tmp patches-list.json"
}
],
[
"@semantic-release/git",
{
@ -24,7 +38,8 @@
"README.md",
"CHANGELOG.md",
"gradle.properties",
"patches.json",
"patches-bundle.json",
"patches-list.json"
],
"message": "chore: Release v${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
}
@ -34,20 +49,17 @@
{
"assets": [
{
"path": "patches/build/libs/patches-!(*sources*|*javadoc*).rvp?(.asc)"
},
{
"path": "patches.json"
},
"path": "patches/build/libs/patches-!(*sources*|*javadoc*).mpp?(.asc)"
}
],
successComment: false
"successComment": false
}
],
[
"@saithodev/semantic-release-backmerge",
{
backmergeBranches: [{"from": "main", "to": "dev"}],
clearWorkspace: true
"backmergeBranches": [{"from": "main", "to": "dev"}],
"clearWorkspace": true
}
]
]

View file

@ -0,0 +1,3 @@
plugins {
alias(libs.plugins.android.library) apply false
}

28
extensions/proguard-rules.pro vendored Normal file
View file

@ -0,0 +1,28 @@
## Combined all the proguard-rules.pro into this one file, because I kept running into issues with
## the separate ones.
-dontobfuscate
-dontoptimize
-keepattributes *
-keep class app.morphe.** {
*;
}
-keep class com.google.** {
*;
}
-keep class com.aurora.** {
*;
}
-keep class com.dragons.** {
*;
}
-keep class com.eclipsesource.v8.** {
*;
}
-keep class com.liskovsoft.** {
*;
}
## Rules for OkHttp. Copy pasted from https://github.com/square/okhttp
-dontwarn okhttp3.**
-dontwarn okio.**
-dontwarn javax.lang.model.element.Modifier

View file

@ -5,11 +5,11 @@ plugins {
}
extension {
name = "extensions/shared.rve"
name = "extensions/shared.mpe"
}
android {
namespace = "app.revanced.extension"
namespace = "app.morphe.extension"
compileSdk = 34
defaultConfig {
@ -49,6 +49,8 @@ dependencies {
implementation(libs.nanohttpd)
implementation(libs.protobuf.javalite)
implementation(libs.hiddenapi)
coreLibraryDesugaring(libs.desugar.jdk.libs)
compileOnly(project(":extensions:shared:stub"))
}

View file

@ -1,7 +1,7 @@
-dontobfuscate
-dontoptimize
-keepattributes *
-keep class app.revanced.** {
-keep class app.morphe.** {
*;
}
-keep class com.aurora.** {

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.patches.account;
package app.morphe.extension.music.patches.account;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import android.view.View;
import android.widget.TextView;
@ -11,7 +11,7 @@ import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import app.revanced.extension.music.settings.Settings;
import app.morphe.extension.music.settings.Settings;
@SuppressWarnings("unused")
public class AccountPatch {

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.patches.actionbar;
package app.morphe.extension.music.patches.actionbar;
import static app.revanced.extension.shared.utils.Utils.hideViewBy0dpUnderCondition;
import static app.revanced.extension.shared.utils.Utils.hideViewUnderCondition;
import static app.morphe.extension.shared.utils.Utils.hideViewBy0dpUnderCondition;
import static app.morphe.extension.shared.utils.Utils.hideViewUnderCondition;
import android.view.View;
@ -14,10 +14,10 @@ import org.apache.commons.lang3.StringUtils;
import java.util.Map;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.utils.VideoUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.PackageUtils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.utils.VideoUtils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.PackageUtils;
@SuppressWarnings({"unused", "deprecation"})
public class ActionBarPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.ads;
package app.morphe.extension.music.patches.ads;
import app.revanced.extension.music.settings.Settings;
import app.morphe.extension.music.settings.Settings;
@SuppressWarnings("unused")
public class MusicAdsPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.ads;
package app.morphe.extension.music.patches.ads;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Dialog;
import android.content.DialogInterface;
@ -9,10 +9,10 @@ import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.settings.BaseSettings;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.settings.BaseSettings;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class PremiumPromotionPatch {

View file

@ -1,15 +1,15 @@
package app.revanced.extension.music.patches.ads;
package app.morphe.extension.music.patches.ads;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.NavigationBar;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.NavigationBar;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class PremiumRenewalPatch {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroup;
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroupList;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.ByteArrayFilterGroup;
import app.morphe.extension.shared.patches.components.ByteArrayFilterGroupList;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
@SuppressWarnings("unused")
public final class ActionButtonsFilter extends Filter {

View file

@ -1,9 +1,9 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroup;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.ByteArrayFilterGroup;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
@SuppressWarnings("unused")
public final class AdsFilter extends Filter {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import androidx.annotation.NonNull;
@ -12,12 +12,12 @@ import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.revanced.extension.shared.utils.ByteTrieSearch;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.shared.utils.ByteTrieSearch;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Allows custom filtering using a path and optionally a proto buffer string.

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
@SuppressWarnings("unused")
public final class LayoutComponentsFilter extends Filter {

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
@SuppressWarnings({"FieldCanBeLocal", "unused"})
public final class PlayerComponentsFilter extends Filter {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroup;
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroupList;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.ByteArrayFilterGroup;
import app.morphe.extension.shared.patches.components.ByteArrayFilterGroupList;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
@SuppressWarnings("unused")
public final class PlayerFlyoutMenuFilter extends Filter {

View file

@ -1,9 +1,9 @@
package app.revanced.extension.youtube.patches.components;
package app.morphe.extension.music.patches.components;
import app.revanced.extension.shared.patches.components.Filter;
import app.revanced.extension.shared.patches.components.StringFilterGroup;
import app.revanced.extension.youtube.patches.misc.ShareSheetPatch;
import app.revanced.extension.youtube.settings.Settings;
import app.morphe.extension.music.patches.misc.ShareSheetPatch;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.components.Filter;
import app.morphe.extension.shared.patches.components.StringFilterGroup;
/**
* LithoFilter for {@link ShareSheetPatch}.

View file

@ -1,9 +1,9 @@
package app.revanced.extension.music.patches.flyout;
package app.morphe.extension.music.patches.flyout;
import static app.revanced.extension.shared.utils.ResourceUtils.getIdentifier;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.clickView;
import static app.revanced.extension.shared.utils.Utils.runOnMainThreadDelayed;
import static app.morphe.extension.shared.utils.ResourceUtils.getIdentifier;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.clickView;
import static app.morphe.extension.shared.utils.Utils.runOnMainThreadDelayed;
import android.graphics.Color;
import android.graphics.ColorFilter;
@ -19,12 +19,12 @@ import androidx.annotation.Nullable;
import java.lang.ref.WeakReference;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.VideoType;
import app.revanced.extension.music.utils.VideoUtils;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.ResourceUtils.ResourceType;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.VideoType;
import app.morphe.extension.music.utils.VideoUtils;
import app.morphe.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.ResourceUtils.ResourceType;
@SuppressWarnings("unused")
public class FlyoutPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.general;
package app.morphe.extension.music.patches.general;
import app.revanced.extension.music.settings.Settings;
import app.morphe.extension.music.settings.Settings;
@SuppressWarnings("unused")
public class CairoSplashAnimationPatch {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.patches.general;
package app.morphe.extension.music.patches.general;
import android.app.Activity;
import android.content.Intent;
@ -7,10 +7,10 @@ import androidx.annotation.NonNull;
import org.apache.commons.lang3.StringUtils;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.utils.ExtendedUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.utils.ExtendedUtils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.ResourceUtils;
@SuppressWarnings("unused")
public final class ChangeStartPagePatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.general;
package app.morphe.extension.music.patches.general;
import static app.revanced.extension.shared.utils.Utils.hideViewBy0dpUnderCondition;
import static app.morphe.extension.shared.utils.Utils.hideViewBy0dpUnderCondition;
import android.app.AlertDialog;
import android.view.View;
@ -13,9 +13,9 @@ import android.widget.LinearLayout;
import org.apache.commons.lang3.StringUtils;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.utils.PackageUtils;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.utils.PackageUtils;
import app.morphe.extension.shared.utils.ResourceUtils;
@SuppressWarnings("unused")
public class GeneralPatch {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.patches.general;
package app.morphe.extension.music.patches.general;
import androidx.preference.PreferenceScreen;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.patches.BaseSettingsMenuPatch;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.patches.BaseSettingsMenuPatch;
import app.morphe.extension.shared.settings.BooleanSetting;
@SuppressWarnings("unused")
public final class SettingsMenuPatch extends BaseSettingsMenuPatch {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.patches.misc;
package app.morphe.extension.music.patches.misc;
import android.view.View;
@ -8,11 +8,11 @@ import androidx.annotation.NonNull;
import java.util.LinkedHashMap;
import java.util.Map;
import app.revanced.extension.music.patches.misc.requests.PlaylistRequest;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.VideoInformation;
import app.revanced.extension.music.utils.VideoUtils;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.music.patches.misc.requests.PlaylistRequest;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.VideoInformation;
import app.morphe.extension.music.utils.VideoUtils;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public class AlbumMusicVideoPatch {

View file

@ -1,13 +1,13 @@
package app.revanced.extension.music.patches.misc;
package app.morphe.extension.music.patches.misc;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import app.revanced.extension.music.patches.components.ShareSheetMenuFilter;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.patches.components.ShareSheetMenuFilter;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class ShareSheetPatch {

View file

@ -1,15 +1,15 @@
package app.revanced.extension.music.patches.misc.requests
package app.morphe.extension.music.patches.misc.requests
import androidx.annotation.GuardedBy
import app.revanced.extension.shared.innertube.client.YouTubeClient
import app.revanced.extension.shared.innertube.requests.InnerTubeRequestBody.createApplicationRequestBody
import app.revanced.extension.shared.innertube.requests.InnerTubeRequestBody.getInnerTubeResponseConnectionFromRoute
import app.revanced.extension.shared.innertube.requests.InnerTubeRoutes.GET_PLAYLIST_PAGE
import app.revanced.extension.shared.requests.Requester
import app.revanced.extension.shared.settings.AppLanguage
import app.revanced.extension.shared.utils.Logger
import app.revanced.extension.shared.utils.Utils
import app.revanced.extension.shared.utils.Utils.isSDKAbove
import app.morphe.extension.shared.innertube.client.YouTubeClient
import app.morphe.extension.shared.innertube.requests.InnerTubeRequestBody.createApplicationRequestBody
import app.morphe.extension.shared.innertube.requests.InnerTubeRequestBody.getInnerTubeResponseConnectionFromRoute
import app.morphe.extension.shared.innertube.requests.InnerTubeRoutes.GET_PLAYLIST_PAGE
import app.morphe.extension.shared.requests.Requester
import app.morphe.extension.shared.settings.AppLanguage
import app.morphe.extension.shared.utils.Logger
import app.morphe.extension.shared.utils.Utils
import app.morphe.extension.shared.utils.Utils.isSDKAbove
import org.json.JSONException
import org.json.JSONObject
import java.io.IOException

View file

@ -1,9 +1,9 @@
package app.revanced.extension.music.patches.navigation;
package app.morphe.extension.music.patches.navigation;
import static app.revanced.extension.music.utils.ExtendedUtils.IS_6_27_OR_GREATER;
import static app.revanced.extension.music.utils.ExtendedUtils.IS_8_29_OR_GREATER;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.hideViewUnderCondition;
import static app.morphe.extension.music.utils.ExtendedUtils.IS_6_27_OR_GREATER;
import static app.morphe.extension.music.utils.ExtendedUtils.IS_8_29_OR_GREATER;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.hideViewUnderCondition;
import android.graphics.Color;
import android.text.Spanned;
@ -17,12 +17,12 @@ import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.List;
import app.revanced.extension.music.patches.utils.PatchStatus;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.utils.ExtendedUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.patches.utils.PatchStatus;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.utils.ExtendedUtils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.ResourceUtils;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class NavigationPatch {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.patches.player;
package app.morphe.extension.music.patches.player;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.hideViewByRemovingFromParentUnderCondition;
import static app.revanced.extension.shared.utils.Utils.hideViewUnderCondition;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.revanced.extension.shared.utils.Utils.runOnMainThreadDelayed;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.hideViewByRemovingFromParentUnderCondition;
import static app.morphe.extension.shared.utils.Utils.hideViewUnderCondition;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.Utils.runOnMainThreadDelayed;
import android.graphics.Color;
import android.view.View;
@ -14,12 +14,12 @@ import org.apache.commons.lang3.ArrayUtils;
import java.lang.ref.WeakReference;
import java.util.Arrays;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.VideoType;
import app.revanced.extension.music.utils.VideoUtils;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.VideoType;
import app.morphe.extension.music.utils.VideoUtils;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings({"unused", "SpellCheckingInspection"})
public class PlayerPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
@ -11,7 +11,7 @@ import android.widget.ImageView;
import org.apache.commons.lang3.ArrayUtils;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.morphe.extension.shared.utils.ResourceUtils;
@SuppressWarnings("unused")
public class DrawableColorPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import static app.revanced.extension.music.utils.RestartUtils.showRestartDialog;
import static app.morphe.extension.music.utils.RestartUtils.showRestartDialog;
import android.app.Activity;
@ -9,9 +9,9 @@ import androidx.annotation.Nullable;
import java.lang.ref.WeakReference;
import app.revanced.extension.shared.settings.BaseSettings;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.settings.BaseSettings;
import app.morphe.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class InitializationPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import static app.revanced.extension.music.utils.ExtendedUtils.IS_7_25_OR_GREATER;
import static app.morphe.extension.music.utils.ExtendedUtils.IS_7_25_OR_GREATER;
@SuppressWarnings("unused")
public class PatchStatus {

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import androidx.annotation.Nullable;
import app.revanced.extension.music.shared.PlayerType;
import app.morphe.extension.music.shared.PlayerType;
@SuppressWarnings("unused")
public class PlayerTypeHookPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import static app.revanced.extension.shared.returnyoutubedislike.ReturnYouTubeDislike.Vote;
import static app.morphe.extension.shared.returnyoutubedislike.ReturnYouTubeDislike.Vote;
import android.text.SpannableString;
import android.text.Spanned;
@ -8,11 +8,11 @@ import android.text.Spanned;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import app.revanced.extension.music.returnyoutubedislike.ReturnYouTubeDislike;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.returnyoutubedislike.ReturnYouTubeDislike;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Handles all interaction of UI patch components.

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.patches.utils;
package app.morphe.extension.music.patches.utils;
import androidx.annotation.Nullable;
import app.revanced.extension.music.shared.VideoType;
import app.morphe.extension.music.shared.VideoType;
@SuppressWarnings("unused")
public class VideoTypeHookPatch {

View file

@ -1,14 +1,14 @@
package app.revanced.extension.music.patches.video;
package app.morphe.extension.music.patches.video;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import androidx.annotation.NonNull;
import java.util.Arrays;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class CustomPlaybackSpeedPatch {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.patches.video;
package app.morphe.extension.music.patches.video;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.showToastShort;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.showToastShort;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public class PlaybackSpeedPatch {

View file

@ -1,16 +1,16 @@
package app.revanced.extension.music.patches.video;
package app.morphe.extension.music.patches.video;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.Arrays;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.settings.IntegerSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.settings.IntegerSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
import j$.util.Optional;
@SuppressWarnings({"rawtypes", "unused", "UnnecessaryBoxing"})

View file

@ -1,9 +1,9 @@
package app.revanced.extension.music.returnyoutubedislike;
package app.morphe.extension.music.returnyoutubedislike;
import static app.revanced.extension.shared.returnyoutubedislike.ReturnYouTubeDislike.Vote;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.revanced.extension.shared.utils.Utils.newSpanUsingStylingOfAnotherSpan;
import static app.morphe.extension.shared.returnyoutubedislike.ReturnYouTubeDislike.Vote;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.Utils.newSpanUsingStylingOfAnotherSpan;
import android.graphics.Canvas;
import android.graphics.Paint;
@ -38,11 +38,11 @@ import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.returnyoutubedislike.requests.RYDVoteData;
import app.revanced.extension.shared.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.returnyoutubedislike.requests.RYDVoteData;
import app.morphe.extension.shared.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Because Litho creates spans using multiple threads, this entire class supports multithreading as well.

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.settings;
package app.morphe.extension.music.settings;
import android.app.Activity;
import android.content.Intent;
@ -8,8 +8,8 @@ import androidx.annotation.NonNull;
import java.lang.ref.WeakReference;
import app.revanced.extension.music.settings.preference.ReVancedPreferenceFragment;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.music.settings.preference.ReVancedPreferenceFragment;
import app.morphe.extension.shared.utils.Logger;
/**
* @noinspection ALL

View file

@ -1,27 +1,27 @@
package app.revanced.extension.music.settings;
package app.morphe.extension.music.settings;
import static java.lang.Boolean.FALSE;
import static java.lang.Boolean.TRUE;
import static app.revanced.extension.music.sponsorblock.objects.CategoryBehaviour.IGNORE;
import static app.revanced.extension.music.sponsorblock.objects.CategoryBehaviour.SKIP_AUTOMATICALLY;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.sponsorblock.objects.CategoryBehaviour.IGNORE;
import static app.morphe.extension.music.sponsorblock.objects.CategoryBehaviour.SKIP_AUTOMATICALLY;
import static app.morphe.extension.shared.utils.StringRef.str;
import androidx.annotation.NonNull;
import app.revanced.extension.music.patches.general.ChangeStartPagePatch.StartPage;
import app.revanced.extension.music.patches.misc.AlbumMusicVideoPatch.RedirectType;
import app.revanced.extension.music.patches.utils.PatchStatus;
import app.revanced.extension.music.sponsorblock.SponsorBlockSettings;
import app.revanced.extension.shared.settings.BaseSettings;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.revanced.extension.shared.settings.EnumSetting;
import app.revanced.extension.shared.settings.FloatSetting;
import app.revanced.extension.shared.settings.IntegerSetting;
import app.revanced.extension.shared.settings.LongSetting;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.patches.general.ChangeStartPagePatch.StartPage;
import app.morphe.extension.music.patches.misc.AlbumMusicVideoPatch.RedirectType;
import app.morphe.extension.music.patches.utils.PatchStatus;
import app.morphe.extension.music.sponsorblock.SponsorBlockSettings;
import app.morphe.extension.shared.settings.BaseSettings;
import app.morphe.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.settings.EnumSetting;
import app.morphe.extension.shared.settings.FloatSetting;
import app.morphe.extension.shared.settings.IntegerSetting;
import app.morphe.extension.shared.settings.LongSetting;
import app.morphe.extension.shared.settings.Setting;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.settings;
package app.morphe.extension.music.settings;
import android.annotation.SuppressLint;
import android.app.Activity;
@ -8,11 +8,11 @@ import android.preference.PreferenceFragment;
import android.view.View;
import android.widget.Toolbar;
import app.revanced.extension.music.settings.preference.YouTubeMusicPreferenceFragment;
import app.revanced.extension.music.settings.search.YouTubeMusicSearchViewController;
import app.revanced.extension.shared.settings.BaseHostActivity;
import app.revanced.extension.shared.utils.BaseThemeUtils;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.morphe.extension.music.settings.preference.YouTubeMusicPreferenceFragment;
import app.morphe.extension.music.settings.search.YouTubeMusicSearchViewController;
import app.morphe.extension.shared.settings.BaseHostActivity;
import app.morphe.extension.shared.utils.BaseThemeUtils;
import app.morphe.extension.shared.utils.ResourceUtils;
public class YouTubeMusicHostActivity extends BaseHostActivity {
private final int REVANCED_SETTINGS_BACKGROUND_COLOR =

View file

@ -1,19 +1,19 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.shared.patches.PatchStatus.PatchVersion;
import static app.revanced.extension.shared.patches.PatchStatus.PatchedTime;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.patches.PatchStatus.PatchVersion;
import static app.morphe.extension.shared.patches.PatchStatus.PatchedTime;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import java.util.Date;
import java.util.Locale;
import app.revanced.extension.shared.settings.preference.WebViewDialog;
import app.revanced.extension.shared.utils.BaseThemeUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.revanced.extension.youtube.utils.ExtendedUtils;
import app.morphe.extension.shared.settings.preference.WebViewDialog;
import app.morphe.extension.shared.utils.BaseThemeUtils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
import app.morphe.extension.youtube.utils.ExtendedUtils;
/**
* Used by YouTube and YouTube Music.

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.app.AlertDialog;
@ -17,11 +17,11 @@ import android.widget.TableRow;
import java.util.Arrays;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.utils.ExtendedUtils;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.utils.ExtendedUtils;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.ResourceUtils;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("StringOperationCanBeSimplified")
public class ExternalDownloaderPreference {

View file

@ -1,39 +1,39 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.settings.Settings.APP_INFO;
import static app.revanced.extension.music.settings.Settings.BYPASS_IMAGE_REGION_RESTRICTIONS_DOMAIN;
import static app.revanced.extension.music.settings.Settings.CHANGE_START_PAGE;
import static app.revanced.extension.music.settings.Settings.CUSTOM_FILTER_STRINGS;
import static app.revanced.extension.music.settings.Settings.CUSTOM_PLAYBACK_SPEEDS;
import static app.revanced.extension.music.settings.Settings.CUSTOM_PLAYER_BACKGROUND_COLOR_PRIMARY;
import static app.revanced.extension.music.settings.Settings.CUSTOM_PLAYER_BACKGROUND_COLOR_SECONDARY;
import static app.revanced.extension.music.settings.Settings.DISABLE_MUSIC_VIDEO_IN_ALBUM_REDIRECT_TYPE;
import static app.revanced.extension.music.settings.Settings.ENABLE_CUSTOM_NAVIGATION_BAR_COLOR_VALUE;
import static app.revanced.extension.music.settings.Settings.EXTERNAL_DOWNLOADER_PACKAGE_NAME;
import static app.revanced.extension.music.settings.Settings.HIDE_ACCOUNT_MENU_FILTER_STRINGS;
import static app.revanced.extension.music.settings.Settings.OPEN_DEFAULT_APP_SETTINGS;
import static app.revanced.extension.music.settings.Settings.OPTIONAL_SPONSOR_BLOCK_SETTINGS_PREFIX;
import static app.revanced.extension.music.settings.Settings.REPLACE_NAVIGATION_BUTTON_ABOUT;
import static app.revanced.extension.music.settings.Settings.RETURN_YOUTUBE_USERNAME_ABOUT;
import static app.revanced.extension.music.settings.Settings.SB_API_URL;
import static app.revanced.extension.music.settings.Settings.SETTINGS_IMPORT_EXPORT;
import static app.revanced.extension.music.settings.Settings.SPOOF_APP_VERSION_TARGET;
import static app.revanced.extension.music.settings.Settings.SPOOF_APP_VERSION_FOR_LYRICS_TARGET;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_DEFAULT_CLIENT;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_SIGN_IN_ANDROID_NO_SDK_ABOUT;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_SIGN_IN_ANDROID_VR_ABOUT;
import static app.revanced.extension.music.settings.Settings.WATCH_HISTORY_TYPE;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.revanced.extension.music.utils.RestartUtils.showRestartDialog;
import static app.revanced.extension.shared.patches.PatchStatus.PatchVersion;
import static app.revanced.extension.shared.settings.BaseSettings.RETURN_YOUTUBE_USERNAME_DISPLAY_FORMAT;
import static app.revanced.extension.shared.settings.BaseSettings.RETURN_YOUTUBE_USERNAME_YOUTUBE_DATA_API_V3_DEVELOPER_KEY;
import static app.revanced.extension.shared.settings.Setting.getSettingFromPath;
import static app.revanced.extension.shared.utils.ResourceUtils.getStringArray;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.revanced.extension.shared.utils.Utils.showToastShort;
import static app.morphe.extension.music.settings.Settings.APP_INFO;
import static app.morphe.extension.music.settings.Settings.BYPASS_IMAGE_REGION_RESTRICTIONS_DOMAIN;
import static app.morphe.extension.music.settings.Settings.CHANGE_START_PAGE;
import static app.morphe.extension.music.settings.Settings.CUSTOM_FILTER_STRINGS;
import static app.morphe.extension.music.settings.Settings.CUSTOM_PLAYBACK_SPEEDS;
import static app.morphe.extension.music.settings.Settings.CUSTOM_PLAYER_BACKGROUND_COLOR_PRIMARY;
import static app.morphe.extension.music.settings.Settings.CUSTOM_PLAYER_BACKGROUND_COLOR_SECONDARY;
import static app.morphe.extension.music.settings.Settings.DISABLE_MUSIC_VIDEO_IN_ALBUM_REDIRECT_TYPE;
import static app.morphe.extension.music.settings.Settings.ENABLE_CUSTOM_NAVIGATION_BAR_COLOR_VALUE;
import static app.morphe.extension.music.settings.Settings.EXTERNAL_DOWNLOADER_PACKAGE_NAME;
import static app.morphe.extension.music.settings.Settings.HIDE_ACCOUNT_MENU_FILTER_STRINGS;
import static app.morphe.extension.music.settings.Settings.OPEN_DEFAULT_APP_SETTINGS;
import static app.morphe.extension.music.settings.Settings.OPTIONAL_SPONSOR_BLOCK_SETTINGS_PREFIX;
import static app.morphe.extension.music.settings.Settings.REPLACE_NAVIGATION_BUTTON_ABOUT;
import static app.morphe.extension.music.settings.Settings.RETURN_YOUTUBE_USERNAME_ABOUT;
import static app.morphe.extension.music.settings.Settings.SB_API_URL;
import static app.morphe.extension.music.settings.Settings.SETTINGS_IMPORT_EXPORT;
import static app.morphe.extension.music.settings.Settings.SPOOF_APP_VERSION_TARGET;
import static app.morphe.extension.music.settings.Settings.SPOOF_APP_VERSION_FOR_LYRICS_TARGET;
import static app.morphe.extension.music.settings.Settings.SPOOF_STREAMING_DATA_DEFAULT_CLIENT;
import static app.morphe.extension.music.settings.Settings.SPOOF_STREAMING_DATA_SIGN_IN_ANDROID_NO_SDK_ABOUT;
import static app.morphe.extension.music.settings.Settings.SPOOF_STREAMING_DATA_SIGN_IN_ANDROID_VR_ABOUT;
import static app.morphe.extension.music.settings.Settings.WATCH_HISTORY_TYPE;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.morphe.extension.music.utils.RestartUtils.showRestartDialog;
import static app.morphe.extension.shared.patches.PatchStatus.PatchVersion;
import static app.morphe.extension.shared.settings.BaseSettings.RETURN_YOUTUBE_USERNAME_DISPLAY_FORMAT;
import static app.morphe.extension.shared.settings.BaseSettings.RETURN_YOUTUBE_USERNAME_YOUTUBE_DATA_API_V3_DEVELOPER_KEY;
import static app.morphe.extension.shared.settings.Setting.getSettingFromPath;
import static app.morphe.extension.shared.utils.ResourceUtils.getStringArray;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.Utils.showToastShort;
import android.annotation.SuppressLint;
import android.app.Activity;
@ -60,18 +60,18 @@ import java.io.PrintWriter;
import java.util.Date;
import java.util.Objects;
import app.revanced.extension.music.patches.utils.ReturnYouTubeDislikePatch;
import app.revanced.extension.music.returnyoutubedislike.ReturnYouTubeDislike;
import app.revanced.extension.music.settings.ActivityHook;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.utils.ExtendedUtils;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.revanced.extension.shared.settings.EnumSetting;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.settings.preference.YouTubeDataAPIDialogBuilder;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.patches.utils.ReturnYouTubeDislikePatch;
import app.morphe.extension.music.returnyoutubedislike.ReturnYouTubeDislike;
import app.morphe.extension.music.settings.ActivityHook;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.utils.ExtendedUtils;
import app.morphe.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.settings.EnumSetting;
import app.morphe.extension.shared.settings.Setting;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.settings.preference.YouTubeDataAPIDialogBuilder;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("all")
public class ReVancedPreferenceFragment extends PreferenceFragment {

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.widget.EditText;
@ -12,8 +12,8 @@ import androidx.annotation.NonNull;
import com.google.android.material.textfield.TextInputLayout;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.shared.settings.Setting;
import app.morphe.extension.shared.utils.Logger;
public class ResettableEditTextPreference {

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.shared.utils.ResourceUtils.getStringArray;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.shared.utils.ResourceUtils.getStringArray;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
@ -12,12 +12,12 @@ import org.apache.commons.lang3.ArrayUtils;
import java.util.Locale;
import app.revanced.extension.shared.settings.EnumSetting;
import app.revanced.extension.shared.settings.IntegerSetting;
import app.revanced.extension.shared.settings.LongSetting;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.shared.settings.EnumSetting;
import app.morphe.extension.shared.settings.IntegerSetting;
import app.morphe.extension.shared.settings.LongSetting;
import app.morphe.extension.shared.settings.Setting;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.Logger;
public class ResettableListPreference {
private static int mClickedDialogEntryIndex;

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.music.utils.ExtendedUtils.getLayoutParams;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.util.Patterns;
@ -13,10 +13,10 @@ import androidx.annotation.NonNull;
import com.google.android.material.textfield.TextInputLayout;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
public class SponsorBlockApiUrlPreference {

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.app.AlertDialog;
@ -18,10 +18,10 @@ import android.widget.TextView;
import java.util.Arrays;
import java.util.Objects;
import app.revanced.extension.music.sponsorblock.objects.CategoryBehaviour;
import app.revanced.extension.music.sponsorblock.objects.SegmentCategory;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.sponsorblock.objects.CategoryBehaviour;
import app.morphe.extension.music.sponsorblock.objects.SegmentCategory;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
public class SponsorBlockCategoryPreference {
private static final String[] CategoryBehaviourEntries = {str("revanced_sb_skip_automatically"), str("revanced_sb_skip_ignore")};

View file

@ -1,14 +1,14 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.app.AlertDialog;
import app.revanced.extension.shared.patches.auth.YouTubeAuthPatch;
import app.revanced.extension.shared.patches.auth.YouTubeVRAuthPatch;
import app.revanced.extension.shared.utils.IntentUtils;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.patches.auth.YouTubeAuthPatch;
import app.morphe.extension.shared.patches.auth.YouTubeVRAuthPatch;
import app.morphe.extension.shared.utils.IntentUtils;
import app.morphe.extension.shared.utils.Utils;
public class SpoofStreamingDataSignInDialogBuilder {

View file

@ -1,13 +1,13 @@
package app.revanced.extension.music.settings.preference;
package app.morphe.extension.music.settings.preference;
import android.app.Dialog;
import android.preference.PreferenceScreen;
import android.widget.Toolbar;
import app.revanced.extension.music.settings.YouTubeMusicHostActivity;
import app.revanced.extension.shared.settings.preference.ToolbarPreferenceFragment;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.YouTubeMusicHostActivity;
import app.morphe.extension.shared.settings.preference.ToolbarPreferenceFragment;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Preference fragment for ReVanced settings.

View file

@ -1,13 +1,13 @@
package app.revanced.extension.music.settings.search;
package app.morphe.extension.music.settings.search;
import android.content.Context;
import android.preference.PreferenceScreen;
import java.util.List;
import app.revanced.extension.shared.settings.search.BaseSearchResultItem;
import app.revanced.extension.shared.settings.search.BaseSearchResultsAdapter;
import app.revanced.extension.shared.settings.search.BaseSearchViewController;
import app.morphe.extension.shared.settings.search.BaseSearchResultItem;
import app.morphe.extension.shared.settings.search.BaseSearchResultsAdapter;
import app.morphe.extension.shared.settings.search.BaseSearchViewController;
/**
* YouTube Music-specific search results adapter.

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.settings.search;
package app.morphe.extension.music.settings.search;
import android.app.Activity;
import android.preference.Preference;
@ -6,10 +6,10 @@ import android.preference.PreferenceScreen;
import android.view.View;
import android.widget.Toolbar;
import app.revanced.extension.music.settings.preference.YouTubeMusicPreferenceFragment;
import app.revanced.extension.shared.settings.search.BaseSearchResultItem;
import app.revanced.extension.shared.settings.search.BaseSearchResultsAdapter;
import app.revanced.extension.shared.settings.search.BaseSearchViewController;
import app.morphe.extension.music.settings.preference.YouTubeMusicPreferenceFragment;
import app.morphe.extension.shared.settings.search.BaseSearchResultItem;
import app.morphe.extension.shared.settings.search.BaseSearchResultsAdapter;
import app.morphe.extension.shared.settings.search.BaseSearchViewController;
/**
* YouTube Music-specific search view controller implementation.

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.shared;
package app.morphe.extension.music.shared;
@SuppressWarnings("unused")
public final class NavigationBar {

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.shared
package app.morphe.extension.music.shared
import app.revanced.extension.shared.utils.Event
import app.revanced.extension.shared.utils.Logger
import app.morphe.extension.shared.utils.Event
import app.morphe.extension.shared.utils.Logger
/**
* WatchWhile player type

View file

@ -1,14 +1,14 @@
package app.revanced.extension.music.shared;
package app.morphe.extension.music.shared;
import static app.revanced.extension.shared.utils.Utils.getFormattedTimeStamp;
import static app.morphe.extension.shared.utils.Utils.getFormattedTimeStamp;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.Objects;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Hooking class for the current playing video.

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.shared
package app.morphe.extension.music.shared
import app.revanced.extension.shared.utils.Event
import app.revanced.extension.shared.utils.Logger
import app.morphe.extension.shared.utils.Event
import app.morphe.extension.shared.utils.Logger
/**
* Music video type

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.sponsorblock;
package app.morphe.extension.music.sponsorblock;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.graphics.Canvas;
import android.graphics.Rect;
@ -12,13 +12,13 @@ import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.Objects;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.VideoInformation;
import app.revanced.extension.music.sponsorblock.objects.CategoryBehaviour;
import app.revanced.extension.music.sponsorblock.objects.SponsorSegment;
import app.revanced.extension.music.sponsorblock.requests.SBRequester;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.VideoInformation;
import app.morphe.extension.music.sponsorblock.objects.CategoryBehaviour;
import app.morphe.extension.music.sponsorblock.objects.SponsorSegment;
import app.morphe.extension.music.sponsorblock.requests.SBRequester;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
/**
* Handles showing, scheduling, and skipping of all {@link SponsorSegment} for the current video.

View file

@ -1,4 +1,4 @@
package app.revanced.extension.music.sponsorblock;
package app.morphe.extension.music.sponsorblock;
import android.content.Context;
@ -7,9 +7,9 @@ import androidx.annotation.Nullable;
import java.util.UUID;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.sponsorblock.objects.SegmentCategory;
import app.revanced.extension.shared.settings.Setting;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.sponsorblock.objects.SegmentCategory;
import app.morphe.extension.shared.settings.Setting;
public class SponsorBlockSettings {

View file

@ -1,13 +1,13 @@
package app.revanced.extension.music.sponsorblock.objects;
package app.morphe.extension.music.sponsorblock.objects;
import static app.revanced.extension.shared.utils.StringRef.sf;
import static app.morphe.extension.shared.utils.StringRef.sf;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.Objects;
import app.revanced.extension.shared.utils.StringRef;
import app.morphe.extension.shared.utils.StringRef;
public enum CategoryBehaviour {
SKIP_AUTOMATICALLY("skip", 2, true, sf("revanced_sb_skip_automatically")),

View file

@ -1,24 +1,24 @@
package app.revanced.extension.music.sponsorblock.objects;
package app.morphe.extension.music.sponsorblock.objects;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_FILLER;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_FILLER_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_HOOK;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_HOOK_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_INTERACTION;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_INTERACTION_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_INTRO;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_INTRO_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_MUSIC_OFFTOPIC;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_MUSIC_OFFTOPIC_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_OUTRO;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_OUTRO_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_PREVIEW;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_PREVIEW_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_SELF_PROMO;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_SELF_PROMO_COLOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_SPONSOR;
import static app.revanced.extension.music.settings.Settings.SB_CATEGORY_SPONSOR_COLOR;
import static app.revanced.extension.shared.utils.StringRef.sf;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_FILLER;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_FILLER_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_HOOK;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_HOOK_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_INTERACTION;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_INTERACTION_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_INTRO;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_INTRO_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_MUSIC_OFFTOPIC;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_MUSIC_OFFTOPIC_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_OUTRO;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_OUTRO_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_PREVIEW;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_PREVIEW_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_SELF_PROMO;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_SELF_PROMO_COLOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_SPONSOR;
import static app.morphe.extension.music.settings.Settings.SB_CATEGORY_SPONSOR_COLOR;
import static app.morphe.extension.shared.utils.StringRef.sf;
import android.graphics.Color;
import android.graphics.Paint;
@ -35,10 +35,10 @@ import java.util.List;
import java.util.Map;
import java.util.Objects;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.StringRef;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.StringRef;
import app.morphe.extension.shared.utils.Utils;
public enum SegmentCategory {
SPONSOR("sponsor", sf("revanced_sb_segments_sponsor"), sf("revanced_sb_segments_sponsor_sum"), sf("revanced_sb_skip_button_sponsor"), sf("revanced_sb_skipped_sponsor"),

View file

@ -1,11 +1,11 @@
package app.revanced.extension.music.sponsorblock.objects;
package app.morphe.extension.music.sponsorblock.objects;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.Objects;
import app.revanced.extension.music.shared.VideoInformation;
import app.morphe.extension.music.shared.VideoInformation;
public class SponsorSegment implements Comparable<SponsorSegment> {
@NonNull

View file

@ -1,6 +1,6 @@
package app.revanced.extension.music.sponsorblock.requests;
package app.morphe.extension.music.sponsorblock.requests;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -16,15 +16,15 @@ import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.sponsorblock.SponsorBlockSettings;
import app.revanced.extension.music.sponsorblock.objects.SegmentCategory;
import app.revanced.extension.music.sponsorblock.objects.SponsorSegment;
import app.revanced.extension.shared.requests.Requester;
import app.revanced.extension.shared.requests.Route;
import app.revanced.extension.shared.sponsorblock.requests.SBRoutes;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.sponsorblock.SponsorBlockSettings;
import app.morphe.extension.music.sponsorblock.objects.SegmentCategory;
import app.morphe.extension.music.sponsorblock.objects.SponsorSegment;
import app.morphe.extension.shared.requests.Requester;
import app.morphe.extension.shared.requests.Route;
import app.morphe.extension.shared.sponsorblock.requests.SBRoutes;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
public class SBRequester {
/**

View file

@ -1,10 +1,10 @@
package app.revanced.extension.music.utils;
package app.morphe.extension.music.utils;
import android.app.Activity;
import android.content.Intent;
import app.revanced.extension.shared.utils.PackageUtils;
import app.revanced.extension.shared.utils.ResourceUtils;
import app.morphe.extension.shared.utils.PackageUtils;
import app.morphe.extension.shared.utils.ResourceUtils;
public class ExtendedUtils extends PackageUtils {
public static final boolean IS_6_27_OR_GREATER = isVersionOrGreater("6.27.00");

View file

@ -1,8 +1,8 @@
package app.revanced.extension.music.utils;
package app.morphe.extension.music.utils;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.runOnMainThreadDelayed;
import static app.morphe.extension.music.utils.ExtendedUtils.getDialogBuilder;
import static app.morphe.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.Utils.runOnMainThreadDelayed;
import android.app.Activity;
import android.app.AlertDialog;

View file

@ -1,7 +1,7 @@
package app.revanced.extension.music.utils;
package app.morphe.extension.music.utils;
import static app.revanced.extension.music.settings.preference.ExternalDownloaderPreference.checkPackageIsEnabled;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.music.settings.preference.ExternalDownloaderPreference.checkPackageIsEnabled;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.annotation.SuppressLint;
import android.content.Context;
@ -10,11 +10,11 @@ import android.util.Log;
import androidx.annotation.NonNull;
import app.revanced.extension.music.settings.Settings;
import app.revanced.extension.music.shared.VideoInformation;
import app.revanced.extension.shared.settings.StringSetting;
import app.revanced.extension.shared.utils.IntentUtils;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.music.settings.Settings;
import app.morphe.extension.music.shared.VideoInformation;
import app.morphe.extension.shared.settings.StringSetting;
import app.morphe.extension.shared.utils.IntentUtils;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public class VideoUtils extends IntentUtils {

View file

@ -1,11 +1,11 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import com.reddit.domain.model.ILink;
import java.util.ArrayList;
import java.util.List;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public final class GeneralAdsPatch {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import android.view.View;
import android.view.ViewGroup;
@ -7,8 +7,8 @@ import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public final class NavigationButtonsPatch {

View file

@ -1,9 +1,9 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import android.net.Uri;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public final class OpenLinksDirectlyPatch {

View file

@ -1,11 +1,11 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public class OpenLinksExternallyPatch {

View file

@ -1,9 +1,9 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import java.util.Collections;
import java.util.List;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public final class RecentlyVisitedShelfPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public final class RecommendedCommunitiesPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.str;
import android.app.Dialog;
import android.view.View;
@ -10,8 +10,8 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.shared.utils.Utils;
@SuppressWarnings("unused")
public class RemoveSubRedditDialogPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public final class SanitizeUrlQueryPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public class ScreenshotPopupPatch {

View file

@ -1,8 +1,8 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import android.view.View;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public class ToolBarButtonPatch {

View file

@ -1,6 +1,6 @@
package app.revanced.extension.reddit.patches;
package app.morphe.extension.reddit.patches;
import app.revanced.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.Settings;
@SuppressWarnings("unused")
public final class TrendingTodayShelfPatch {

View file

@ -1,11 +1,11 @@
package app.revanced.extension.reddit.settings;
package app.morphe.extension.reddit.settings;
import android.app.Activity;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import app.revanced.extension.reddit.settings.preference.ReVancedPreferenceFragment;
import app.morphe.extension.reddit.settings.preference.ReVancedPreferenceFragment;
@SuppressWarnings("all")
public class ActivityHook {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.reddit.settings;
package app.morphe.extension.reddit.settings;
import static java.lang.Boolean.FALSE;
import static java.lang.Boolean.TRUE;
import app.revanced.extension.shared.settings.BaseSettings;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.settings.BaseSettings;
import app.morphe.extension.shared.settings.BooleanSetting;
public class Settings extends BaseSettings {
// Ads

View file

@ -1,4 +1,4 @@
package app.revanced.extension.reddit.settings;
package app.morphe.extension.reddit.settings;
@SuppressWarnings("unused")
public class SettingsStatus {

View file

@ -1,11 +1,11 @@
package app.revanced.extension.reddit.settings.preference;
package app.morphe.extension.reddit.settings.preference;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.preference.Preference;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.dstr;
@SuppressWarnings("deprecation")
public class LinkPreference extends Preference {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.reddit.settings.preference;
package app.morphe.extension.reddit.settings.preference;
import android.content.Context;
import android.preference.Preference;
@ -6,16 +6,16 @@ import android.preference.PreferenceScreen;
import androidx.annotation.NonNull;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.utils.Utils;
import org.jetbrains.annotations.NotNull;
import app.revanced.extension.reddit.settings.preference.categories.AdsPreferenceCategory;
import app.revanced.extension.reddit.settings.preference.categories.LayoutPreferenceCategory;
import app.revanced.extension.reddit.settings.preference.categories.MiscellaneousPreferenceCategory;
import app.revanced.extension.shared.settings.Setting;
import app.revanced.extension.shared.settings.preference.AbstractPreferenceFragment;
import app.morphe.extension.reddit.settings.preference.categories.AdsPreferenceCategory;
import app.morphe.extension.reddit.settings.preference.categories.LayoutPreferenceCategory;
import app.morphe.extension.reddit.settings.preference.categories.MiscellaneousPreferenceCategory;
import app.morphe.extension.shared.settings.Setting;
import app.morphe.extension.shared.settings.preference.AbstractPreferenceFragment;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.dstr;
/**
* Preference fragment for ReVanced settings

View file

@ -1,11 +1,11 @@
package app.revanced.extension.reddit.settings.preference;
package app.morphe.extension.reddit.settings.preference;
import android.content.Context;
import android.preference.SwitchPreference;
import app.revanced.extension.shared.settings.BooleanSetting;
import app.morphe.extension.shared.settings.BooleanSetting;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.dstr;
@SuppressWarnings("deprecation")
public class TogglePreference extends SwitchPreference {

View file

@ -1,14 +1,14 @@
package app.revanced.extension.reddit.settings.preference.categories;
package app.morphe.extension.reddit.settings.preference.categories;
import android.content.Context;
import android.preference.PreferenceScreen;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.reddit.settings.SettingsStatus;
import app.revanced.extension.reddit.settings.preference.TogglePreference;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.SettingsStatus;
import app.morphe.extension.reddit.settings.preference.TogglePreference;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.str;
@SuppressWarnings("deprecation")
public class AdsPreferenceCategory extends ConditionalPreferenceCategory {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.reddit.settings.preference.categories;
package app.morphe.extension.reddit.settings.preference.categories;
import android.content.Context;
import android.preference.PreferenceCategory;

View file

@ -1,14 +1,14 @@
package app.revanced.extension.reddit.settings.preference.categories;
package app.morphe.extension.reddit.settings.preference.categories;
import android.content.Context;
import android.preference.PreferenceScreen;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.reddit.settings.SettingsStatus;
import app.revanced.extension.reddit.settings.preference.TogglePreference;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.SettingsStatus;
import app.morphe.extension.reddit.settings.preference.TogglePreference;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.morphe.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.str;
@SuppressWarnings("deprecation")
public class LayoutPreferenceCategory extends ConditionalPreferenceCategory {

View file

@ -1,14 +1,14 @@
package app.revanced.extension.reddit.settings.preference.categories;
package app.morphe.extension.reddit.settings.preference.categories;
import android.content.Context;
import android.preference.PreferenceScreen;
import app.revanced.extension.reddit.settings.Settings;
import app.revanced.extension.reddit.settings.SettingsStatus;
import app.revanced.extension.reddit.settings.preference.LinkPreference;
import app.revanced.extension.reddit.settings.preference.TogglePreference;
import app.morphe.extension.reddit.settings.Settings;
import app.morphe.extension.reddit.settings.SettingsStatus;
import app.morphe.extension.reddit.settings.preference.LinkPreference;
import app.morphe.extension.reddit.settings.preference.TogglePreference;
import static app.revanced.extension.shared.utils.StringRef.dstr;
import static app.morphe.extension.shared.utils.StringRef.dstr;
@SuppressWarnings("deprecation")
public class MiscellaneousPreferenceCategory extends ConditionalPreferenceCategory {

View file

@ -1,10 +1,10 @@
package app.revanced.extension.shared.innertube.client
package app.morphe.extension.shared.innertube.client
import android.os.Build
import app.revanced.extension.shared.innertube.utils.J2V8Support.supportJ2V8
import app.revanced.extension.shared.patches.AppCheckPatch.IS_YOUTUBE
import app.revanced.extension.shared.settings.BaseSettings
import app.revanced.extension.shared.utils.PackageUtils
import app.morphe.extension.shared.innertube.utils.J2V8Support.supportJ2V8
import app.morphe.extension.shared.patches.AppCheckPatch.IS_YOUTUBE
import app.morphe.extension.shared.settings.BaseSettings
import app.morphe.extension.shared.utils.PackageUtils
import org.apache.commons.lang3.ArrayUtils
import java.util.Locale

View file

@ -1,4 +1,4 @@
package app.revanced.extension.shared.innertube.client
package app.morphe.extension.shared.innertube.client
import android.os.Build
import java.util.Locale

View file

@ -1,12 +1,12 @@
package app.revanced.extension.shared.innertube.requests
package app.morphe.extension.shared.innertube.requests
import app.revanced.extension.shared.innertube.client.YouTubeClient
import app.revanced.extension.shared.innertube.utils.ThrottlingParameterUtils
import app.revanced.extension.shared.requests.Requester
import app.revanced.extension.shared.requests.Route.CompiledRoute
import app.revanced.extension.shared.utils.Logger
import app.revanced.extension.shared.utils.StringRef.str
import app.revanced.extension.shared.utils.Utils
import app.morphe.extension.shared.innertube.client.YouTubeClient
import app.morphe.extension.shared.innertube.utils.ThrottlingParameterUtils
import app.morphe.extension.shared.requests.Requester
import app.morphe.extension.shared.requests.Route.CompiledRoute
import app.morphe.extension.shared.utils.Logger
import app.morphe.extension.shared.utils.StringRef.str
import app.morphe.extension.shared.utils.Utils
import org.apache.commons.lang3.StringUtils
import org.json.JSONArray
import org.json.JSONException

View file

@ -1,7 +1,7 @@
package app.revanced.extension.shared.innertube.requests
package app.morphe.extension.shared.innertube.requests
import app.revanced.extension.shared.requests.Route
import app.revanced.extension.shared.requests.Route.CompiledRoute
import app.morphe.extension.shared.requests.Route
import app.morphe.extension.shared.requests.Route.CompiledRoute
object InnerTubeRoutes {

View file

@ -1,4 +1,4 @@
package app.revanced.extension.shared.innertube.utils;
package app.morphe.extension.shared.innertube.utils;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -13,7 +13,7 @@ import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings("unused")
public class AuthUtils {

View file

@ -1,11 +1,11 @@
package app.revanced.extension.shared.innertube.utils;
package app.morphe.extension.shared.innertube.utils;
import static app.revanced.extension.shared.utils.Utils.isSDKAbove;
import static app.morphe.extension.shared.utils.Utils.isSDKAbove;
import android.media.MediaCodecInfo;
import android.media.MediaCodecList;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Logger;
public class DeviceHardwareSupport {
private static final boolean DEVICE_HAS_HARDWARE_DECODING_AV1;

View file

@ -1,9 +1,9 @@
package app.revanced.extension.shared.innertube.utils;
package app.morphe.extension.shared.innertube.utils;
import java.io.File;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.morphe.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Utils;
public class J2V8Support {
private static final boolean DEVICE_SUPPORT_J2V8;

View file

@ -1,6 +1,6 @@
package app.revanced.extension.shared.innertube.utils;
package app.morphe.extension.shared.innertube.utils;
import static app.revanced.extension.shared.innertube.utils.DeviceHardwareSupport.hasAV1Decoder;
import static app.morphe.extension.shared.innertube.utils.DeviceHardwareSupport.hasAV1Decoder;
import com.google.protobuf.MessageLite;
import com.google.protos.youtube.api.innertube.StreamingDataOuterClass;
@ -11,7 +11,7 @@ import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import app.revanced.extension.shared.utils.Logger;
import app.morphe.extension.shared.utils.Logger;
@SuppressWarnings({"deprecation", "unused"})
public class StreamingDataOuterClassUtils {

Some files were not shown because too many files have changed in this diff Show more