fix(YouTube): Prevent playing touch interaction sound when unintended

This commit is contained in:
oSumAtrIX 2023-11-06 23:25:35 +01:00
parent 4f57d56042
commit 6e414ec6c2
3 changed files with 8 additions and 5 deletions

View File

@ -26,6 +26,7 @@ public final class DisableSuggestedVideoEndScreenPatch {
public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop,
int oldRight, int oldBottom) { int oldRight, int oldBottom) {
// Disable sound effects to prevent the click sound. // Disable sound effects to prevent the click sound.
imageView.setSoundEffectsEnabled(false);
imageView.performClick(); imageView.performClick();
// Remove the listener to prevent it from being called multiple times. // Remove the listener to prevent it from being called multiple times.

View File

@ -33,6 +33,7 @@ public final class RestoreOldVideoQualityMenuPatch {
View advancedQualityView = ((ViewGroup) recyclerView.getChildAt(0)).getChildAt(3); View advancedQualityView = ((ViewGroup) recyclerView.getChildAt(0)).getChildAt(3);
if (advancedQualityView != null) { if (advancedQualityView != null) {
// Click the "Advanced" quality menu to show the "old" quality menu. // Click the "Advanced" quality menu to show the "old" quality menu.
advancedQualityView.setSoundEffectsEnabled(false);
advancedQualityView.performClick(); advancedQualityView.performClick();
} }
} }

View File

@ -4,16 +4,14 @@ import android.preference.ListPreference;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import java.util.Arrays;
import app.revanced.integrations.patches.components.PlaybackSpeedMenuFilterPatch; import app.revanced.integrations.patches.components.PlaybackSpeedMenuFilterPatch;
import app.revanced.integrations.settings.SettingsEnum; import app.revanced.integrations.settings.SettingsEnum;
import app.revanced.integrations.utils.LogHelper; import app.revanced.integrations.utils.LogHelper;
import app.revanced.integrations.utils.ReVancedUtils; import app.revanced.integrations.utils.ReVancedUtils;
import java.util.Arrays;
public class CustomPlaybackSpeedPatch { public class CustomPlaybackSpeedPatch {
/** /**
* Maximum playback speed, exclusive value. Custom speeds must be less than this value. * Maximum playback speed, exclusive value. Custom speeds must be less than this value.
@ -111,7 +109,10 @@ public class CustomPlaybackSpeedPatch {
// Dismiss View [R.id.touch_outside] is the 1st ChildView of the 4th ParentView. // Dismiss View [R.id.touch_outside] is the 1st ChildView of the 4th ParentView.
// This only shows in phone layout. // This only shows in phone layout.
parentView4th.getChildAt(0).performClick();
final var touchInsidedView = parentView4th.getChildAt(0);
touchInsidedView.setSoundEffectsEnabled(false);
touchInsidedView.performClick();
// In tablet layout there is no Dismiss View, instead we just hide all two parent views. // In tablet layout there is no Dismiss View, instead we just hide all two parent views.
parentView3rd.setVisibility(View.GONE); parentView3rd.setVisibility(View.GONE);