mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Create empty MangaCatalogue
This commit is contained in:
		| @@ -7,6 +7,7 @@ import javax.inject.Singleton; | ||||
| import dagger.Component; | ||||
| import eu.kanade.mangafeed.data.DataModule; | ||||
| import eu.kanade.mangafeed.presenter.CataloguePresenter; | ||||
| import eu.kanade.mangafeed.presenter.MangaCataloguePresenter; | ||||
| import eu.kanade.mangafeed.presenter.SourcePresenter; | ||||
| import eu.kanade.mangafeed.presenter.LibraryPresenter; | ||||
| import eu.kanade.mangafeed.presenter.MangaDetailPresenter; | ||||
| @@ -24,6 +25,8 @@ public interface AppComponent { | ||||
|     void inject(MangaDetailPresenter mangaDetailPresenter); | ||||
|     void inject(SourcePresenter sourcePresenter); | ||||
|     void inject(CataloguePresenter cataloguePresenter); | ||||
|     void inject(MangaCataloguePresenter mangaCataloguePresenter); | ||||
|  | ||||
|     Application application(); | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -11,11 +11,13 @@ import java.util.concurrent.TimeUnit; | ||||
|  | ||||
| import javax.inject.Inject; | ||||
|  | ||||
| import de.greenrobot.event.EventBus; | ||||
| import eu.kanade.mangafeed.App; | ||||
| import eu.kanade.mangafeed.data.helpers.DatabaseHelper; | ||||
| import eu.kanade.mangafeed.data.helpers.SourceManager; | ||||
| import eu.kanade.mangafeed.data.models.Manga; | ||||
| import eu.kanade.mangafeed.sources.Source; | ||||
| import eu.kanade.mangafeed.ui.activity.MangaCatalogueActivity; | ||||
| import eu.kanade.mangafeed.ui.adapter.CatalogueHolder; | ||||
| import eu.kanade.mangafeed.view.CatalogueView; | ||||
| import rx.Observable; | ||||
| @@ -65,13 +67,14 @@ public class CataloguePresenter extends BasePresenter { | ||||
|     private void initializeSource() { | ||||
|         int sourceId = view.getIntent().getIntExtra(Intent.EXTRA_UID, -1); | ||||
|         selectedSource = sourceManager.get(sourceId); | ||||
|         view.setSourceTitle(selectedSource.getName()); | ||||
|         view.setTitle(selectedSource.getName()); | ||||
|     } | ||||
|  | ||||
|     private void initializeAdapter() { | ||||
|         adapter = new EasyAdapter<>(view.getActivity(), CatalogueHolder.class); | ||||
|         view.setAdapter(adapter); | ||||
|         view.setScrollListener(); | ||||
|         view.setMangaClickListener(); | ||||
|     } | ||||
|  | ||||
|     private void initializeSearch() { | ||||
| @@ -171,6 +174,13 @@ public class CataloguePresenter extends BasePresenter { | ||||
|         return localManga; | ||||
|     } | ||||
|  | ||||
|     public void onMangaClick(int position) { | ||||
|         Intent intent = new Intent(view.getActivity(), MangaCatalogueActivity.class); | ||||
|         Manga selectedManga = adapter.getItem(position); | ||||
|         EventBus.getDefault().postSticky(selectedManga); | ||||
|         view.getActivity().startActivity(intent); | ||||
|     } | ||||
|  | ||||
|     public void onQueryTextChange(String query) { | ||||
|         if (mSearchViewPublishSubject != null) | ||||
|             mSearchViewPublishSubject.onNext(Observable.just(query)); | ||||
|   | ||||
| @@ -0,0 +1,29 @@ | ||||
| package eu.kanade.mangafeed.presenter; | ||||
|  | ||||
| import eu.kanade.mangafeed.App; | ||||
| import eu.kanade.mangafeed.data.models.Manga; | ||||
| import eu.kanade.mangafeed.view.MangaCatalogueView; | ||||
|  | ||||
| public class MangaCataloguePresenter extends BasePresenter { | ||||
|  | ||||
|     private MangaCatalogueView view; | ||||
|     private Manga manga; | ||||
|  | ||||
|     public MangaCataloguePresenter(MangaCatalogueView view) { | ||||
|         this.view = view; | ||||
|         App.getComponent(view.getActivity()).inject(this); | ||||
|     } | ||||
|  | ||||
|     public void initialize() { | ||||
|  | ||||
|     } | ||||
|  | ||||
|     public void onEventMainThread(Manga manga) { | ||||
|         this.manga = manga; | ||||
|         initializeManga(); | ||||
|     } | ||||
|  | ||||
|     private void initializeManga() { | ||||
|         view.setTitle(manga.title); | ||||
|     } | ||||
| } | ||||
| @@ -33,12 +33,12 @@ public class CatalogueActivity extends BaseActivity implements CatalogueView { | ||||
|  | ||||
|     private CataloguePresenter presenter; | ||||
|  | ||||
|     private EndlessScrollListener scrollListener; | ||||
|     private EndlessScrollListener scroll_listener; | ||||
|  | ||||
|     @Override | ||||
|     public void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_catalogue_list); | ||||
|         setContentView(R.layout.activity_catalogue); | ||||
|         ButterKnife.bind(this); | ||||
|  | ||||
|         setupToolbar(toolbar); | ||||
| @@ -80,7 +80,7 @@ public class CatalogueActivity extends BaseActivity implements CatalogueView { | ||||
|     // CatalogueView | ||||
|  | ||||
|     @Override | ||||
|     public void setSourceTitle(String title) { | ||||
|     public void setTitle(String title) { | ||||
|         setToolbarTitle(title); | ||||
|     } | ||||
|  | ||||
| @@ -89,9 +89,17 @@ public class CatalogueActivity extends BaseActivity implements CatalogueView { | ||||
|         manga_list.setAdapter(adapter); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void setMangaClickListener() { | ||||
|         manga_list.setOnItemClickListener( | ||||
|                 (parent, view, position, id) -> | ||||
|                         presenter.onMangaClick(position) | ||||
|         ); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void setScrollListener() { | ||||
|         scrollListener = new EndlessScrollListener() { | ||||
|         scroll_listener = new EndlessScrollListener() { | ||||
|             @Override | ||||
|             public boolean onLoadMore(int page, int totalItemsCount) { | ||||
|                 presenter.loadMoreMangas(page); | ||||
| @@ -99,12 +107,12 @@ public class CatalogueActivity extends BaseActivity implements CatalogueView { | ||||
|             } | ||||
|         }; | ||||
|  | ||||
|         manga_list.setOnScrollListener(scrollListener); | ||||
|         manga_list.setOnScrollListener(scroll_listener); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void resetScrollListener() { | ||||
|         scrollListener.resetScroll(); | ||||
|         scroll_listener.resetScroll(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|   | ||||
| @@ -0,0 +1,47 @@ | ||||
| package eu.kanade.mangafeed.ui.activity; | ||||
|  | ||||
| import android.os.Bundle; | ||||
| import android.support.v7.widget.Toolbar; | ||||
|  | ||||
| import butterknife.Bind; | ||||
| import butterknife.ButterKnife; | ||||
| import eu.kanade.mangafeed.R; | ||||
| import eu.kanade.mangafeed.presenter.MangaCataloguePresenter; | ||||
| import eu.kanade.mangafeed.view.MangaCatalogueView; | ||||
|  | ||||
| public class MangaCatalogueActivity extends BaseActivity implements MangaCatalogueView { | ||||
|  | ||||
|     @Bind(R.id.toolbar) | ||||
|     Toolbar toolbar; | ||||
|  | ||||
|     private MangaCataloguePresenter presenter; | ||||
|  | ||||
|     @Override | ||||
|     public void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_manga_catalogue); | ||||
|         ButterKnife.bind(this); | ||||
|  | ||||
|         setupToolbar(toolbar); | ||||
|  | ||||
|         presenter = new MangaCataloguePresenter(this); | ||||
|         presenter.initialize(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void onStart() { | ||||
|         super.onStart(); | ||||
|         presenter.registerForStickyEvents(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void onStop() { | ||||
|         presenter.unregisterForEvents(); | ||||
|         super.onStop(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void setTitle(String title) { | ||||
|         setToolbarTitle(title); | ||||
|     } | ||||
| } | ||||
| @@ -7,8 +7,9 @@ import uk.co.ribot.easyadapter.EasyAdapter; | ||||
|  | ||||
| public interface CatalogueView extends BaseView { | ||||
|     Intent getIntent(); | ||||
|     void setSourceTitle(String title); | ||||
|     void setTitle(String title); | ||||
|     void setAdapter(EasyAdapter adapter); | ||||
|     void setMangaClickListener(); | ||||
|     void setScrollListener(); | ||||
|     void resetScrollListener(); | ||||
|     void showProgressBar(); | ||||
|   | ||||
| @@ -0,0 +1,5 @@ | ||||
| package eu.kanade.mangafeed.view; | ||||
|  | ||||
| public interface MangaCatalogueView extends BaseView { | ||||
|     void setTitle(String title); | ||||
| } | ||||
		Reference in New Issue
	
	Block a user