From 372db47f47d595deaffe0fd86b5f9dd1629f23b8 Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Mon, 21 Feb 2022 21:57:47 +0100 Subject: Make it easier to play only audio, not video --- .../antennapod/activity/VideoplayerActivity.java | 18 ++++++++---------- .../preferences/PlaybackPreferencesFragment.java | 6 ------ .../antennapod/preferences/PreferenceUpgrader.java | 3 --- app/src/main/res/menu/mediaplayer.xml | 8 ++++---- app/src/main/res/xml/preferences_playback.xml | 7 ------- 5 files changed, 12 insertions(+), 30 deletions(-) (limited to 'app') diff --git a/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java index 4ff2a5775..954a6c2f6 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java @@ -91,6 +91,7 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar. private PlaybackController controller; private boolean showTimeLeft = false; private boolean isFavorite = false; + private boolean switchToAudioOnly = false; private Disposable disposable; private float prog; @@ -119,6 +120,7 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar. protected void onResume() { super.onResume(); StorageUtils.checkStorageAvailability(this); + switchToAudioOnly = false; if (PlaybackService.isCasting()) { Intent intent = PlaybackService.getPlayerActivityIntent(this); if (!intent.getComponent().getClassName().equals(VideoplayerActivity.class.getName())) { @@ -149,8 +151,7 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar. @Override public void onUserLeaveHint() { - if (!PictureInPictureUtil.isInPictureInPictureMode(this) && UserPreferences.getVideoBackgroundBehavior() - == UserPreferences.VideoBackgroundBehavior.PICTURE_IN_PICTURE) { + if (!PictureInPictureUtil.isInPictureInPictureMode(this)) { compatEnterPictureInPicture(); } } @@ -480,9 +481,7 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar. public void surfaceDestroyed(SurfaceHolder holder) { Log.d(TAG, "Videosurface was destroyed"); videoSurfaceCreated = false; - if (controller != null && !destroyingDueToReload - && UserPreferences.getVideoBackgroundBehavior() - != UserPreferences.VideoBackgroundBehavior.CONTINUE_PLAYING) { + if (controller != null && !destroyingDueToReload && !switchToAudioOnly) { controller.notifyVideoSurfaceAbandoned(); } } @@ -590,17 +589,16 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar. menu.findItem(R.id.set_sleeptimer_item).setVisible(!controller.sleepTimerActive()); menu.findItem(R.id.disable_sleeptimer_item).setVisible(controller.sleepTimerActive()); - if (PictureInPictureUtil.supportsPictureInPicture(this)) { - menu.findItem(R.id.player_go_to_picture_in_picture).setVisible(true); - } + menu.findItem(R.id.player_switch_to_audio_only).setVisible(true); menu.findItem(R.id.audio_controls).setIcon(R.drawable.ic_sliders); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { - if (item.getItemId() == R.id.player_go_to_picture_in_picture) { - compatEnterPictureInPicture(); + if (item.getItemId() == R.id.player_switch_to_audio_only) { + switchToAudioOnly = true; + finish(); return true; } if (item.getItemId() == android.R.id.home) { diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java index 7fa2ed4d1..933a7d456 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java @@ -13,7 +13,6 @@ import de.danoeh.antennapod.activity.PreferenceActivity; import de.danoeh.antennapod.event.UnreadItemsUpdateEvent; import de.danoeh.antennapod.core.preferences.UsageStatistics; import de.danoeh.antennapod.core.preferences.UserPreferences; -import de.danoeh.antennapod.core.util.gui.PictureInPictureUtil; import de.danoeh.antennapod.dialog.SkipPreferenceDialog; import de.danoeh.antennapod.dialog.VariableSpeedDialog; import java.util.Map; @@ -54,11 +53,6 @@ public class PlaybackPreferencesFragment extends PreferenceFragmentCompat { SkipPreferenceDialog.showSkipPreference(activity, SkipPreferenceDialog.SkipDirection.SKIP_FORWARD, null); return true; }); - if (!PictureInPictureUtil.supportsPictureInPicture(activity)) { - ListPreference behaviour = findPreference(UserPreferences.PREF_VIDEO_BEHAVIOR); - behaviour.setEntries(R.array.video_background_behavior_options_without_pip); - behaviour.setEntryValues(R.array.video_background_behavior_values_without_pip); - } findPreference(PREF_PLAYBACK_PREFER_STREAMING).setOnPreferenceChangeListener((preference, newValue) -> { // Update all visible lists to reflect new streaming action button EventBus.getDefault().post(new UnreadItemsUpdateEvent()); diff --git a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java index af35bbac9..48b064ba1 100644 --- a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java +++ b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java @@ -93,9 +93,6 @@ public class PreferenceUpgrader { UserPreferences.setEnqueueLocation(enqueueLocation); } } - if (oldVersion < 1080100) { - prefs.edit().putString(UserPreferences.PREF_VIDEO_BEHAVIOR, "pip").apply(); - } if (oldVersion < 2010300) { // Migrate hardware button preferences if (prefs.getBoolean("prefHardwareForwardButtonSkips", false)) { diff --git a/app/src/main/res/menu/mediaplayer.xml b/app/src/main/res/menu/mediaplayer.xml index a9f15317b..e25872ade 100644 --- a/app/src/main/res/menu/mediaplayer.xml +++ b/app/src/main/res/menu/mediaplayer.xml @@ -52,10 +52,10 @@ + android:id="@+id/player_switch_to_audio_only" + custom:showAsAction="collapseActionView" + android:title="@string/player_switch_to_audio_only" + android:visible="false"> - -- cgit v1.2.3