Update ranking (#1772)

* Add LibraryUpdateRanker

This class provides various functions to generate Comparators that can 
be used to order the manga to update.

One such ordering is by relevance:
It prioritises manga that were updated more recently.

Another Ordering is by lexicographic order:
This is the default behaviour.

* Use relevanceRanking scheme

Instead of default(noRanking/lex ranking) now mangaList is sorted with 
relevanceRanking.

* Add UI and associated variables & strings for Update Ranking.

* Use user preferences to determine update ranking scheme.

* Refactor relevanceRanking to latestFirstranking.

This name seems to better reflect the ranking scheme and frees up the 
name relevanceRanking for future use.

* Set latestFirst scheme as default.

(Changing over from lexicographic scheme)

* Fix 1

[Convert LibraryUpdateRanker to a object.](./files/82f263749f0ae775385b23dd919f1865360db969#r287513539)

[Nitpick: Add lines](./files/82f263749f0ae775385b23dd919f1865360db969#r287540256)

[Replace Java comparator](./files/82f263749f0ae775385b23dd919f1865360db969#r287539976)

[Nitpick: Add local variable](./files/82f263749f0ae775385b23dd919f1865360db969#r287514805)

* Fix 2

[Weird import](./files/82f263749f0ae775385b23dd919f1865360db969#r287513709)

[Default value](./files/82f263749f0ae775385b23dd919f1865360db969#r287540064)

[Use existing Strings](./files/82f263749f0ae775385b23dd919f1865360db969#r287514476)

[Use Library update order](./files/82f263749f0ae775385b23dd919f1865360db969#r287540204)
This commit is contained in:
Harsh Parekh
2019-06-09 08:32:12 -04:00
committed by inorichi
parent 9ba7312caf
commit 5d8dc241d8
6 changed files with 68 additions and 0 deletions

View File

@@ -132,6 +132,8 @@
<string name="update_monthly">Monthly</string>
<string name="pref_library_update_categories">Categories to include in global update</string>
<string name="all">All</string>
<string name="pref_library_update_prioritization">Library update order</string>
<string name="pref_library_update_prioritization_summary">Select the order in which Tachiyomi checks for update</string>
<string name="pref_library_update_restriction">Library update restrictions</string>
<string name="pref_library_update_restriction_summary">Update only when the conditions are met</string>
<string name="wifi">Wi-Fi</string>