From 5bafa1209a9f0b9d644f790fa643dd330ec3e770 Mon Sep 17 00:00:00 2001 From: "Thomas W." Date: Thu, 16 Jan 2025 17:08:52 +0100 Subject: [PATCH] refactor: clean up all binding references (#6962) --- .../libretube/ui/dialogs/SubmitDeArrowDialog.kt | 5 +++++ .../libretube/ui/fragments/NoInternetFragment.kt | 16 ++-------------- .../libretube/ui/fragments/PlayerFragment.kt | 5 +++++ .../libretube/ui/sheets/PlayingQueueSheet.kt | 5 +++++ .../libretube/ui/sheets/SleepTimerSheet.kt | 5 +++++ 5 files changed, 22 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/github/libretube/ui/dialogs/SubmitDeArrowDialog.kt b/app/src/main/java/com/github/libretube/ui/dialogs/SubmitDeArrowDialog.kt index 37571dfb6..dbe630084 100644 --- a/app/src/main/java/com/github/libretube/ui/dialogs/SubmitDeArrowDialog.kt +++ b/app/src/main/java/com/github/libretube/ui/dialogs/SubmitDeArrowDialog.kt @@ -106,4 +106,9 @@ class SubmitDeArrowDialog: DialogFragment() { dialog?.dismiss() } + + override fun onDestroyView() { + super.onDestroyView() + _binding = null + } } \ No newline at end of file diff --git a/app/src/main/java/com/github/libretube/ui/fragments/NoInternetFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/NoInternetFragment.kt index 99cdc7675..d7598d1f4 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/NoInternetFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/NoInternetFragment.kt @@ -2,9 +2,7 @@ package com.github.libretube.ui.fragments import android.content.Intent import android.os.Bundle -import android.view.LayoutInflater import android.view.View -import android.view.ViewGroup import androidx.fragment.app.Fragment import androidx.navigation.fragment.findNavController import com.github.libretube.R @@ -14,22 +12,12 @@ import com.github.libretube.helpers.NetworkHelper import com.github.libretube.ui.activities.SettingsActivity import com.google.android.material.snackbar.Snackbar -class NoInternetFragment: Fragment() { - private var _binding: FragmentNointernetBinding? = null - private val binding get() = _binding!! - - override fun onCreateView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle? - ): View { - _binding = FragmentNointernetBinding.inflate(layoutInflater) - return binding.root - } +class NoInternetFragment: Fragment(R.layout.fragment_nointernet) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + val binding = FragmentNointernetBinding.bind(view) binding.retryButton.setOnClickListener { if (NetworkHelper.isNetworkAvailable(requireContext())) { NavigationHelper.restartMainActivity(requireContext()) diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt index 13d08adda..37ee91c94 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt @@ -1538,4 +1538,9 @@ class PlayerFragment : Fragment(), OnlinePlayerOptions { fun onKeyUp(keyCode: Int): Boolean { return _binding?.player?.onKeyBoardAction(keyCode) ?: false } + + override fun onDestroyView() { + super.onDestroyView() + _binding = null + } } diff --git a/app/src/main/java/com/github/libretube/ui/sheets/PlayingQueueSheet.kt b/app/src/main/java/com/github/libretube/ui/sheets/PlayingQueueSheet.kt index 671700c60..1eb224a7f 100644 --- a/app/src/main/java/com/github/libretube/ui/sheets/PlayingQueueSheet.kt +++ b/app/src/main/java/com/github/libretube/ui/sheets/PlayingQueueSheet.kt @@ -207,6 +207,11 @@ class PlayingQueueSheet : ExpandedBottomSheet() { .show() } + override fun onDestroyView() { + super.onDestroyView() + _binding = null + } + companion object { const val PLAYING_QUEUE_REQUEST_KEY = "playing_queue_request_key" } diff --git a/app/src/main/java/com/github/libretube/ui/sheets/SleepTimerSheet.kt b/app/src/main/java/com/github/libretube/ui/sheets/SleepTimerSheet.kt index 895ed4817..399761c8e 100644 --- a/app/src/main/java/com/github/libretube/ui/sheets/SleepTimerSheet.kt +++ b/app/src/main/java/com/github/libretube/ui/sheets/SleepTimerSheet.kt @@ -70,4 +70,9 @@ class SleepTimerSheet : ExpandedBottomSheet() { updateTimeLeftText() } } + + override fun onDestroyView() { + super.onDestroyView() + _binding = null + } }