pull/433/head
gedoor 4 years ago
parent 8d67962f36
commit ea73c34f5d
  1. 3
      app/src/main/java/io/legado/app/data/dao/BookGroupDao.kt
  2. 5
      app/src/main/java/io/legado/app/ui/book/group/GroupManageDialog.kt
  3. 13
      app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt

@ -31,6 +31,9 @@ interface BookGroupDao {
@get:Query("SELECT * FROM book_groups ORDER BY `order`") @get:Query("SELECT * FROM book_groups ORDER BY `order`")
val all: List<BookGroup> val all: List<BookGroup>
@Query("update book_groups set show = 1 where groupId = :groupId")
fun enableGroup(groupId: Long)
@Insert(onConflict = OnConflictStrategy.REPLACE) @Insert(onConflict = OnConflictStrategy.REPLACE)
fun insert(vararg bookGroup: BookGroup) fun insert(vararg bookGroup: BookGroup)

@ -164,13 +164,16 @@ class GroupManageDialog : BaseDialogFragment(), Toolbar.OnMenuItemClickListener
} }
override fun areItemsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean { override fun areItemsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean {
return true val oldItem = oldItems[oldItemPosition]
val newItem = newItems[newItemPosition]
return oldItem.groupId == newItem.groupId
} }
override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean { override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean {
val oldItem = oldItems[oldItemPosition] val oldItem = oldItems[oldItemPosition]
val newItem = newItems[newItemPosition] val newItem = newItems[newItemPosition]
return oldItem.groupName == newItem.groupName return oldItem.groupName == newItem.groupName
&& oldItem.show == newItem.show
} }
} }

@ -12,6 +12,7 @@ import com.google.android.material.tabs.TabLayout
import io.legado.app.App import io.legado.app.App
import io.legado.app.R import io.legado.app.R
import io.legado.app.base.VMBaseFragment import io.legado.app.base.VMBaseFragment
import io.legado.app.constant.AppConst
import io.legado.app.constant.EventBus import io.legado.app.constant.EventBus
import io.legado.app.constant.PreferKey import io.legado.app.constant.PreferKey
import io.legado.app.data.entities.BookGroup import io.legado.app.data.entities.BookGroup
@ -123,10 +124,14 @@ class BookshelfFragment : VMBaseFragment<BookshelfViewModel>(R.layout.fragment_b
@Synchronized @Synchronized
private fun upGroup(data: List<BookGroup>) { private fun upGroup(data: List<BookGroup>) {
bookGroups.clear() if (data.isEmpty()) {
bookGroups.addAll(data) App.db.bookGroupDao().enableGroup(AppConst.bookGroupAllId)
adapter.notifyDataSetChanged() } else {
selectLastTab() bookGroups.clear()
bookGroups.addAll(data)
adapter.notifyDataSetChanged()
selectLastTab()
}
} }
@Synchronized @Synchronized

Loading…
Cancel
Save