mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-31 06:17:57 +01:00 
			
		
		
		
	Rewrote nav drawer to Kotlin + UI updates
Added launch screen + new Header Removed MaterialDrawer library. Implemented Nav Draw from Support Library
This commit is contained in:
		| @@ -24,6 +24,7 @@ import eu.kanade.tachiyomi.util.toast | ||||
| import eu.kanade.tachiyomi.widget.EndlessGridScrollListener | ||||
| import eu.kanade.tachiyomi.widget.EndlessListScrollListener | ||||
| import kotlinx.android.synthetic.main.fragment_catalogue.* | ||||
| import kotlinx.android.synthetic.main.toolbar.* | ||||
| import nucleus.factory.RequiresPresenter | ||||
| import rx.Subscription | ||||
| import rx.android.schedulers.AndroidSchedulers | ||||
|   | ||||
| @@ -28,7 +28,7 @@ class CatalogueGridHolder(private val view: View, adapter: CatalogueAdapter, lis | ||||
|         view.title.text = manga.title | ||||
|  | ||||
|         // Set visibility of in library icon. | ||||
|         view.favorite_sticker.visibility = if (manga.favorite) View.VISIBLE else View.GONE | ||||
| //        view.favorite_sticker.visibility = if (manga.favorite) View.VISIBLE else View.GONE | ||||
|  | ||||
|         // Set alpha of thumbnail. | ||||
|         view.thumbnail.alpha = if (manga.favorite) 0.3f else 1.0f | ||||
|   | ||||
| @@ -7,6 +7,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.download.DownloadService | ||||
| import eu.kanade.tachiyomi.data.download.model.Download | ||||
| import eu.kanade.tachiyomi.ui.base.fragment.BaseRxFragment | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import eu.kanade.tachiyomi.util.setInformationDrawable | ||||
| import kotlinx.android.synthetic.main.activity_main.* | ||||
| import kotlinx.android.synthetic.main.fragment_download_queue.* | ||||
| import nucleus.factory.RequiresPresenter | ||||
| import rx.Subscription | ||||
| @@ -73,6 +76,9 @@ class DownloadFragment : BaseRxFragment<DownloadPresenter>() { | ||||
|     override fun onViewCreated(view: View, savedState: Bundle?) { | ||||
|         setToolbarTitle(R.string.label_download_queue) | ||||
|  | ||||
|         // Check if download queue is empty and update information accordingly. | ||||
|         setInformationView() | ||||
|  | ||||
|         // Initialize adapter. | ||||
|         adapter = DownloadAdapter(activity) | ||||
|         recycler.adapter = adapter | ||||
| @@ -138,6 +144,9 @@ class DownloadFragment : BaseRxFragment<DownloadPresenter>() { | ||||
|         startButton?.isVisible = !running && !presenter.downloadQueue.isEmpty() | ||||
|         pauseButton?.isVisible = running | ||||
|         clearButton?.isVisible = running | ||||
|  | ||||
|         // Check if download queue is empty and update information accordingly. | ||||
|         setInformationView() | ||||
|     } | ||||
|  | ||||
|     /** | ||||
| @@ -177,4 +186,14 @@ class DownloadFragment : BaseRxFragment<DownloadPresenter>() { | ||||
|         return recycler.findViewHolderForItemId(download.chapter.id) as? DownloadHolder | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Set information view when queue is empty | ||||
|      */ | ||||
|     private fun setInformationView() { | ||||
|         if (presenter.downloadQueue.isEmpty()) { | ||||
|             ( activity as MainActivity).image_view.setInformationDrawable(R.drawable.ic_file_download_grey_128dp) | ||||
|             ( activity as MainActivity).text_label.text = getString(R.string.information_no_downloads) | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -20,7 +20,9 @@ import eu.kanade.tachiyomi.ui.base.fragment.BaseRxFragment | ||||
| import eu.kanade.tachiyomi.ui.category.CategoryActivity | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import eu.kanade.tachiyomi.util.inflate | ||||
| import eu.kanade.tachiyomi.util.setInformationDrawable | ||||
| import eu.kanade.tachiyomi.util.toast | ||||
| import kotlinx.android.synthetic.main.activity_main.* | ||||
| import kotlinx.android.synthetic.main.fragment_library.* | ||||
| import nucleus.factory.RequiresPresenter | ||||
| import org.greenrobot.eventbus.EventBus | ||||
| @@ -124,7 +126,7 @@ class LibraryFragment : BaseRxFragment<LibraryPresenter>(), ActionMode.Callback | ||||
|     override fun onViewCreated(view: View, savedState: Bundle?) { | ||||
|         setToolbarTitle(getString(R.string.label_library)) | ||||
|  | ||||
|         appBar = (activity as MainActivity).appBar | ||||
|         appBar = (activity as MainActivity).appbar | ||||
|         tabs = appBar.inflate(R.layout.library_tab_layout) as TabLayout | ||||
|  | ||||
|         // Workaround to prevent: Tab belongs to a different TabLayout. | ||||
| @@ -257,6 +259,15 @@ class LibraryFragment : BaseRxFragment<LibraryPresenter>(), ActionMode.Callback | ||||
|      * @param mangaMap a map containing the manga for each category. | ||||
|      */ | ||||
|     fun onNextLibraryUpdate(categories: List<Category>, mangaMap: Map<Int, List<Manga>>) { | ||||
|         // Check if library is empty and update information accordingly. | ||||
|         if (mangaMap.isEmpty()) { | ||||
|             (activity as MainActivity).image_view.setInformationDrawable(R.drawable.ic_book_grey_128dp) | ||||
|             (activity as MainActivity).text_label.text = getString(R.string.information_empty_library) | ||||
|         } else { | ||||
|             ( activity as MainActivity).image_view.setInformationDrawable(null) | ||||
|             ( activity as MainActivity).text_label.text = "" | ||||
|         } | ||||
|  | ||||
|         // Get the current active category. | ||||
|         val activeCat = if (adapter.categories != null) view_pager.currentItem else activeCategory | ||||
|  | ||||
|   | ||||
| @@ -1,220 +0,0 @@ | ||||
| package eu.kanade.tachiyomi.ui.main; | ||||
|  | ||||
| import android.content.Intent; | ||||
| import android.os.Bundle; | ||||
| import android.support.design.widget.AppBarLayout; | ||||
| import android.support.v4.app.Fragment; | ||||
| import android.support.v4.content.ContextCompat; | ||||
| import android.support.v4.widget.DrawerLayout; | ||||
| import android.support.v7.widget.Toolbar; | ||||
| import android.widget.FrameLayout; | ||||
|  | ||||
| import com.mikepenz.materialdrawer.Drawer; | ||||
| import com.mikepenz.materialdrawer.DrawerBuilder; | ||||
| import com.mikepenz.materialdrawer.holder.ImageHolder; | ||||
| import com.mikepenz.materialdrawer.model.DividerDrawerItem; | ||||
| import com.mikepenz.materialdrawer.model.PrimaryDrawerItem; | ||||
|  | ||||
| import butterknife.Bind; | ||||
| import butterknife.ButterKnife; | ||||
| import eu.kanade.tachiyomi.R; | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseActivity; | ||||
| import eu.kanade.tachiyomi.ui.catalogue.CatalogueFragment; | ||||
| import eu.kanade.tachiyomi.ui.download.DownloadFragment; | ||||
| import eu.kanade.tachiyomi.ui.library.LibraryFragment; | ||||
| import eu.kanade.tachiyomi.ui.recent.RecentChaptersFragment; | ||||
| import eu.kanade.tachiyomi.ui.setting.SettingsActivity; | ||||
| import icepick.State; | ||||
| import nucleus.view.ViewWithPresenter; | ||||
|  | ||||
| public class MainActivity extends BaseActivity { | ||||
|  | ||||
|     @Bind(R.id.appbar) AppBarLayout appBar; | ||||
|     @Bind(R.id.toolbar) Toolbar toolbar; | ||||
|     @Bind(R.id.drawer_container) FrameLayout container; | ||||
|     @State | ||||
|     int selectedItem; | ||||
|     private Drawer drawer; | ||||
|     private FragmentStack fragmentStack; | ||||
|     private int prevIdentifier = -1; | ||||
|  | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedState) { | ||||
|         super.onCreate(savedState); | ||||
|  | ||||
|         // Do not let the launcher create a new activity | ||||
|         if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) { | ||||
|             finish(); | ||||
|             return; | ||||
|         } | ||||
|  | ||||
|         setContentView(R.layout.activity_main); | ||||
|         ButterKnife.bind(this); | ||||
|  | ||||
|         setupToolbar(toolbar); | ||||
|  | ||||
|         fragmentStack = new FragmentStack(this, getSupportFragmentManager(), R.id.content_layout, | ||||
|                 fragment -> { | ||||
|                     if (fragment instanceof ViewWithPresenter) | ||||
|                         ((ViewWithPresenter) fragment).getPresenter().destroy(); | ||||
|                 }); | ||||
|  | ||||
|         drawer = new DrawerBuilder() | ||||
|                 .withActivity(this) | ||||
|                 .withRootView(container) | ||||
|                 .withToolbar(toolbar) | ||||
|                 .withActionBarDrawerToggleAnimated(true) | ||||
|                 .withOnDrawerNavigationListener(view -> { | ||||
|                     if (fragmentStack.size() > 1) { | ||||
|                         onBackPressed(); | ||||
|                         return true; | ||||
|                     } | ||||
|                     return false; | ||||
|                 }) | ||||
|                 .addDrawerItems( | ||||
|                         new PrimaryDrawerItem() | ||||
|                                 .withName(R.string.label_library) | ||||
|                                 .withIdentifier(R.id.nav_drawer_library) | ||||
|                                 .withIcon(ContextCompat.getDrawable(this, R.drawable.ic_book_grey_24dp)), | ||||
|                         new PrimaryDrawerItem() | ||||
|                                 .withName(R.string.label_recent_updates) | ||||
|                                 .withIdentifier(R.id.nav_drawer_recent_updates) | ||||
|                                 .withIcon(ContextCompat.getDrawable(this, R.drawable.ic_history_grey_24dp)), | ||||
|                         new PrimaryDrawerItem() | ||||
|                                 .withName(R.string.label_catalogues) | ||||
|                                 .withIdentifier(R.id.nav_drawer_catalogues) | ||||
|                                 .withIcon(ContextCompat.getDrawable(this, R.drawable.ic_explore_grey_24dp)), | ||||
|                         new PrimaryDrawerItem() | ||||
|                                 .withName(R.string.label_download_queue) | ||||
|                                 .withIdentifier(R.id.nav_drawer_downloads) | ||||
|                                 .withIcon(ContextCompat.getDrawable(this, R.drawable.ic_file_download_grey_24dp)), | ||||
|                         new DividerDrawerItem(), | ||||
|                         new PrimaryDrawerItem() | ||||
|                                 .withName(R.string.label_settings) | ||||
|                                 .withIdentifier(R.id.nav_drawer_settings) | ||||
|                                 .withSelectable(false) | ||||
|                                 .withIcon(ContextCompat.getDrawable(this, R.drawable.ic_settings_grey_24dp)) | ||||
|                 ) | ||||
|                 .withSavedInstance(savedState) | ||||
|                 .withOnDrawerItemClickListener( | ||||
|                         (view, position, drawerItem) -> { | ||||
|                             if (drawerItem != null) { | ||||
|                                 int identifier = drawerItem.getIdentifier(); | ||||
|                                 if (prevIdentifier != -1) | ||||
|                                     setIconBackToGrey(prevIdentifier, identifier); | ||||
|                                 prevIdentifier = identifier; | ||||
|  | ||||
|                                 switch (identifier) { | ||||
|                                     case R.id.nav_drawer_library: | ||||
|                                         drawer.updateIcon(identifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_book_blue_24dp))); | ||||
|                                         setFragment(LibraryFragment.newInstance()); | ||||
|                                         break; | ||||
|                                     case R.id.nav_drawer_recent_updates: | ||||
|                                         drawer.updateIcon(identifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_history_blue_24dp))); | ||||
|                                         setFragment(RecentChaptersFragment.newInstance()); | ||||
|                                         break; | ||||
|                                     case R.id.nav_drawer_catalogues: | ||||
|                                         drawer.updateIcon(identifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_explore_blue_24dp))); | ||||
|                                         setFragment(CatalogueFragment.newInstance()); | ||||
|                                         break; | ||||
|                                     case R.id.nav_drawer_downloads: | ||||
|                                         drawer.updateIcon(identifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_file_download_blue_24dp))); | ||||
|                                         setFragment(DownloadFragment.newInstance()); | ||||
|                                         break; | ||||
|                                     case R.id.nav_drawer_settings: | ||||
|                                         startActivity(new Intent(this, SettingsActivity.class)); | ||||
|                                         break; | ||||
|                                 } | ||||
|                             } | ||||
|                             return false; | ||||
|                         } | ||||
|                 ) | ||||
|                 .build(); | ||||
|  | ||||
|         if (savedState != null) { | ||||
|             // Recover icon state after rotation | ||||
|             if (fragmentStack.size() > 1) { | ||||
|                 showBackArrow(); | ||||
|             } | ||||
|  | ||||
|             // Set saved selection | ||||
|             drawer.setSelection(selectedItem, false); | ||||
|         } else { | ||||
|             // Set default selection | ||||
|             drawer.setSelection(R.id.nav_drawer_library); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private void setIconBackToGrey(int prevIdentifier, int identifier) { | ||||
|         // Don't set to grey when settings | ||||
|         if (identifier == R.id.nav_drawer_settings) | ||||
|             return; | ||||
|  | ||||
|         switch (prevIdentifier) { | ||||
|             case R.id.nav_drawer_library: | ||||
|                 drawer.updateIcon(prevIdentifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_book_grey_24dp))); | ||||
|                 break; | ||||
|             case R.id.nav_drawer_recent_updates: | ||||
|                 drawer.updateIcon(prevIdentifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_history_grey_24dp))); | ||||
|                 break; | ||||
|             case R.id.nav_drawer_catalogues: | ||||
|                 drawer.updateIcon(prevIdentifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_explore_grey_24dp))); | ||||
|                 break; | ||||
|             case R.id.nav_drawer_downloads: | ||||
|                 drawer.updateIcon(prevIdentifier, new ImageHolder(ContextCompat.getDrawable(this, R.drawable.ic_file_download_grey_24dp))); | ||||
|                 break; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     protected void onSaveInstanceState(Bundle outState) { | ||||
|         selectedItem = drawer.getCurrentSelection(); | ||||
|         super.onSaveInstanceState(outState); | ||||
|     } | ||||
|  | ||||
|     public void setFragment(Fragment fragment) { | ||||
|         fragmentStack.replace(fragment); | ||||
|     } | ||||
|  | ||||
|     public void pushFragment(Fragment fragment) { | ||||
|         fragmentStack.push(fragment); | ||||
|         if (fragmentStack.size() > 1) { | ||||
|             showBackArrow(); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void onBackPressed() { | ||||
|         if (!fragmentStack.pop()) { | ||||
|             super.onBackPressed(); | ||||
|         } else if (fragmentStack.size() == 1) { | ||||
|             showHamburgerIcon(); | ||||
|             drawer.getActionBarDrawerToggle().syncState(); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private void showHamburgerIcon() { | ||||
|         if (getSupportActionBar() != null) { | ||||
|             getSupportActionBar().setDisplayHomeAsUpEnabled(false); | ||||
|             drawer.getActionBarDrawerToggle().setDrawerIndicatorEnabled(true); | ||||
|             drawer.getDrawerLayout().setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private void showBackArrow() { | ||||
|         if (getSupportActionBar() != null) { | ||||
|             drawer.getActionBarDrawerToggle().setDrawerIndicatorEnabled(false); | ||||
|             getSupportActionBar().setDisplayHomeAsUpEnabled(true); | ||||
|             drawer.getDrawerLayout().setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     public Toolbar getToolbar() { | ||||
|         return toolbar; | ||||
|     } | ||||
|  | ||||
|     public AppBarLayout getAppBar() { | ||||
|         return appBar; | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										101
									
								
								app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										101
									
								
								app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,101 @@ | ||||
| package eu.kanade.tachiyomi.ui.main | ||||
|  | ||||
| import android.content.Intent | ||||
| import android.os.Bundle | ||||
| import android.support.v4.app.Fragment | ||||
| import android.support.v4.view.GravityCompat | ||||
| import android.view.MenuItem | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseActivity | ||||
| import eu.kanade.tachiyomi.ui.catalogue.CatalogueFragment | ||||
| import eu.kanade.tachiyomi.ui.download.DownloadFragment | ||||
| import eu.kanade.tachiyomi.ui.library.LibraryFragment | ||||
| import eu.kanade.tachiyomi.ui.recent.RecentChaptersFragment | ||||
| import eu.kanade.tachiyomi.ui.setting.SettingsActivity | ||||
| import eu.kanade.tachiyomi.util.setInformationDrawable | ||||
| import kotlinx.android.synthetic.main.activity_main.* | ||||
| import kotlinx.android.synthetic.main.toolbar.* | ||||
| import nucleus.view.ViewWithPresenter | ||||
|  | ||||
| class MainActivity : BaseActivity() { | ||||
|     lateinit var fragmentStack: FragmentStack | ||||
|  | ||||
|  | ||||
|     override fun onCreate(savedState: Bundle?) { | ||||
|         setTheme(R.style.AppTheme); | ||||
|         super.onCreate(savedState) | ||||
|  | ||||
|         // Do not let the launcher create a new activity | ||||
|         if (intent.flags and Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT != 0) { | ||||
|             finish() | ||||
|             return | ||||
|         } | ||||
|  | ||||
|         // Inflate activity_edit_categories.xml. | ||||
|         setContentView(R.layout.activity_main) | ||||
|  | ||||
|         // Handle Toolbar | ||||
|         setupToolbar(toolbar) | ||||
|         supportActionBar?.setHomeAsUpIndicator(R.drawable.ic_menu_white_24dp) | ||||
|  | ||||
|         fragmentStack = FragmentStack(this, supportFragmentManager, R.id.frame_container | ||||
|         ) { fragment -> | ||||
|             if (fragment is ViewWithPresenter<*>) | ||||
|                 fragment.presenter.destroy() | ||||
|         } | ||||
|  | ||||
|         // Set behavior of Navigation drawer | ||||
|         nav_view.setNavigationItemSelectedListener( | ||||
|                 { menuItem -> | ||||
|                     // Make information view invisible | ||||
|                     image_view.setInformationDrawable(null) | ||||
|                     text_label.text = "" | ||||
|  | ||||
|                     when (menuItem.itemId) { | ||||
|                         R.id.nav_drawer_library -> { | ||||
|                             setFragment(LibraryFragment.newInstance()) | ||||
|                             menuItem.isChecked = true | ||||
|                             drawer.closeDrawer(GravityCompat.START) | ||||
|                         } | ||||
|                         R.id.nav_drawer_recent_updates -> { | ||||
|                             setFragment(RecentChaptersFragment.newInstance()) | ||||
|                             menuItem.isChecked = true | ||||
|                             drawer.closeDrawer(GravityCompat.START) | ||||
|                         } | ||||
|                         R.id.nav_drawer_catalogues -> { | ||||
|                             setFragment(CatalogueFragment.newInstance()) | ||||
|                             menuItem.isChecked = true | ||||
|                             drawer.closeDrawer(GravityCompat.START) | ||||
|                         } | ||||
|                         R.id.nav_drawer_downloads -> { | ||||
|                             setFragment(DownloadFragment.newInstance()) | ||||
|                             menuItem.isChecked = true | ||||
|                             drawer.closeDrawer(GravityCompat.START) | ||||
|                         } | ||||
|                         R.id.nav_drawer_settings -> { | ||||
|                             menuItem.isChecked = true | ||||
|                             startActivity(Intent(this, SettingsActivity::class.java)) | ||||
|                             drawer.closeDrawer(GravityCompat.START) | ||||
|                         } | ||||
|                     } | ||||
|                     true | ||||
|                 }) | ||||
|  | ||||
|         setFragment(LibraryFragment.newInstance()) | ||||
|     } | ||||
|  | ||||
|     override fun onOptionsItemSelected(item: MenuItem): Boolean { | ||||
|         when (item.itemId) { | ||||
|             android.R.id.home -> { | ||||
|                 drawer.openDrawer(GravityCompat.START) | ||||
|                 return true | ||||
|             } | ||||
|         } | ||||
|         return super.onOptionsItemSelected(item) | ||||
|     } | ||||
|  | ||||
|  | ||||
|     fun setFragment(fragment: Fragment) { | ||||
|         fragmentStack.replace(fragment) | ||||
|     } | ||||
| } | ||||
| @@ -15,7 +15,10 @@ import eu.kanade.tachiyomi.data.download.model.Download | ||||
| import eu.kanade.tachiyomi.ui.base.adapter.FlexibleViewHolder | ||||
| import eu.kanade.tachiyomi.ui.base.decoration.DividerItemDecoration | ||||
| import eu.kanade.tachiyomi.ui.base.fragment.BaseRxFragment | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import eu.kanade.tachiyomi.ui.reader.ReaderActivity | ||||
| import eu.kanade.tachiyomi.util.setInformationDrawable | ||||
| import kotlinx.android.synthetic.main.activity_main.* | ||||
| import kotlinx.android.synthetic.main.fragment_recent_chapters.* | ||||
| import nucleus.factory.RequiresPresenter | ||||
| import rx.Observable | ||||
| @@ -75,6 +78,11 @@ class RecentChaptersFragment : BaseRxFragment<RecentChaptersPresenter>(), Flexib | ||||
|  | ||||
|         // Update toolbar text | ||||
|         setToolbarTitle(R.string.label_recent_updates) | ||||
|  | ||||
|         // Check if recent chapters is empty and update information accordingly. | ||||
|         (activity as MainActivity).image_view.setInformationDrawable(R.drawable.ic_history_grey_128dp) | ||||
|         (activity as MainActivity).text_label.text = getString(R.string.information_no_recent) | ||||
|         (activity as MainActivity).information_layout.bringToFront() | ||||
|     } | ||||
|  | ||||
|     /** | ||||
| @@ -121,6 +129,10 @@ class RecentChaptersFragment : BaseRxFragment<RecentChaptersPresenter>(), Flexib | ||||
|      * @param chapters list of chapters | ||||
|      */ | ||||
|     fun onNextMangaChapters(chapters: List<Any>) { | ||||
|         if (!chapters.isEmpty()) { | ||||
|             ( activity as MainActivity).image_view.setInformationDrawable(null) | ||||
|             ( activity as MainActivity).text_label.text = "" | ||||
|         } | ||||
|         adapter.setItems(chapters) | ||||
|     } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user