From c9265d1efe95e3982ee3d52d8c91d97dd974dd9e Mon Sep 17 00:00:00 2001 From: FongMi Date: Fri, 14 Jul 2023 12:52:50 +0800 Subject: [PATCH] Fix crash --- .../android/tv/ui/activity/DetailActivity.java | 14 +++++++++----- .../android/tv/ui/activity/DetailActivity.java | 14 +++++++++----- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 0bfe82024..be454246d 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -419,6 +419,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis mBinding.content.setMaxLines(getMaxLines()); mBinding.video.requestFocus(); getPart(item.getVodName()); + checkHistory(item); checkFlag(item); checkKeep(); } @@ -785,16 +786,19 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis } private void checkFlag(Vod item) { - mBinding.flag.setVisibility(item.getVodFlags().isEmpty() ? View.GONE : View.VISIBLE); - if (isVisible(mBinding.flag)) checkHistory(item); - else ErrorEvent.episode(); + boolean empty = item.getVodFlags().isEmpty(); + mBinding.flag.setVisibility(empty ? View.GONE : View.VISIBLE); + if (empty) { + ErrorEvent.episode(); + } else { + setFlagActivated(mHistory.getFlag(), true); + if (mHistory.isRevSort()) reverseEpisode(true); + } } private void checkHistory(Vod item) { mHistory = History.find(getHistoryKey()); mHistory = mHistory == null ? createHistory(item) : mHistory; - setFlagActivated(mHistory.getFlag(), true); - if (mHistory.isRevSort()) reverseEpisode(true); mBinding.control.opening.setText(mHistory.getOpening() == 0 ? getString(R.string.play_op) : mPlayers.stringToTime(mHistory.getOpening())); mBinding.control.ending.setText(mHistory.getEnding() == 0 ? getString(R.string.play_ed) : mPlayers.stringToTime(mHistory.getEnding())); mBinding.control.speed.setText(mPlayers.setSpeed(mHistory.getSpeed())); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 49725d438..3c763078b 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -406,6 +406,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust mBinding.contentLayout.setVisibility(mBinding.content.getVisibility()); mFlagAdapter.addAll(item.getVodFlags()); setOther(mBinding.other, item); + checkHistory(item); checkFlag(item); checkKeepImg(); } @@ -819,16 +820,19 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust } private void checkFlag(Vod item) { - mBinding.flag.setVisibility(item.getVodFlags().isEmpty() ? View.GONE : View.VISIBLE); - if (isVisible(mBinding.flag)) checkHistory(item); - else ErrorEvent.episode(); + boolean empty = item.getVodFlags().isEmpty(); + mBinding.flag.setVisibility(empty ? View.GONE : View.VISIBLE); + if (empty) { + ErrorEvent.episode(); + } else { + onItemClick(mHistory.getFlag(), true); + if (mHistory.isRevSort()) reverseEpisode(true); + } } private void checkHistory(Vod item) { mHistory = History.find(getHistoryKey()); mHistory = mHistory == null ? createHistory(item) : mHistory; - onItemClick(mHistory.getFlag(), true); - if (mHistory.isRevSort()) reverseEpisode(true); mBinding.control.action.opening.setText(mHistory.getOpening() == 0 ? getString(R.string.play_op) : mPlayers.stringToTime(mHistory.getOpening())); mBinding.control.action.ending.setText(mHistory.getEnding() == 0 ? getString(R.string.play_ed) : mPlayers.stringToTime(mHistory.getEnding())); mBinding.control.action.speed.setText(mPlayers.setSpeed(mHistory.getSpeed()));