|  |  |  | @ -8,7 +8,6 @@ import android.view.Menu | 
			
		
	
		
			
				
					|  |  |  |  | import android.view.MenuItem | 
			
		
	
		
			
				
					|  |  |  |  | import androidx.activity.viewModels | 
			
		
	
		
			
				
					|  |  |  |  | import androidx.appcompat.widget.SearchView | 
			
		
	
		
			
				
					|  |  |  |  | import androidx.core.view.isGone | 
			
		
	
		
			
				
					|  |  |  |  | import androidx.fragment.app.Fragment | 
			
		
	
		
			
				
					|  |  |  |  | import androidx.fragment.app.FragmentPagerAdapter | 
			
		
	
		
			
				
					|  |  |  |  | import com.google.android.material.tabs.TabLayout | 
			
		
	
	
		
			
				
					|  |  |  | @ -19,8 +18,10 @@ import io.legado.app.help.book.isLocalTxt | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.help.config.AppConfig | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.lib.theme.accentColor | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.lib.theme.primaryTextColor | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.model.ReadBook | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.ui.about.AppLogDialog | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.ui.book.toc.rule.TxtTocRuleDialog | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.ui.widget.dialog.WaitDialog | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.utils.applyTint | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.utils.gone | 
			
		
	
		
			
				
					|  |  |  |  | import io.legado.app.utils.showDialogFragment | 
			
		
	
	
		
			
				
					|  |  |  | @ -30,7 +31,8 @@ import io.legado.app.utils.visible | 
			
		
	
		
			
				
					|  |  |  |  | /** | 
			
		
	
		
			
				
					|  |  |  |  |  * 目录 | 
			
		
	
		
			
				
					|  |  |  |  |  */ | 
			
		
	
		
			
				
					|  |  |  |  | class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() { | 
			
		
	
		
			
				
					|  |  |  |  | class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(), | 
			
		
	
		
			
				
					|  |  |  |  |     TxtTocRuleDialog.CallBack { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     override val binding by viewBinding(ActivityChapterListBinding::inflate) | 
			
		
	
		
			
				
					|  |  |  |  |     override val viewModel by viewModels<TocViewModel>() | 
			
		
	
	
		
			
				
					|  |  |  | @ -38,6 +40,7 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() { | 
			
		
	
		
			
				
					|  |  |  |  |     private lateinit var tabLayout: TabLayout | 
			
		
	
		
			
				
					|  |  |  |  |     private var menu: Menu? = null | 
			
		
	
		
			
				
					|  |  |  |  |     private var searchView: SearchView? = null | 
			
		
	
		
			
				
					|  |  |  |  |     private val waitDialog by lazy { WaitDialog(this) } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     override fun onActivityCreated(savedInstanceState: Bundle?) { | 
			
		
	
		
			
				
					|  |  |  |  |         tabLayout = binding.titleBar.findViewById(R.id.tab_layout) | 
			
		
	
	
		
			
				
					|  |  |  | @ -122,6 +125,17 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() { | 
			
		
	
		
			
				
					|  |  |  |  |         return super.onCompatOptionsItemSelected(item) | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     override fun onTocRegexDialogResult(tocRegex: String) { | 
			
		
	
		
			
				
					|  |  |  |  |         ReadBook.book?.let { book -> | 
			
		
	
		
			
				
					|  |  |  |  |             book.tocUrl = tocRegex | 
			
		
	
		
			
				
					|  |  |  |  |             waitDialog.show() | 
			
		
	
		
			
				
					|  |  |  |  |             ReadBook.callBack?.loadChapterList(book) { | 
			
		
	
		
			
				
					|  |  |  |  |                 viewModel.initBook(book.bookUrl) | 
			
		
	
		
			
				
					|  |  |  |  |                 waitDialog.dismiss() | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Suppress("DEPRECATION") | 
			
		
	
		
			
				
					|  |  |  |  |     private inner class TabFragmentPageAdapter : | 
			
		
	
		
			
				
					|  |  |  |  |         FragmentPagerAdapter(supportFragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) { | 
			
		
	
	
		
			
				
					|  |  |  | 
 |