diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index 4bed54e4b..43f44b174 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -138,6 +138,7 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List private List mBroken; private History mHistory; private Players mPlayers; + private EpisodeDialog mEpisodeDialog; private boolean background; private boolean fullscreen; private boolean initTrack; @@ -843,9 +844,18 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List else mBinding.danmaku.hide(); } + public void setEpisodeDialog(EpisodeDialog dialog) { + mEpisodeDialog = dialog; + } + private void onEpisodes() { - EpisodeDialog.create().episodes(getFlag().getEpisodes()).show(this); - hideControl(); + if (mEpisodeDialog != null) { + mEpisodeDialog.dismiss(); + mEpisodeDialog = null; + } else { + EpisodeDialog.create().episodes(getFlag().getEpisodes()).show(this); + hideControl(); + } } private void checkNext() { diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/EpisodeDialog.java b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/EpisodeDialog.java index aab902044..1774b910a 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/EpisodeDialog.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/dialog/EpisodeDialog.java @@ -69,14 +69,10 @@ public class EpisodeDialog extends BaseDialog implements ArrayPresenter.OnClickL } public void show(FragmentActivity activity) { - for (Fragment f : activity.getSupportFragmentManager().getFragments()) { - if (f instanceof EpisodeDialog) { - ((EpisodeDialog) f).dismiss(); - return; - } - } + for (Fragment f : activity.getSupportFragmentManager().getFragments()) if (f instanceof BottomSheetDialogFragment) return; show(activity.getSupportFragmentManager(), null); this.activity = (VideoActivity) activity; + this.activity.setEpisodeDialog(this); } @Override