Search for library (not working)
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package eu.kanade.mangafeed.presenter;
|
||||
|
||||
import de.greenrobot.event.EventBus;
|
||||
|
||||
public class BasePresenter {
|
||||
|
||||
public void registerForStickyEvents() {
|
||||
EventBus.getDefault().registerSticky(this);
|
||||
}
|
||||
|
||||
public void registerForEvents() {
|
||||
EventBus.getDefault().register(this);
|
||||
}
|
||||
|
||||
public void unregisterForEvents() {
|
||||
EventBus.getDefault().unregister(this);
|
||||
}
|
||||
}
|
||||
@@ -10,11 +10,17 @@ import eu.kanade.mangafeed.data.helpers.PreferencesHelper;
|
||||
import eu.kanade.mangafeed.data.models.Manga;
|
||||
import eu.kanade.mangafeed.ui.activity.MangaDetailActivity;
|
||||
import eu.kanade.mangafeed.view.LibraryView;
|
||||
import rx.Observable;
|
||||
import rx.Subscription;
|
||||
import rx.android.schedulers.AndroidSchedulers;
|
||||
import rx.schedulers.Schedulers;
|
||||
import rx.subjects.PublishSubject;
|
||||
import timber.log.Timber;
|
||||
import uk.co.ribot.easyadapter.EasyAdapter;
|
||||
|
||||
import static rx.android.schedulers.AndroidSchedulers.mainThread;
|
||||
|
||||
public class LibraryPresenter {
|
||||
public class LibraryPresenter extends BasePresenter {
|
||||
|
||||
private LibraryView view;
|
||||
|
||||
@@ -24,6 +30,9 @@ public class LibraryPresenter {
|
||||
@Inject
|
||||
PreferencesHelper prefs;
|
||||
|
||||
private Subscription searchViewSubscription;
|
||||
private PublishSubject<Observable<String>> searchViewPublishSubject;
|
||||
|
||||
public LibraryPresenter(LibraryView view) {
|
||||
this.view = view;
|
||||
App.getComponent(view.getActivity()).inject(this);
|
||||
@@ -45,10 +54,24 @@ public class LibraryPresenter {
|
||||
view.getActivity().startActivity(intent);
|
||||
}
|
||||
|
||||
public void initializeSearch() {
|
||||
searchViewPublishSubject = PublishSubject.create();
|
||||
searchViewSubscription = Observable.switchOnNext(searchViewPublishSubject)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(Timber::w);
|
||||
}
|
||||
|
||||
public void initializeMangas() {
|
||||
db.manga.get()
|
||||
.observeOn(mainThread())
|
||||
.subscribe(view::setMangas);
|
||||
}
|
||||
|
||||
public void onQueryTextChange(String query) {
|
||||
if (searchViewPublishSubject != null) {
|
||||
searchViewPublishSubject.onNext(Observable.just(query));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import eu.kanade.mangafeed.data.helpers.DatabaseHelper;
|
||||
import eu.kanade.mangafeed.data.models.Manga;
|
||||
import eu.kanade.mangafeed.view.MangaDetailView;
|
||||
|
||||
public class MangaDetailPresenter {
|
||||
public class MangaDetailPresenter extends BasePresenter {
|
||||
|
||||
private MangaDetailView view;
|
||||
|
||||
@@ -20,14 +20,6 @@ public class MangaDetailPresenter {
|
||||
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);
|
||||
|
||||
Reference in New Issue
Block a user