Browse Source

Renamed sorting to book sorting

Vadik Sirekanyan 5 năm trước cách đây
mục cha
commit
91af556578

+ 4 - 4
app/src/main/java/com/sirekanyan/knigopis/feature/MainPresenter.kt

@@ -8,8 +8,8 @@ import com.sirekanyan.knigopis.model.CurrentTab
 import com.sirekanyan.knigopis.model.CurrentTab.BOOKS_TAB
 import com.sirekanyan.knigopis.model.CurrentTab.NOTES_TAB
 import com.sirekanyan.knigopis.repository.AuthRepository
+import com.sirekanyan.knigopis.repository.BookSorting
 import com.sirekanyan.knigopis.repository.Configuration
-import com.sirekanyan.knigopis.repository.Sorting
 import com.sirekanyan.knigopis.repository.Theme
 import org.acra.ACRA
 
@@ -48,7 +48,7 @@ class MainPresenterImpl(
         get() = currentTab?.let { MainPresenterState(it) }
 
     override fun init(tab: CurrentTab?) {
-        view.setSortOptionChecked(config.sorting)
+        view.setSortOptionChecked(config.bookSorting)
         view.setThemeOptionChecked(Theme.getCurrent())
         view.setCrashReportOptionChecked(config.crashReportEnabled)
         val defaultTab = if (auth.isAuthorized()) BOOKS_TAB else NOTES_TAB
@@ -118,9 +118,9 @@ class MainPresenterImpl(
         }
     }
 
-    override fun onSortOptionClicked(sorting: Sorting) {
+    override fun onSortOptionClicked(sorting: BookSorting) {
         if (currentTab == BOOKS_TAB) {
-            config.sorting = sorting
+            config.bookSorting = sorting
             refresh(isForce = true)
         }
     }

+ 7 - 7
app/src/main/java/com/sirekanyan/knigopis/feature/MainView.kt

@@ -13,7 +13,7 @@ import com.sirekanyan.knigopis.common.extensions.isNightMode
 import com.sirekanyan.knigopis.common.extensions.show
 import com.sirekanyan.knigopis.model.CurrentTab
 import com.sirekanyan.knigopis.model.CurrentTab.*
-import com.sirekanyan.knigopis.repository.Sorting
+import com.sirekanyan.knigopis.repository.BookSorting
 import com.sirekanyan.knigopis.repository.Theme
 import com.sirekanyan.knigopis.repository.cache.COMMON_PREFS_NAME
 import kotlinx.android.extensions.LayoutContainer
@@ -34,7 +34,7 @@ interface MainView : CommonView {
     fun setNavigation(itemId: Int)
     fun showLoginOption(isVisible: Boolean)
     fun showProfileOption(isVisible: Boolean)
-    fun setSortOptionChecked(sorting: Sorting)
+    fun setSortOptionChecked(sorting: BookSorting)
     fun setThemeOptionChecked(theme: Theme)
     fun setCrashReportOptionChecked(isChecked: Boolean)
 
@@ -43,7 +43,7 @@ interface MainView : CommonView {
         fun onLoginOptionClicked()
         fun onProfileOptionClicked()
         fun onAboutOptionClicked()
-        fun onSortOptionClicked(sorting: Sorting)
+        fun onSortOptionClicked(sorting: BookSorting)
         fun onThemeOptionClicked(theme: Theme)
         fun onCrashReportOptionClicked(isChecked: Boolean)
     }
@@ -60,7 +60,7 @@ class MainViewImpl(
 
     init {
         toolbar.inflateMenu(R.menu.options)
-        val sortOptions = Sorting.values().map(Sorting::id)
+        val sortOptions = BookSorting.values().map(BookSorting::id)
         val themeOptions = Theme.values().map(Theme::id)
         toolbar.setOnMenuItemClickListener { item ->
             when (item.itemId) {
@@ -78,7 +78,7 @@ class MainViewImpl(
                 }
                 in sortOptions -> {
                     item.isChecked = true
-                    callbacks.onSortOptionClicked(Sorting.getById(item.itemId))
+                    callbacks.onSortOptionClicked(BookSorting.getById(item.itemId))
                     true
                 }
                 in themeOptions -> {
@@ -129,7 +129,7 @@ class MainViewImpl(
         booksPage.show(tab == BOOKS_TAB)
         usersPage.show(tab == USERS_TAB)
         notesPage.show(tab == NOTES_TAB)
-        toolbar.menu.findItem(R.id.option_sort).isVisible = tab == BOOKS_TAB
+        toolbar.menu.findItem(R.id.option_sort_books).isVisible = tab == BOOKS_TAB
     }
 
     override fun showNavigation(isVisible: Boolean) {
@@ -157,7 +157,7 @@ class MainViewImpl(
         profileOption.isVisible = isVisible
     }
 
-    override fun setSortOptionChecked(sorting: Sorting) {
+    override fun setSortOptionChecked(sorting: BookSorting) {
         toolbar.menu.findItem(sorting.id).isChecked = true
     }
 

+ 8 - 8
app/src/main/java/com/sirekanyan/knigopis/repository/BookOrganizer.kt

@@ -25,11 +25,11 @@ class PlannedBookOrganizerImpl(
 ) : BookOrganizer<PlannedBook> {
 
     override fun sort(books: List<PlannedBook>): List<PlannedBook> =
-        when (config.sorting) {
-            Sorting.DEFAULT -> books.sortedByDescending(PlannedBook::priority)
-            Sorting.BY_TIME -> books.sortedByDescending(PlannedBook::updatedAt)
-            Sorting.BY_TITLE -> books.sortedBy(PlannedBook::title)
-            Sorting.BY_AUTHOR -> books.sortedBy(PlannedBook::author)
+        when (config.bookSorting) {
+            BookSorting.DEFAULT -> books.sortedByDescending(PlannedBook::priority)
+            BookSorting.BY_TIME -> books.sortedByDescending(PlannedBook::updatedAt)
+            BookSorting.BY_TITLE -> books.sortedBy(PlannedBook::title)
+            BookSorting.BY_AUTHOR -> books.sortedBy(PlannedBook::author)
         }
 
     override fun group(books: List<PlannedBook>): List<BookModel> {
@@ -59,14 +59,14 @@ class FinishedBookOrganizerImpl(
 ) : BookOrganizer<FinishedBook> {
 
     override fun sort(books: List<FinishedBook>): List<FinishedBook> =
-        when (config.sorting) {
-            Sorting.BY_TITLE -> {
+        when (config.bookSorting) {
+            BookSorting.BY_TITLE -> {
                 books.sortedWith(
                     compareByDescending(FinishedBook::readYear)
                         .then(compareBy(FinishedBook::title))
                 )
             }
-            Sorting.BY_AUTHOR -> {
+            BookSorting.BY_AUTHOR -> {
                 books.sortedWith(
                     compareByDescending(FinishedBook::readYear)
                         .then(compareBy(FinishedBook::author))

+ 2 - 2
app/src/main/java/com/sirekanyan/knigopis/repository/Sorting.kt → app/src/main/java/com/sirekanyan/knigopis/repository/BookSorting.kt

@@ -3,7 +3,7 @@ package com.sirekanyan.knigopis.repository
 import androidx.annotation.IdRes
 import com.sirekanyan.knigopis.R
 
-enum class Sorting(@IdRes val id: Int) {
+enum class BookSorting(@IdRes val id: Int) {
 
     DEFAULT(R.id.option_sort_by_progress),
     BY_TIME(R.id.option_sort_by_time),
@@ -11,7 +11,7 @@ enum class Sorting(@IdRes val id: Int) {
     BY_AUTHOR(R.id.option_sort_by_author);
 
     companion object {
-        fun getById(@IdRes id: Int): Sorting = values().find { it.id == id } ?: DEFAULT
+        fun getById(@IdRes id: Int): BookSorting = values().find { it.id == id } ?: DEFAULT
     }
 
 }

+ 2 - 2
app/src/main/java/com/sirekanyan/knigopis/repository/Configuration.kt

@@ -9,13 +9,13 @@ private const val PREFS_NAME = "config"
 
 interface Configuration {
     var theme: Theme
-    var sorting: Sorting
+    var bookSorting: BookSorting
     var crashReportEnabled: Boolean
 }
 
 class ConfigurationImpl(context: Application) : Configuration {
     internal val prefs = context.getSharedPreferences(PREFS_NAME, MODE_PRIVATE)
     override var theme by enumPreference(Theme.DEFAULT)
-    override var sorting by enumPreference(Sorting.DEFAULT)
+    override var bookSorting by enumPreference(BookSorting.DEFAULT)
     override var crashReportEnabled by booleanPreference()
 }

+ 1 - 1
app/src/main/res/menu/options.xml

@@ -17,7 +17,7 @@
         app:showAsAction="never" />
 
     <item
-        android:id="@+id/option_sort"
+        android:id="@+id/option_sort_books"
         android:title="@string/main_option_sort">
         <menu>
             <group android:checkableBehavior="single">