Răsfoiți Sursa

Replaced Resources with ResourceProvider

Vadik Sirekanyan 2 ani în urmă
părinte
comite
97a13a6acc

+ 0 - 4
app/src/main/java/org/sirekanyan/knigopis/common/extensions/Activity.kt

@@ -1,10 +1,6 @@
 package org.sirekanyan.knigopis.common.extensions
 
 import android.app.Activity
-import android.view.ViewGroup
 import org.sirekanyan.knigopis.App
 
 val Activity.app get() = application as App
-
-fun Activity.getRootView(): ViewGroup =
-    findViewById(android.R.id.content)

+ 3 - 3
app/src/main/java/org/sirekanyan/knigopis/common/extensions/CommonView.kt

@@ -1,9 +1,9 @@
 package org.sirekanyan.knigopis.common.extensions
 
 import android.content.Context
-import android.content.res.Resources
 import android.view.View
 import com.google.android.material.snackbar.Snackbar
+import org.sirekanyan.knigopis.common.android.ResourceProvider
 import org.sirekanyan.knigopis.common.android.toast.CommonView
 
 val CommonView<*>.containerView: View
@@ -12,8 +12,8 @@ val CommonView<*>.containerView: View
 val CommonView<*>.context: Context
     get() = containerView.context
 
-val CommonView<*>.resources: Resources
-    get() = containerView.resources
+val CommonView<*>.resources: ResourceProvider
+    get() = containerView.resourceProvider
 
 fun CommonView<*>.toast(messageId: Int, vararg args: Any) {
     context.showToast(messageId, *args)

+ 4 - 4
app/src/main/java/org/sirekanyan/knigopis/common/extensions/Resources.kt

@@ -1,15 +1,15 @@
 package org.sirekanyan.knigopis.common.extensions
 
-import android.content.res.Resources
 import org.sirekanyan.knigopis.R
+import org.sirekanyan.knigopis.common.android.ResourceProvider
 
-fun Resources.getTitleString(title: String): String =
+fun ResourceProvider.getTitleString(title: String): String =
     title.ifEmpty { getString(R.string.common_book_notitle) }
 
-fun Resources.getAuthorString(author: String): String =
+fun ResourceProvider.getAuthorString(author: String): String =
     author.ifEmpty { getString(R.string.common_book_noauthor) }
 
-fun Resources.getFullTitleString(title: String, author: String): String =
+fun ResourceProvider.getFullTitleString(title: String, author: String): String =
     if (author.isEmpty()) {
         getTitleString(title)
     } else {

+ 3 - 0
app/src/main/java/org/sirekanyan/knigopis/common/extensions/View.kt

@@ -3,6 +3,9 @@ package org.sirekanyan.knigopis.common.extensions
 import android.view.View
 import androidx.interpolator.view.animation.FastOutLinearInInterpolator
 import androidx.interpolator.view.animation.LinearOutSlowInInterpolator
+import org.sirekanyan.knigopis.App
+
+val View.resourceProvider get() = (context.applicationContext as App).resourceProvider
 
 val View.isVisible get() = visibility == View.VISIBLE
 

+ 1 - 1
app/src/main/java/org/sirekanyan/knigopis/feature/books/BookDataViewHolder.kt

@@ -16,7 +16,7 @@ class BookDataViewHolder(
     onLongClick: (BookDataModel) -> Unit,
 ) : CommonViewHolder<BookModel>(containerView) {
 
-    private val resources = containerView.resources
+    private val resources = containerView.resourceProvider
     private val bookImage = containerView.findViewById<ImageView>(R.id.bookImage)
     private val bookTitle = containerView.findViewById<TextView>(R.id.bookTitle)
     private val bookAuthor = containerView.findViewById<TextView>(R.id.bookAuthor)

+ 1 - 1
app/src/main/java/org/sirekanyan/knigopis/feature/books/BooksView.kt

@@ -51,7 +51,7 @@ class BooksViewImpl(
     init {
         booksRecyclerView.adapter = booksAdapter
         booksRecyclerView.addItemDecoration(HeaderItemDecoration(StickyHeaderImpl(booksAdapter)))
-        booksRecyclerView.addOnScrollListener(FabOnScrollListener(resources, addBookButton))
+        booksRecyclerView.addOnScrollListener(FabOnScrollListener(containerView.resources, addBookButton))
         addBookButton.setOnClickListener { callbacks.onAddBookClicked() }
     }