mirror of
https://github.com/MinimalBible/MinimalBible
synced 2025-07-13 03:35:20 -04:00
Seek-to working!
For some reason, things at 1st Timothy onward don't work, but everything up to that point does. I'll call that enough for now. PLEASE NOTE: This code needs serious refactoring and testing, dependencies are all over the place. Functionally it's OK for now though.
This commit is contained in:
@ -17,6 +17,7 @@ import dagger.Provides;
|
||||
import de.devland.esperandro.Esperandro;
|
||||
import rx.functions.Action1;
|
||||
import rx.functions.Func1;
|
||||
import rx.subjects.PublishSubject;
|
||||
|
||||
/**
|
||||
* Modules used for the BibleViewer activity
|
||||
@ -101,4 +102,10 @@ public class BibleViewerModules {
|
||||
VerseLookup verseLookup(@Named("MainBook") Book b) {
|
||||
return new VerseLookup(b);
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
PublishSubject<BookScrollEvent> scrollEventProvider() {
|
||||
return PublishSubject.create();
|
||||
}
|
||||
}
|
@ -14,6 +14,8 @@ import org.crosswire.jsword.book.Book;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import rx.subjects.PublishSubject;
|
||||
|
||||
/**
|
||||
* ExpandableListView for managing books of the Bible.
|
||||
* We extend from @link{BaseNavigationDrawerFragment} so we can inherit some of the lifecycle
|
||||
@ -27,6 +29,9 @@ public class BookChapterNavFragment extends NavDrawerFragment {
|
||||
@Inject @Named("MainBook")
|
||||
Book mainBook;
|
||||
|
||||
@Inject
|
||||
PublishSubject<BookScrollEvent> scrollListener;
|
||||
|
||||
ExpandableListView mActualListView;
|
||||
|
||||
@Override
|
||||
@ -35,9 +40,11 @@ public class BookChapterNavFragment extends NavDrawerFragment {
|
||||
Injector i = (Injector) getActivity();
|
||||
i.inject(this);
|
||||
|
||||
BibleMenu menu = new BibleMenu(mainBook);
|
||||
mActualListView = (ExpandableListView) inflater.inflate(
|
||||
R.layout.fragment_expandable_navigation_drawer, container, false);
|
||||
mActualListView.setAdapter(new BibleMenu(mainBook));
|
||||
mActualListView.setAdapter(menu);
|
||||
mActualListView.setOnChildClickListener(menu.getMenuClickListener(scrollListener));
|
||||
|
||||
mActualListView.setItemChecked(mCurrentSelectedPosition, true);
|
||||
return mActualListView;
|
||||
|
@ -1,20 +1,17 @@
|
||||
package org.bspeice.minimalbible.activity.viewer;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
|
||||
import org.bspeice.minimalbible.Injector;
|
||||
import org.bspeice.minimalbible.R;
|
||||
import org.bspeice.minimalbible.activity.BaseFragment;
|
||||
import org.bspeice.minimalbible.service.lookup.VerseLookup;
|
||||
import org.crosswire.jsword.book.Book;
|
||||
|
||||
import javax.inject.Inject;
|
||||
@ -22,10 +19,6 @@ import javax.inject.Named;
|
||||
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.InjectView;
|
||||
import rx.Observable;
|
||||
import rx.android.schedulers.AndroidSchedulers;
|
||||
import rx.functions.Action1;
|
||||
import rx.schedulers.Schedulers;
|
||||
import rx.subjects.PublishSubject;
|
||||
|
||||
/**
|
||||
@ -40,14 +33,11 @@ public class BookFragment extends BaseFragment {
|
||||
@Named("MainBook")
|
||||
Book mBook;
|
||||
@Inject
|
||||
VerseLookup verseLookup;
|
||||
PublishSubject<BookScrollEvent> scrollEventProvider;
|
||||
|
||||
@InjectView(R.id.book_content)
|
||||
RecyclerView bookContent;
|
||||
|
||||
|
||||
PublishSubject<String> titleReceiver = PublishSubject.create();
|
||||
|
||||
/**
|
||||
* Returns a new instance of this fragment for the given book.
|
||||
*/
|
||||
@ -101,7 +91,10 @@ public class BookFragment extends BaseFragment {
|
||||
((BibleViewer)getActivity()).setActionBarTitle(b.getInitials());
|
||||
|
||||
final RecyclerView.LayoutManager manager = new LinearLayoutManager(getActivity());
|
||||
BookAdapter adapter = new BookAdapter(b);
|
||||
bookContent.setLayoutManager(manager);
|
||||
bookContent.setAdapter(new BookAdapter(b));
|
||||
bookContent.setAdapter(adapter);
|
||||
|
||||
adapter.bindScrollHandler(scrollEventProvider, manager);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user