Create a AppNameTextView component to clean up dialogs

This commit is contained in:
Bnyro 2022-12-26 17:17:36 +01:00
parent 5cdf670b15
commit 0dfb47143b
17 changed files with 41 additions and 58 deletions

View File

@ -17,7 +17,6 @@ import com.github.libretube.extensions.TAG
import com.github.libretube.extensions.toStreamItem
import com.github.libretube.extensions.toastFromMainThread
import com.github.libretube.ui.models.PlaylistViewModel
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@ -31,7 +30,6 @@ class AddToPlaylistDialog(
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
binding = DialogAddtoplaylistBinding.inflate(layoutInflater)
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
binding.createPlaylist.setOnClickListener {
CreatePlaylistDialog {

View File

@ -9,7 +9,6 @@ import com.github.libretube.R
import com.github.libretube.api.PlaylistsHelper
import com.github.libretube.databinding.DialogCreatePlaylistBinding
import com.github.libretube.util.TextUtils
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
class CreatePlaylistDialog(
@ -20,8 +19,6 @@ class CreatePlaylistDialog(
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
binding = DialogCreatePlaylistBinding.inflate(layoutInflater)
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
binding.clonePlaylist.setOnClickListener {
val playlistUrl = binding.playlistUrl.text.toString()
if (!TextUtils.validateUrl(playlistUrl)) {

View File

@ -9,7 +9,6 @@ import com.github.libretube.databinding.DialogCustomInstanceBinding
import com.github.libretube.db.DatabaseHolder.Companion.Database
import com.github.libretube.db.obj.CustomInstance
import com.github.libretube.extensions.query
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import java.net.URL
@ -64,8 +63,6 @@ class CustomInstanceDialog : DialogFragment() {
}
}
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
return MaterialAlertDialogBuilder(requireContext())
.setView(binding.root)
.show()

View File

@ -11,7 +11,6 @@ import com.github.libretube.api.RetrofitInstance
import com.github.libretube.databinding.DialogDeleteAccountBinding
import com.github.libretube.extensions.TAG
import com.github.libretube.util.PreferenceHelper
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
class DeleteAccountDialog : DialogFragment() {
@ -32,8 +31,6 @@ class DeleteAccountDialog : DialogFragment() {
}
}
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
return MaterialAlertDialogBuilder(requireContext())
.setView(binding.root)
.show()

View File

@ -19,7 +19,6 @@ import com.github.libretube.extensions.sanitize
import com.github.libretube.services.DownloadService
import com.github.libretube.util.ImageHelper
import com.github.libretube.util.MetadataHelper
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import java.io.IOException
import retrofit2.HttpException
@ -34,8 +33,6 @@ class DownloadDialog(
fetchAvailableSources()
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
binding.audioRadio.setOnClickListener {
binding.videoSpinner.visibility = View.GONE
}

View File

@ -13,7 +13,6 @@ import com.github.libretube.databinding.DialogLoginBinding
import com.github.libretube.extensions.TAG
import com.github.libretube.util.PreferenceHelper
import com.github.libretube.util.TextUtils
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
class LoginDialog : DialogFragment() {
@ -57,8 +56,6 @@ class LoginDialog : DialogFragment() {
}
}
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
return MaterialAlertDialogBuilder(requireContext())
.setView(binding.root)
.show()

View File

@ -1,5 +1,6 @@
package com.github.libretube.ui.dialogs
import android.annotation.SuppressLint
import android.app.Dialog
import android.os.Bundle
import android.widget.Toast
@ -7,12 +8,12 @@ import androidx.fragment.app.DialogFragment
import com.github.libretube.R
import com.github.libretube.databinding.DialogLogoutBinding
import com.github.libretube.util.PreferenceHelper
import com.github.libretube.util.ThemeHelper
import com.google.android.material.dialog.MaterialAlertDialogBuilder
class LogoutDialog : DialogFragment() {
private lateinit var binding: DialogLogoutBinding
@SuppressLint("SetTextI18n")
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
binding = DialogLogoutBinding.inflate(layoutInflater)
@ -27,8 +28,6 @@ class LogoutDialog : DialogFragment() {
activity?.recreate()
}
binding.title.text = ThemeHelper.getStyledAppName(requireContext())
return MaterialAlertDialogBuilder(requireContext())
.setView(binding.root)
.show()

View File

@ -4,7 +4,6 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.github.libretube.databinding.FragmentBookmarksBinding
import com.github.libretube.db.DatabaseHolder.Companion.Database

View File

@ -0,0 +1,23 @@
package com.github.libretube.ui.views
import android.content.Context
import android.util.AttributeSet
import android.util.TypedValue
import androidx.appcompat.widget.AppCompatTextView
import com.github.libretube.util.ThemeHelper
class AppNameTextView : AppCompatTextView {
constructor(context: Context, attributeSet: AttributeSet?) : super(context, attributeSet)
constructor(context: Context) : super(context, null)
init {
text = ThemeHelper.getStyledAppName(context)
textSize = spToPixel(10f)
}
@Suppress("SameParameterValue")
private fun spToPixel(sp: Float): Float {
return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp, resources.displayMetrics)
}
}

View File

@ -5,14 +5,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<Spinner
android:id="@+id/playlists_spinner"

View File

@ -4,14 +4,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<com.google.android.material.textfield.TextInputLayout
style="@style/CustomDialogTextInputLayout"

View File

@ -4,14 +4,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<com.google.android.material.textfield.TextInputLayout
style="@style/CustomDialogTextInputLayout"

View File

@ -5,14 +5,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<com.google.android.material.textfield.TextInputLayout
style="@style/CustomDialogTextInputLayout"

View File

@ -5,14 +5,11 @@
android:orientation="vertical"
android:paddingHorizontal="20dp">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"

View File

@ -5,14 +5,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<com.google.android.material.textfield.TextInputLayout
style="@style/CustomDialogTextInputLayout"

View File

@ -4,14 +4,11 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
<com.github.libretube.ui.views.AppNameTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:gravity="center"
android:text="@string/app_name"
android:textSize="20sp" />
android:gravity="center" />
<TextView
android:id="@+id/user"
@ -24,7 +21,7 @@
<Button
android:id="@+id/logout"
style="@style/CustomDialogButton"
android:layout_marginRight="16dp"
android:layout_marginEnd="16dp"
android:text="@string/logout" />
</LinearLayout>

View File

@ -53,7 +53,7 @@
<string name="playlistCreated">Playlist created.</string>
<string name="playlistName">Playlist name</string>
<string name="emptyPlaylistName">The playlist name can\'t be empty</string>
<string name="addToPlaylist">Add</string>
<string name="addToPlaylist">Add to playlist</string>
<string name="success">Done.</string>
<string name="fail">Failed :(</string>
<string name="about">About</string>