Show chapter list

This commit is contained in:
inorichi
2015-09-28 15:02:46 +02:00
parent d3b6b8721e
commit d47e469665
14 changed files with 189 additions and 51 deletions
@@ -4,7 +4,6 @@ import android.content.Intent;
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.models.Manga;
@@ -16,28 +15,28 @@ import static rx.android.schedulers.AndroidSchedulers.mainThread;
public class LibraryPresenter {
private LibraryView mLibraryView;
private LibraryView view;
@Inject
public DatabaseHelper db;
public LibraryPresenter(LibraryView libraryView) {
mLibraryView = libraryView;
App.getComponent(libraryView.getActivity()).inject(this);
public LibraryPresenter(LibraryView view) {
this.view = view;
App.getComponent(view.getActivity()).inject(this);
}
public void onMangaClick(EasyAdapter<Manga> adapter, int position) {
Intent intent = MangaDetailActivity.newIntent(
mLibraryView.getActivity(),
view.getActivity(),
adapter.getItem(position)
);
mLibraryView.getActivity().startActivity(intent);
view.getActivity().startActivity(intent);
}
public void initializeMangas() {
db.manga.get()
.observeOn(mainThread())
.subscribe(mLibraryView::setMangas);
.subscribe(view::setMangas);
}
}
@@ -0,0 +1,44 @@
package eu.kanade.mangafeed.presenter;
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.models.Manga;
import eu.kanade.mangafeed.view.MangaDetailView;
public class MangaDetailPresenter {
private MangaDetailView view;
@Inject
DatabaseHelper db;
public MangaDetailPresenter(MangaDetailView view) {
this.view = view;
App.getComponent(view.getActivity()).inject(this);
}
public void onStart() {
EventBus.getDefault().registerSticky(this);
}
public void onStop() {
EventBus.getDefault().unregister(this);
}
public void onEventMainThread(Manga manga) {
view.loadManga(manga);
initializeChapters(manga);
}
public static void newIntent(Manga manga) {
EventBus.getDefault().postSticky(manga);
}
public void initializeChapters(Manga manga) {
db.chapter.get(manga)
.subscribe(view::setChapters);
}
}