Horis пре 1 година
родитељ
комит
c21fde2add

+ 2 - 2
app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BaseBooksAdapter.kt

@@ -135,8 +135,8 @@ abstract class BaseBooksAdapter<VH : RecyclerView.ViewHolder>(
 
 
 
 
     interface CallBack {
     interface CallBack {
-        fun onItemClick(position: Int)
-        fun onItemLongClick(position: Int)
+        fun onItemClick(item: Any)
+        fun onItemLongClick(item: Any)
         fun isUpdate(bookUrl: String): Boolean
         fun isUpdate(bookUrl: String): Boolean
         fun getItems(): List<Any>
         fun getItems(): List<Any>
     }
     }

+ 8 - 8
app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BooksAdapterGrid.kt

@@ -34,12 +34,12 @@ class BooksAdapterGrid(context: Context, callBack: CallBack) :
     ) {
     ) {
         when (holder) {
         when (holder) {
             is BookViewHolder -> (getItem(position) as? Book)?.let {
             is BookViewHolder -> (getItem(position) as? Book)?.let {
-                holder.registerListener(position)
+                holder.registerListener(it)
                 holder.onBind(it, position, payloads)
                 holder.onBind(it, position, payloads)
             }
             }
 
 
             is GroupViewHolder -> (getItem(position) as? BookGroup)?.let {
             is GroupViewHolder -> (getItem(position) as? BookGroup)?.let {
-                holder.registerListener(position)
+                holder.registerListener(it)
                 holder.onBind(it, position, payloads)
                 holder.onBind(it, position, payloads)
             }
             }
         }
         }
@@ -78,12 +78,12 @@ class BooksAdapterGrid(context: Context, callBack: CallBack) :
             }
             }
         }
         }
 
 
-        fun registerListener(position: Int) {
+        fun registerListener(item: Any) {
             binding.root.setOnClickListener {
             binding.root.setOnClickListener {
-                callBack.onItemClick(position)
+                callBack.onItemClick(item)
             }
             }
             binding.root.onLongClick {
             binding.root.onLongClick {
-                callBack.onItemLongClick(position)
+                callBack.onItemLongClick(item)
             }
             }
         }
         }
 
 
@@ -128,12 +128,12 @@ class BooksAdapterGrid(context: Context, callBack: CallBack) :
             }
             }
         }
         }
 
 
-        fun registerListener(position: Int) {
+        fun registerListener(item: Any) {
             binding.root.setOnClickListener {
             binding.root.setOnClickListener {
-                callBack.onItemClick(position)
+                callBack.onItemClick(item)
             }
             }
             binding.root.onLongClick {
             binding.root.onLongClick {
-                callBack.onItemLongClick(position)
+                callBack.onItemLongClick(item)
             }
             }
         }
         }
 
 

+ 8 - 8
app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BooksAdapterList.kt

@@ -33,12 +33,12 @@ class BooksAdapterList(context: Context, callBack: CallBack) :
     ) {
     ) {
         when (holder) {
         when (holder) {
             is BookViewHolder -> (getItem(position) as? Book)?.let {
             is BookViewHolder -> (getItem(position) as? Book)?.let {
-                holder.registerListener(position)
+                holder.registerListener(it)
                 holder.onBind(it, position, payloads)
                 holder.onBind(it, position, payloads)
             }
             }
 
 
             is GroupViewHolder -> (getItem(position) as? BookGroup)?.let {
             is GroupViewHolder -> (getItem(position) as? BookGroup)?.let {
-                holder.registerListener(position)
+                holder.registerListener(it)
                 holder.onBind(it, position, payloads)
                 holder.onBind(it, position, payloads)
             }
             }
         }
         }
@@ -87,12 +87,12 @@ class BooksAdapterList(context: Context, callBack: CallBack) :
             }
             }
         }
         }
 
 
-        fun registerListener(position: Int) {
+        fun registerListener(item: Any) {
             binding.root.setOnClickListener {
             binding.root.setOnClickListener {
-                callBack.onItemClick(position)
+                callBack.onItemClick(item)
             }
             }
             binding.root.onLongClick {
             binding.root.onLongClick {
-                callBack.onItemLongClick(position)
+                callBack.onItemLongClick(item)
             }
             }
         }
         }
 
 
@@ -144,12 +144,12 @@ class BooksAdapterList(context: Context, callBack: CallBack) :
             }
             }
         }
         }
 
 
-        fun registerListener(position: Int) {
+        fun registerListener(item: Any) {
             binding.root.setOnClickListener {
             binding.root.setOnClickListener {
-                callBack.onItemClick(position)
+                callBack.onItemClick(item)
             }
             }
             binding.root.onLongClick {
             binding.root.onLongClick {
-                callBack.onItemLongClick(position)
+                callBack.onItemLongClick(item)
             }
             }
         }
         }
 
 

+ 4 - 4
app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt

@@ -211,8 +211,8 @@ class BookshelfFragment2() : BaseBookshelfFragment(R.layout.fragment_bookshelf2)
         }
         }
     }
     }
 
 
-    override fun onItemClick(position: Int) {
-        when (val item = booksAdapter.getItem(position)) {
+    override fun onItemClick(item: Any) {
+        when (item) {
             is Book -> when {
             is Book -> when {
                 item.isAudio ->
                 item.isAudio ->
                     startActivity<AudioPlayActivity> {
                     startActivity<AudioPlayActivity> {
@@ -231,8 +231,8 @@ class BookshelfFragment2() : BaseBookshelfFragment(R.layout.fragment_bookshelf2)
         }
         }
     }
     }
 
 
-    override fun onItemLongClick(position: Int) {
-        when (val item = booksAdapter.getItem(position)) {
+    override fun onItemLongClick(item: Any) {
+        when (item) {
             is Book -> startActivity<BookInfoActivity> {
             is Book -> startActivity<BookInfoActivity> {
                 putExtra("name", item.name)
                 putExtra("name", item.name)
                 putExtra("author", item.author)
                 putExtra("author", item.author)