From 4bf15a5a2cc4378d4d1380a55df654ab58baa23d Mon Sep 17 00:00:00 2001 From: inorichi Date: Tue, 19 Jan 2016 16:35:36 +0100 Subject: [PATCH] Allow to mark all previous chapters as read --- .../tachiyomi/ui/manga/chapter/ChaptersFragment.java | 5 +++++ .../tachiyomi/ui/manga/chapter/ChaptersHolder.java | 2 ++ .../tachiyomi/ui/manga/chapter/ChaptersPresenter.java | 9 +++++++++ app/src/main/res/menu/chapter_single.xml | 5 +++++ app/src/main/res/values/strings.xml | 1 + 5 files changed, 22 insertions(+) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersFragment.java b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersFragment.java index 557655da07..0ecd4e9395 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersFragment.java +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersFragment.java @@ -254,6 +254,11 @@ public class ChaptersFragment extends BaseRxFragment implemen return true; } + public boolean onMarkPreviousAsRead(Chapter chapter) { + getPresenter().markPreviousChaptersAsRead(chapter); + return true; + } + protected boolean onDownload(Observable chapters) { DownloadService.start(getActivity()); diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersHolder.java b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersHolder.java index b7ffe22591..b57813e821 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersHolder.java +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersHolder.java @@ -99,6 +99,8 @@ public class ChaptersHolder extends FlexibleViewHolder { return adapter.getFragment().onDownload(chapter); case R.id.action_delete: return adapter.getFragment().onDelete(chapter); + case R.id.action_mark_previous_as_read: + return adapter.getFragment().onMarkPreviousAsRead(item); } return false; }); diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersPresenter.java b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersPresenter.java index 798ca4e071..de89c1c796 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersPresenter.java +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersPresenter.java @@ -207,6 +207,15 @@ public class ChaptersPresenter extends BasePresenter { .subscribe()); } + public void markPreviousChaptersAsRead(Chapter selected) { + Observable.from(chapters) + .filter(c -> c.chapter_number > -1 && c.chapter_number < selected.chapter_number) + .doOnNext(c -> c.read = true) + .toList() + .flatMap(chapters -> db.insertChapters(chapters).asRxObservable()) + .subscribe(); + } + public void downloadChapters(Observable selectedChapters) { add(selectedChapters .toList() diff --git a/app/src/main/res/menu/chapter_single.xml b/app/src/main/res/menu/chapter_single.xml index 9137b2f805..36540bc66b 100644 --- a/app/src/main/res/menu/chapter_single.xml +++ b/app/src/main/res/menu/chapter_single.xml @@ -22,4 +22,9 @@ android:title="@string/action_mark_as_unread" android:icon="@drawable/ic_action_undone_all" app:showAsAction="ifRoom"/> + + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 22e0dc0ba9..025323e9d1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -19,6 +19,7 @@ Select all Mark as read Mark as unread + Mark previous as read Download Delete Update