| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -10,20 +10,22 @@ import io.legado.app.data.entities.Book | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.data.entities.BookChapter | 
					 | 
					 | 
					 | 
					import io.legado.app.data.entities.BookChapter | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.databinding.ItemChapterListBinding | 
					 | 
					 | 
					 | 
					import io.legado.app.databinding.ItemChapterListBinding | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.help.ContentProcessor | 
					 | 
					 | 
					 | 
					import io.legado.app.help.ContentProcessor | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import io.legado.app.help.coroutine.Coroutine | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.lib.theme.ThemeUtils | 
					 | 
					 | 
					 | 
					import io.legado.app.lib.theme.ThemeUtils | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.lib.theme.accentColor | 
					 | 
					 | 
					 | 
					import io.legado.app.lib.theme.accentColor | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.utils.getCompatColor | 
					 | 
					 | 
					 | 
					import io.legado.app.utils.getCompatColor | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.utils.gone | 
					 | 
					 | 
					 | 
					import io.legado.app.utils.gone | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import io.legado.app.utils.visible | 
					 | 
					 | 
					 | 
					import io.legado.app.utils.visible | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import kotlinx.coroutines.CoroutineScope | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					class ChapterListAdapter(context: Context, val callback: Callback) : | 
					 | 
					 | 
					 | 
					class ChapterListAdapter(context: Context, private val scope: CoroutineScope, val callback: Callback) : | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    RecyclerAdapter<BookChapter, ItemChapterListBinding>(context) { | 
					 | 
					 | 
					 | 
					    RecyclerAdapter<BookChapter, ItemChapterListBinding>(context) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    val replaceRules | 
					 | 
					 | 
					 | 
					    private val replaceRules | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        get() = callback.book?.let { | 
					 | 
					 | 
					 | 
					        get() = callback.book?.let { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            ContentProcessor.get(it.name, it.origin).getReplaceRules() | 
					 | 
					 | 
					 | 
					            ContentProcessor.get(it.name, it.origin).getReplaceRules() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    val useReplace get() = callback.book?.getUseReplaceRule() == true | 
					 | 
					 | 
					 | 
					    private val useReplace get() = callback.book?.getUseReplaceRule() == true | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    val cacheFileNames = hashSetOf<String>() | 
					 | 
					 | 
					 | 
					    val cacheFileNames = hashSetOf<String>() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    val diffCallBack = object : DiffUtil.ItemCallback<BookChapter>() { | 
					 | 
					 | 
					 | 
					    val diffCallBack = object : DiffUtil.ItemCallback<BookChapter>() { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -62,7 +64,11 @@ class ChapterListAdapter(context: Context, val callback: Callback) : | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                } else { | 
					 | 
					 | 
					 | 
					                } else { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                    tvChapterName.setTextColor(context.getCompatColor(R.color.primaryText)) | 
					 | 
					 | 
					 | 
					                    tvChapterName.setTextColor(context.getCompatColor(R.color.primaryText)) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                } | 
					 | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                tvChapterName.text = item.getDisplayTitle(replaceRules, useReplace) | 
					 | 
					 | 
					 | 
					                Coroutine.async(scope) { | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    item.getDisplayTitle(replaceRules, useReplace) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                }.onSuccess { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    tvChapterName.text = it | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                if (item.isVolume) { | 
					 | 
					 | 
					 | 
					                if (item.isVolume) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                    //卷名,如第一卷 突出显示 | 
					 | 
					 | 
					 | 
					                    //卷名,如第一卷 突出显示 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                    tvChapterItem.setBackgroundColor(context.getCompatColor(R.color.btn_bg_press)) | 
					 | 
					 | 
					 | 
					                    tvChapterItem.setBackgroundColor(context.getCompatColor(R.color.btn_bg_press)) | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |