Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,7 @@ public final class VideoDetailFragment
int lastStableBottomSheetState = BottomSheetBehavior.STATE_EXPANDED;
@State
protected boolean autoPlayEnabled = true;
private boolean forceFullscreen = false;

@Nullable
private StreamInfo currentInfo = null;
Expand Down Expand Up @@ -877,7 +878,7 @@ private void runWorker(final boolean forceLoad, final boolean addToBackStack) {
}
}

if (isAutoplayEnabled()) {
if (isAutoplayEnabled() || forceFullscreen) {
openVideoPlayerAutoFullscreen();
}
}
Expand Down Expand Up @@ -1142,7 +1143,18 @@ public void openVideoPlayer(final boolean directlyFullscreenIfApplicable) {
* = false}, hence preventing it from going directly fullscreen.
*/
public void openVideoPlayerAutoFullscreen() {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please update this JDoc according to your changes.

openVideoPlayer(PlayerHelper.isStartMainPlayerFullscreenEnabled(requireContext()));
openVideoPlayer(forceFullscreen
|| PlayerHelper.isStartMainPlayerFullscreenEnabled(requireContext()));
forceFullscreen = false;
}

public void setForceFullscreen(final boolean force) {
this.forceFullscreen = force;
}

@Nullable
public String getUrl() {
return url;
}

private void openNormalBackgroundPlayer(final boolean append) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package org.schabi.newpipe.util;

import static android.text.TextUtils.isEmpty;
import android.text.TextUtils;
import static org.schabi.newpipe.util.ListHelper.getUrlAndNonTorrentStreams;

import android.annotation.SuppressLint;
Expand Down Expand Up @@ -430,13 +431,16 @@ public static void openVideoDetailFragment(@NonNull final Context context,
final RunnableWithVideoDetailFragment onVideoDetailFragmentReady = detailFragment -> {
expandMainPlayer(detailFragment.requireActivity());
detailFragment.setAutoPlay(autoPlay);
if (switchingPlayers) {
if (switchingPlayers && TextUtils.equals(detailFragment.getUrl(), url)) {
// Situation when user switches from players to main player. All needed data is
// here, we can start watching (assuming newQueue equals playQueue).
// Starting directly in fullscreen if the previous player type was popup.
detailFragment.openVideoPlayer(playerType == PlayerType.POPUP
|| PlayerHelper.isStartMainPlayerFullscreenEnabled(context));
} else {
if (switchingPlayers && playerType == PlayerType.POPUP) {
detailFragment.setForceFullscreen(true);
}
detailFragment.selectAndLoadVideo(serviceId, url, title, playQueue);
}
detailFragment.scrollToTop();
Expand Down
Loading