Allow reading downloaded chapters

This commit is contained in:
inorichi
2015-11-03 21:27:56 +01:00
parent 62ae572c72
commit 11638ae917
20 changed files with 93 additions and 19 deletions
@@ -1,6 +1,5 @@
package eu.kanade.mangafeed.ui.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -11,16 +10,17 @@ import java.util.List;
import eu.davidea.flexibleadapter.FlexibleAdapter;
import eu.kanade.mangafeed.R;
import eu.kanade.mangafeed.data.models.Chapter;
import eu.kanade.mangafeed.ui.fragment.MangaChaptersFragment;
import eu.kanade.mangafeed.ui.fragment.base.BaseFragment;
import eu.kanade.mangafeed.ui.holder.ChaptersHolder;
public class ChaptersAdapter extends FlexibleAdapter<ChaptersHolder, Chapter> {
private Context context;
private BaseFragment fragment;
public OnItemClickListener clickListener;
public ChaptersAdapter(BaseFragment fragment) {
this.context = fragment.getActivity();
this.fragment = fragment;
mItems = new ArrayList<>();
clickListener = (OnItemClickListener) fragment;
}
@@ -30,14 +30,14 @@ public class ChaptersAdapter extends FlexibleAdapter<ChaptersHolder, Chapter> {
@Override
public ChaptersHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(context).inflate(R.layout.item_chapter, parent, false);
View v = LayoutInflater.from(fragment.getActivity()).inflate(R.layout.item_chapter, parent, false);
return new ChaptersHolder(v, this);
}
@Override
public void onBindViewHolder(ChaptersHolder holder, int position) {
final Chapter chapter = getItem(position);
holder.onSetValues(context, chapter);
holder.onSetValues(fragment.getActivity(), chapter);
}
public void setItems(List<Chapter> chapters) {
@@ -49,4 +49,8 @@ public class ChaptersAdapter extends FlexibleAdapter<ChaptersHolder, Chapter> {
boolean onListItemClick(int position);
void onListItemLongClick(int position);
}
public MangaChaptersFragment getMangaChaptersFragment() {
return (MangaChaptersFragment) fragment;
}
}
@@ -37,6 +37,8 @@ public class CatalogueHolder extends ItemViewHolder<Manga> {
.diskCacheStrategy(DiskCacheStrategy.RESULT)
.centerCrop()
.into(image);
} else {
image.setImageResource(android.R.color.transparent);
}
}
}
@@ -38,7 +38,7 @@ public class ChaptersHolder extends RecyclerView.ViewHolder implements
public void onSetValues(Context context, Chapter chapter) {
title.setText(chapter.name);
download_icon.setImageResource(R.drawable.ic_file_download_black_48dp);
if (chapter.read) {
title.setTextColor(ContextCompat.getColor(context, R.color.chapter_read_text));
@@ -52,6 +52,14 @@ public class ChaptersHolder extends RecyclerView.ViewHolder implements
pages.setText("");
}
if (chapter.downloaded == Chapter.UNKNOWN) {
adapter.getMangaChaptersFragment().getPresenter().checkIsChapterDownloaded(chapter);
}
if (chapter.downloaded == Chapter.DOWNLOADED)
download_icon.setImageResource(R.drawable.ic_action_delete_36dp);
else if (chapter.downloaded == Chapter.NOT_DOWNLOADED)
download_icon.setImageResource(R.drawable.ic_file_download_black_36dp);
toggleActivation();
}