|  | @@ -48,12 +48,12 @@ import eu.kanade.tachiyomi.ui.manga.MangaController
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.ui.source.browse.BrowseSourceController
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.ui.source.global_search.GlobalSearchController
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.ui.webview.WebViewActivity
 | 
	
		
			
				|  |  | +import eu.kanade.tachiyomi.util.lang.launchInUI
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.util.lang.truncateCenter
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.util.system.toast
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.util.view.snack
 | 
	
		
			
				|  |  |  import eu.kanade.tachiyomi.util.view.visible
 | 
	
		
			
				|  |  |  import jp.wasabeef.glide.transformations.CropSquareTransformation
 | 
	
		
			
				|  |  | -import kotlinx.coroutines.flow.launchIn
 | 
	
		
			
				|  |  |  import kotlinx.coroutines.flow.onEach
 | 
	
		
			
				|  |  |  import reactivecircus.flowbinding.android.view.clicks
 | 
	
		
			
				|  |  |  import reactivecircus.flowbinding.android.view.longClicks
 | 
	
	
		
			
				|  | @@ -95,12 +95,12 @@ class MangaInfoController : NucleusController<MangaInfoPresenter>(),
 | 
	
		
			
				|  |  |          // Set onclickListener to toggle favorite when favorite button clicked.
 | 
	
		
			
				|  |  |          binding.btnFavorite.clicks()
 | 
	
		
			
				|  |  |              .onEach { onFavoriteClick() }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // Set onLongClickListener to manage categories when favorite button is clicked.
 | 
	
		
			
				|  |  |          binding.btnFavorite.longClicks()
 | 
	
		
			
				|  |  |              .onEach { onFavoriteLongClick() }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          if (presenter.source is HttpSource) {
 | 
	
		
			
				|  |  |              binding.btnWebview.visible()
 | 
	
	
		
			
				|  | @@ -108,64 +108,64 @@ class MangaInfoController : NucleusController<MangaInfoPresenter>(),
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              binding.btnWebview.clicks()
 | 
	
		
			
				|  |  |                  .onEach { openInWebView() }
 | 
	
		
			
				|  |  | -                .launchIn(uiScope)
 | 
	
		
			
				|  |  | +                .launchInUI()
 | 
	
		
			
				|  |  |              binding.btnShare.clicks()
 | 
	
		
			
				|  |  |                  .onEach { shareManga() }
 | 
	
		
			
				|  |  | -                .launchIn(uiScope)
 | 
	
		
			
				|  |  | +                .launchInUI()
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // Set SwipeRefresh to refresh manga data.
 | 
	
		
			
				|  |  |          binding.swipeRefresh.refreshes()
 | 
	
		
			
				|  |  |              .onEach { fetchMangaFromSource() }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaFullTitle.longClicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  copyToClipboard(view.context.getString(R.string.title), binding.mangaFullTitle.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaFullTitle.clicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  performGlobalSearch(binding.mangaFullTitle.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaArtist.longClicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  copyToClipboard(binding.mangaArtistLabel.text.toString(), binding.mangaArtist.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaArtist.clicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  performGlobalSearch(binding.mangaArtist.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaAuthor.longClicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  copyToClipboard(binding.mangaAuthor.text.toString(), binding.mangaAuthor.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaAuthor.clicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  performGlobalSearch(binding.mangaAuthor.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaSummary.longClicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  copyToClipboard(view.context.getString(R.string.description), binding.mangaSummary.text.toString())
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          binding.mangaCover.longClicks()
 | 
	
		
			
				|  |  |              .onEach {
 | 
	
		
			
				|  |  |                  copyToClipboard(view.context.getString(R.string.title), presenter.manga.title)
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            .launchIn(uiScope)
 | 
	
		
			
				|  |  | +            .launchInUI()
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
 |