diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseGridFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseGridFragment.java index 407ebb353e..e0a1788d29 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseGridFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseGridFragment.java @@ -645,7 +645,7 @@ public void onResume() { //Re-retrieve anything that needs it but delay slightly so we don't take away gui landing if (mAdapter != null) { mHandler.postDelayed(() -> { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; if (mAdapter != null && mAdapter.size() > 0) { if (!mAdapter.ReRetrieveIfNeeded()) { @@ -730,7 +730,7 @@ public void onResponse() { if (mAdapter.getTotalItems() == 0) { binding.toolBar.requestFocus(); mHandler.postDelayed(() -> { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; binding.title.setText(mFolder.getName()); }, 500); @@ -980,7 +980,7 @@ public void onItemClicked(final Presenter.ViewHolder itemViewHolder, Object item private final Runnable mDelayedSetItem = new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; backgroundService.getValue().setBackground(mCurrentItem.getBaseItem()); setItem(mCurrentItem); diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseRecordingsFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseRecordingsFragment.java index 054b0e00c2..db9730b3fe 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseRecordingsFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/BrowseRecordingsFragment.java @@ -146,7 +146,7 @@ public void onResponse(TimerInfoDtoResult response) { new Handler().postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; mRowsFragment.setSelectedPosition(0, true); } diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/EnhancedBrowseFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/EnhancedBrowseFragment.java index 24b4f2c117..c7c11d7a5c 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/browsing/EnhancedBrowseFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/browsing/EnhancedBrowseFragment.java @@ -197,7 +197,7 @@ public void onResume() { new Handler().postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; for (int i = 0; i < mRowsAdapter.size(); i++) { if (mRowsAdapter.get(i) instanceof ListRow) { diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/FullDetailsFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/FullDetailsFragment.java index dd17f39885..df9a1ad03d 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/FullDetailsFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/FullDetailsFragment.java @@ -216,7 +216,7 @@ public void onResponse(org.jellyfin.apiclient.model.livetv.SeriesTimerInfoDto re new Handler().postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; addAdditionalRows(mRowsAdapter); @@ -253,7 +253,7 @@ public void onResume() { new Handler().postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; long lastPlaybackTime = dataRefreshService.getValue().getLastPlayback(); Timber.d("current time %s last playback event time %s last refresh time %s", System.currentTimeMillis(), lastPlaybackTime, mLastUpdated.getTimeInMillis()); @@ -331,7 +331,7 @@ private void startClock() { mClockLoop = new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; if (mBaseItem != null && ((mBaseItem.getRunTimeTicks() != null && mBaseItem.getRunTimeTicks() > 0) || mBaseItem.getOriginalRunTimeTicks() != null)) { mDorPresenter.getViewHolder().setInfoValue3(getEndTime()); diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/ItemListFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/ItemListFragment.java index 6568d699fa..28b3911267 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/ItemListFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/itemdetail/ItemListFragment.java @@ -214,7 +214,7 @@ public void onResume() { new Handler().postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; mItemList.refresh(); lastUpdated = Calendar.getInstance(); diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/livetv/LiveTvGuideFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/livetv/LiveTvGuideFragment.java index e4aa783146..43859b3458 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/livetv/LiveTvGuideFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/livetv/LiveTvGuideFragment.java @@ -569,7 +569,7 @@ protected Void doInBackground(Integer... params) { requireActivity().runOnUiThread(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; GuideChannelHeader header = getChannelHeader(requireContext(), channel); mChannels.addView(header); @@ -755,7 +755,7 @@ private void fillTimeLine(long start, int hours) { private Runnable detailUpdateTask = new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; if (mSelectedProgram.getOverview() == null && mSelectedProgram.getId() != null) { KoinJavaComponent.get(ApiClient.class).GetItemAsync(mSelectedProgram.getId(), KoinJavaComponent.get(UserRepository.class).getCurrentUser().getValue().getId().toString(), new Response() { diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/playback/AudioNowPlayingFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/playback/AudioNowPlayingFragment.java index 28987bf8bc..e1bd453e5d 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/playback/AudioNowPlayingFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/playback/AudioNowPlayingFragment.java @@ -439,7 +439,7 @@ private void loadItem() { mLoopHandler.postDelayed(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; updateSSInfo(); } @@ -452,7 +452,7 @@ private void updateButtons(final boolean playing) { requireActivity().runOnUiThread(new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; mPoster.setKeepScreenOn(playing); if (!playing) { diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/playback/CustomPlaybackOverlayFragment.java b/app/src/main/java/org/jellyfin/androidtv/ui/playback/CustomPlaybackOverlayFragment.java index 6c4b1ea0ab..c471252dfb 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/playback/CustomPlaybackOverlayFragment.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/playback/CustomPlaybackOverlayFragment.java @@ -1005,7 +1005,7 @@ private void fillTimeLine(int hours) { private Runnable detailUpdateTask = new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; if (mSelectedProgram.getOverview() == null && mSelectedProgram.getId() != null) { apiClient.getValue().GetItemAsync(mSelectedProgram.getId(), KoinJavaComponent.get(UserRepository.class).getCurrentUser().getValue().getId().toString(), new Response() { @@ -1122,7 +1122,7 @@ public void onAnimationRepeat(Animation animation) { public void showQuickChannelChanger() { showChapterPanel(); mHandler.postDelayed(() -> { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; int ndx = TvManager.getAllChannelsIndex(TvManager.getLastLiveTvChannel()); if (ndx > 0) { @@ -1135,7 +1135,7 @@ public void showQuickChannelChanger() { public void showChapterSelector() { showChapterPanel(); mHandler.postDelayed(() -> { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; int ndx = getCurrentChapterIndex(mPlaybackController.getCurrentlyPlayingItem(), mPlaybackController.getCurrentPosition() * 10000); if (ndx > 0) { diff --git a/app/src/main/java/org/jellyfin/androidtv/ui/playback/ExternalPlayerActivity.java b/app/src/main/java/org/jellyfin/androidtv/ui/playback/ExternalPlayerActivity.java index 4049c6a399..ef51717ed9 100644 --- a/app/src/main/java/org/jellyfin/androidtv/ui/playback/ExternalPlayerActivity.java +++ b/app/src/main/java/org/jellyfin/androidtv/ui/playback/ExternalPlayerActivity.java @@ -250,7 +250,7 @@ private void startReportLoop() { mReportLoop = new Runnable() { @Override public void run() { - if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.INITIALIZED)) return; + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) return; ReportingHelper.reportProgress(playbackController, mItemsToPlay.get(mCurrentNdx), mCurrentStreamInfo, mPosition * RUNTIME_TICKS_TO_MS, false); mHandler.postDelayed(this, 15000); diff --git a/app/src/main/java/org/jellyfin/androidtv/util/apiclient/EmptyLifecycleAwareResponse.kt b/app/src/main/java/org/jellyfin/androidtv/util/apiclient/EmptyLifecycleAwareResponse.kt index ea1eac62d3..e26f64bfe3 100644 --- a/app/src/main/java/org/jellyfin/androidtv/util/apiclient/EmptyLifecycleAwareResponse.kt +++ b/app/src/main/java/org/jellyfin/androidtv/util/apiclient/EmptyLifecycleAwareResponse.kt @@ -6,7 +6,7 @@ import org.jellyfin.apiclient.interaction.EmptyResponse abstract class EmptyLifecycleAwareResponse( private val lifecycle: Lifecycle, ) : EmptyResponse() { - val active get() = lifecycle.currentState.isAtLeast(Lifecycle.State.INITIALIZED) + val active get() = lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED) override fun triggerInnerResponse() { if (!active) return diff --git a/app/src/main/java/org/jellyfin/androidtv/util/apiclient/LifecycleAwareResponse.kt b/app/src/main/java/org/jellyfin/androidtv/util/apiclient/LifecycleAwareResponse.kt index 68d6134ae8..db760ec4b4 100644 --- a/app/src/main/java/org/jellyfin/androidtv/util/apiclient/LifecycleAwareResponse.kt +++ b/app/src/main/java/org/jellyfin/androidtv/util/apiclient/LifecycleAwareResponse.kt @@ -6,7 +6,7 @@ import org.jellyfin.apiclient.interaction.Response abstract class LifecycleAwareResponse( private val lifecycle: Lifecycle, ) : Response() { - val active get() = lifecycle.currentState.isAtLeast(Lifecycle.State.INITIALIZED) + val active get() = lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED) override fun triggerInnerResponse() { if (!active) return