mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Load the last page when switching to the previous chapter
This commit is contained in:
		| @@ -164,6 +164,10 @@ public class ReaderActivity extends BaseRxActivity<ReaderPresenter> { | ||||
|     } | ||||
|  | ||||
|     public void onChapterReady(List<Page> pages, Manga manga, Chapter chapter, int currentPage) { | ||||
|         if (currentPage == -1) { | ||||
|             currentPage = pages.size() - 1; | ||||
|         } | ||||
|  | ||||
|         if (viewer == null) { | ||||
|             viewer = createViewer(manga); | ||||
|             getSupportFragmentManager().beginTransaction().replace(R.id.reader, viewer).commit(); | ||||
|   | ||||
| @@ -215,8 +215,12 @@ public class ReaderPresenter extends BasePresenter<ReaderActivity> { | ||||
|                 .doOnNext(mangaSync -> this.mangaSyncList = mangaSync); | ||||
|     } | ||||
|  | ||||
|     // Loads the given chapter | ||||
|     private void loadChapter(Chapter chapter) { | ||||
|         loadChapter(chapter, 0); | ||||
|     } | ||||
|  | ||||
|     // Loads the given chapter | ||||
|     private void loadChapter(Chapter chapter, int requestedPage) { | ||||
|         // Before loading the chapter, stop preloading (if it's working) and save current progress | ||||
|         stopPreloadingNextChapter(); | ||||
|  | ||||
| @@ -227,7 +231,7 @@ public class ReaderPresenter extends BasePresenter<ReaderActivity> { | ||||
|         if (!chapter.read && chapter.last_page_read != 0) | ||||
|             currentPage = chapter.last_page_read; | ||||
|         else | ||||
|             currentPage = 0; | ||||
|             currentPage = requestedPage; | ||||
|  | ||||
|         // Reset next and previous chapter. They have to be fetched again | ||||
|         nextChapter = null; | ||||
| @@ -312,7 +316,7 @@ public class ReaderPresenter extends BasePresenter<ReaderActivity> { | ||||
|     public boolean loadNextChapter() { | ||||
|         if (hasNextChapter()) { | ||||
|             onChapterLeft(); | ||||
|             loadChapter(nextChapter); | ||||
|             loadChapter(nextChapter, 0); | ||||
|             return true; | ||||
|         } | ||||
|         return false; | ||||
| @@ -321,7 +325,7 @@ public class ReaderPresenter extends BasePresenter<ReaderActivity> { | ||||
|     public boolean loadPreviousChapter() { | ||||
|         if (hasPreviousChapter()) { | ||||
|             onChapterLeft(); | ||||
|             loadChapter(previousChapter); | ||||
|             loadChapter(previousChapter, -1); | ||||
|             return true; | ||||
|         } | ||||
|         return false; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user