Merge pull request #53 from icewind1991/sort-order
save per-manga sort order
This commit is contained in:
		
						commit
						50306f6ea3
					
				| @ -68,6 +68,10 @@ public class Manga implements Serializable { | |||||||
|     public static final int COMPLETED = 2; |     public static final int COMPLETED = 2; | ||||||
|     public static final int LICENSED = 3; |     public static final int LICENSED = 3; | ||||||
| 
 | 
 | ||||||
|  |     public static final int SORT_AZ = 0; | ||||||
|  |     public static final int SORT_ZA = 1; | ||||||
|  |     public static final int SORT_MASK = 1; | ||||||
|  | 
 | ||||||
|     public Manga() {} |     public Manga() {} | ||||||
| 
 | 
 | ||||||
|     public static Manga create(String pathUrl) { |     public static Manga create(String pathUrl) { | ||||||
| @ -120,6 +124,18 @@ public class Manga implements Serializable { | |||||||
|         } |         } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     public void setFlags(int flag, int mask) { | ||||||
|  |         chapter_flags = (chapter_flags & ~mask) | (flag & mask); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public boolean sortChaptersAZ () { | ||||||
|  |         return (this.chapter_flags & SORT_MASK) == SORT_AZ; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public void setChapterOrder(int order) { | ||||||
|  |         setFlags(order, SORT_MASK); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     @Override |     @Override | ||||||
|     public boolean equals(Object o) { |     public boolean equals(Object o) { | ||||||
|         if (this == o) return true; |         if (this == o) return true; | ||||||
|  | |||||||
| @ -39,7 +39,6 @@ public class ChaptersPresenter extends BasePresenter<ChaptersFragment> { | |||||||
|     private Manga manga; |     private Manga manga; | ||||||
|     private Source source; |     private Source source; | ||||||
|     private List<Chapter> chapters; |     private List<Chapter> chapters; | ||||||
|     private boolean sortOrderAToZ = true; |  | ||||||
|     private boolean onlyUnread = true; |     private boolean onlyUnread = true; | ||||||
|     private boolean onlyDownloaded; |     private boolean onlyDownloaded; | ||||||
|     @State boolean hasRequested; |     @State boolean hasRequested; | ||||||
| @ -142,7 +141,7 @@ public class ChaptersPresenter extends BasePresenter<ChaptersFragment> { | |||||||
|         if (onlyDownloaded) { |         if (onlyDownloaded) { | ||||||
|             observable = observable.filter(chapter -> chapter.status == Download.DOWNLOADED); |             observable = observable.filter(chapter -> chapter.status == Download.DOWNLOADED); | ||||||
|         } |         } | ||||||
|         return observable.toSortedList((chapter, chapter2) -> sortOrderAToZ ? |         return observable.toSortedList((chapter, chapter2) -> getSortOrder() ? | ||||||
|                 Float.compare(chapter2.chapter_number, chapter.chapter_number) : |                 Float.compare(chapter2.chapter_number, chapter.chapter_number) : | ||||||
|                 Float.compare(chapter.chapter_number, chapter2.chapter_number)); |                 Float.compare(chapter.chapter_number, chapter2.chapter_number)); | ||||||
|     } |     } | ||||||
| @ -242,8 +241,8 @@ public class ChaptersPresenter extends BasePresenter<ChaptersFragment> { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public void revertSortOrder() { |     public void revertSortOrder() { | ||||||
|         //TODO manga.chapter_order |         manga.setChapterOrder(getSortOrder() ? Manga.SORT_ZA : Manga.SORT_AZ); | ||||||
|         sortOrderAToZ = !sortOrderAToZ; |         db.insertManga(manga).executeAsBlocking(); | ||||||
|         refreshChapters(); |         refreshChapters(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| @ -259,7 +258,7 @@ public class ChaptersPresenter extends BasePresenter<ChaptersFragment> { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public boolean getSortOrder() { |     public boolean getSortOrder() { | ||||||
|         return sortOrderAToZ; |         return manga.sortChaptersAZ(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public boolean getReadFilter() { |     public boolean getReadFilter() { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 inorichi
						inorichi