From 94ca6c5e062ab3f18e76db464cc6a0e16ce420b1 Mon Sep 17 00:00:00 2001 From: Isira Seneviratne Date: Sun, 3 Sep 2023 06:40:17 +0530 Subject: [PATCH] refactor: Improve view binding --- .../github/libretube/ui/activities/HelpActivity.kt | 4 +--- .../libretube/ui/activities/NoInternetActivity.kt | 4 +--- .../github/libretube/ui/views/DoubleTapOverlay.kt | 7 +------ .../com/github/libretube/ui/views/DropdownMenu.kt | 12 ++++-------- .../libretube/ui/views/PlayerGestureControlsView.kt | 7 +------ 5 files changed, 8 insertions(+), 26 deletions(-) diff --git a/app/src/main/java/com/github/libretube/ui/activities/HelpActivity.kt b/app/src/main/java/com/github/libretube/ui/activities/HelpActivity.kt index f49972b63..c5d5c9dc7 100644 --- a/app/src/main/java/com/github/libretube/ui/activities/HelpActivity.kt +++ b/app/src/main/java/com/github/libretube/ui/activities/HelpActivity.kt @@ -7,12 +7,10 @@ import com.github.libretube.ui.base.BaseActivity import com.google.android.material.card.MaterialCardView class HelpActivity : BaseActivity() { - private lateinit var binding: ActivityHelpBinding - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - binding = ActivityHelpBinding.inflate(layoutInflater) + val binding = ActivityHelpBinding.inflate(layoutInflater) setContentView(binding.root) binding.toolbar.setNavigationOnClickListener { diff --git a/app/src/main/java/com/github/libretube/ui/activities/NoInternetActivity.kt b/app/src/main/java/com/github/libretube/ui/activities/NoInternetActivity.kt index 83a4580d5..59258fd8d 100644 --- a/app/src/main/java/com/github/libretube/ui/activities/NoInternetActivity.kt +++ b/app/src/main/java/com/github/libretube/ui/activities/NoInternetActivity.kt @@ -14,12 +14,10 @@ import com.github.libretube.ui.fragments.DownloadsFragment import com.google.android.material.snackbar.Snackbar class NoInternetActivity : BaseActivity() { - private lateinit var binding: ActivityNointernetBinding - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - binding = ActivityNointernetBinding.inflate(layoutInflater) + val binding = ActivityNointernetBinding.inflate(layoutInflater) // retry button binding.retryButton.setOnClickListener { if (NetworkHelper.isNetworkAvailable(this)) { diff --git a/app/src/main/java/com/github/libretube/ui/views/DoubleTapOverlay.kt b/app/src/main/java/com/github/libretube/ui/views/DoubleTapOverlay.kt index 1c98462ff..95766f856 100644 --- a/app/src/main/java/com/github/libretube/ui/views/DoubleTapOverlay.kt +++ b/app/src/main/java/com/github/libretube/ui/views/DoubleTapOverlay.kt @@ -10,10 +10,5 @@ class DoubleTapOverlay( context: Context, attrs: AttributeSet? = null ) : LinearLayout(context, attrs) { - var binding: DoubleTapOverlayBinding - - init { - val layoutInflater = LayoutInflater.from(context) - binding = DoubleTapOverlayBinding.inflate(layoutInflater, this, true) - } + val binding = DoubleTapOverlayBinding.inflate(LayoutInflater.from(context), this, true) } diff --git a/app/src/main/java/com/github/libretube/ui/views/DropdownMenu.kt b/app/src/main/java/com/github/libretube/ui/views/DropdownMenu.kt index f1becc3e0..a432b89dc 100644 --- a/app/src/main/java/com/github/libretube/ui/views/DropdownMenu.kt +++ b/app/src/main/java/com/github/libretube/ui/views/DropdownMenu.kt @@ -15,7 +15,8 @@ class DropdownMenu( context: Context, attributeSet: AttributeSet ) : FrameLayout(context, attributeSet) { - var binding: DropdownMenuBinding + private val binding = + DropdownMenuBinding.inflate(LayoutInflater.from(context), this, true) @Suppress("UNCHECKED_CAST") var adapter: ArrayAdapter @@ -26,15 +27,10 @@ class DropdownMenu( } val selectedItemPosition: Int - get() = adapter.getPosition( - binding.autoCompleteTextView.text.toString() - ) + get() = adapter.getPosition(binding.autoCompleteTextView.text.toString()) init { - val layoutInflater = LayoutInflater.from(context) - binding = DropdownMenuBinding.inflate(layoutInflater, this, true) - - val ta = getContext().obtainStyledAttributes(attributeSet, R.styleable.DropdownMenu, 0, 0) + val ta = context.obtainStyledAttributes(attributeSet, R.styleable.DropdownMenu, 0, 0) try { binding.textInputLayout.hint = ta.getString(R.styleable.DropdownMenu_hint) diff --git a/app/src/main/java/com/github/libretube/ui/views/PlayerGestureControlsView.kt b/app/src/main/java/com/github/libretube/ui/views/PlayerGestureControlsView.kt index 7478b5997..d1216a4fc 100644 --- a/app/src/main/java/com/github/libretube/ui/views/PlayerGestureControlsView.kt +++ b/app/src/main/java/com/github/libretube/ui/views/PlayerGestureControlsView.kt @@ -11,12 +11,7 @@ class PlayerGestureControlsView( context: Context, attrs: AttributeSet? = null ) : ConstraintLayout(context, attrs) { - var binding: PlayerGestureControlsViewBinding - - init { - val layoutInflater = LayoutInflater.from(context) - binding = PlayerGestureControlsViewBinding.inflate(layoutInflater, this, true) - } + val binding = PlayerGestureControlsViewBinding.inflate(LayoutInflater.from(context), this, true) override fun onSizeChanged(width: Int, height: Int, oldWidth: Int, oldHeight: Int) { super.onSizeChanged(width, height, oldHeight, oldHeight)