This code was sort of fine when it used raw Java types, but the Kotlin
equivalent technically calls a method that takes a Nothing-typed
argument with a value that is not of type Nothing. Whether that works
depends on how lenient kotlinc is about inserting casts in bytecode.
The solution is to give the unknown type represented by a star an
explicit name by capturing it in a type variable, then cast to that type
instead of Nothing. This is guaranteed to be an unchecked, but valid,
cast.
Using the search bar in My Library, you can search tags for manga (ie. "Romance") or exclude (ie. "-Comedy") You can also search multiple by seperating by commas (ie. "Romance, -Comedy")
Clicking the tag in manga info from the library also performs a local serach
* Indicate obsolete extensions
* Make obsolete indicators red
* Move obsolete extensions up the list
* Add base button theme for holder
* Use red button color state instead of explicit text color
* fix bangumi track : the update status api must be called before update chapter api
* fix bangumi track will override record to 0 after every track search(bind)
* add options menu item to filer extensions by languages
* resolve merge conflicts
changes per pr comments
Co-authored-by: arkon <arkon@users.noreply.github.com>
Kotlin: 1.2.71 -> 1.3.50
Coroutines: 0.30.2 -> 1.3.1
Gradle: 4.6 -> 5.4.1
Android gradle plugin: 3.2.1 -> 3.5.0
This brings us down to *one* experimental coroutine API, and we've
opted in to using it in just *one* place.
(The fact that the API to opt-in to using an experimental API in a
specific place is *also* experimental surely will not come back to
bite us later.)
* copy from shikimori and change parmater
* add login activity
* fix
* login sucess
* search
* add...
* auth fix
* save status
* revert shikimori
* fix oauth error
* add bangumi info
* update read chapter index
* refersh token
* remove outdate file
* drop comment
* change icon
* drop search result which type not comic
* fix bind logic
* set status
* add ep status
* format code
* disable cache for `collection` api
* 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)
* * fix cookieManager not clearing cookies properly
* manually clear tracking prefs when !isLogged (e.g. cookies were cleared)
* use full url for removing cookies
* add interceptor for all non-login network calls
* attempt auto login if cookies are missing
* move handling of csrf token to interceptor
* * move methods around to improve readability
* fix TrackSearchAdapter not updating other fields if cover_url is missing
* revert accidental removal of feature in https://github.com/inorichi/tachiyomi/issues/65
* avoid login if credentials are missing
* fix eol
* *separate login flow from rxjava for reuse in sync
* *use less expensive method of finding manga
* *move variable declaration
* formatting
* set total chapters in remote track
* Added second updateTrackLastChapterRead() called whenever a chapter has been read in the reader
* Removed old updateTrackLastChapterRead() so that it's not called twice.