diff --git a/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/YouTubeActivityHook.java b/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/YouTubeActivityHook.java index 7c548d157..8e7c50c93 100644 --- a/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/YouTubeActivityHook.java +++ b/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/YouTubeActivityHook.java @@ -148,6 +148,6 @@ public class YouTubeActivityHook extends BaseActivityHook { */ @SuppressWarnings("unused") public static boolean handleBackPress() { - return YouTubeSearchViewController.handleBackPress(searchViewController); + return YouTubeSearchViewController.handleFinish(searchViewController); } } diff --git a/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/search/YouTubeSearchViewController.java b/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/search/YouTubeSearchViewController.java index 7a0773bc0..835f43374 100644 --- a/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/search/YouTubeSearchViewController.java +++ b/extensions/shared/src/main/java/app/revanced/extension/youtube/settings/search/YouTubeSearchViewController.java @@ -49,6 +49,15 @@ public class YouTubeSearchViewController extends BaseSearchViewController { return true; } + // Static method for Activity finish. + public static boolean handleFinish(YouTubeSearchViewController searchViewController) { + if (searchViewController != null && searchViewController.isSearchActive()) { + searchViewController.closeSearch(); + return true; + } + return false; + } + // Adapter to wrap YouTubePreferenceFragment to BasePreferenceFragment interface. private record PreferenceFragmentAdapter(YouTubePreferenceFragment fragment) implements BasePreferenceFragment { @Override diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/utils/settings/SettingsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/utils/settings/SettingsPatch.kt index f302ffd41..e47dc5c61 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/utils/settings/SettingsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/utils/settings/SettingsPatch.kt @@ -214,7 +214,7 @@ private val settingsBytecodePatch = bytecodePatch( ).toMutable().apply { addInstructions( """ - invoke-static {}, $EXTENSION_CLASS_DESCRIPTOR->handleFinish()Z + invoke-static {}, $EXTENSION_CLASS_DESCRIPTOR->handleBackPress()Z move-result v0 if-nez v0, :search_handled invoke-super { p0 }, Landroid/app/Activity;->finish()V