When you select multiple series and then change categories, the categories which not all series have will be removed. It seems the cagegory-dialog only gets the list of categories which all series have shared. On save it writes those categories back to all selected series, overwriting the existing list, instead of just adding or removing changed categories.
Example:
Manga_1 with [Categorie_A]
Manga_2 with [Categorie_A, Categorie_B]
becomes after selection and saving:
Manga_1 with [Categorie_A]
Manga_2 with [Categorie_A]
Version: 0.6.1
Android 6.0
That’s what’s supposed to happen. Tachiyomi likes to forcefully change status of things instead of taking the current state into account. So it is not a bug. The function is “change categories”, not “add categories”.
Then it's a case of very bad UX. It's not the excepted behaviour.
For me it is, but I see why could you think otherwise. That is just how the
dev does things. It is the same with the whole MAL updating thing they
refused to call synchronisation and now I know why. If you change your
rating on MAL and not in Tachiyomi, when it updates the rating is
overwritten with what you had in the app, even if it was blank. Here I
agree that it is not what should be expected.
30 sie 2017 12:22 "scriptmode" notifications@github.com napisał(a):
Then it's a case of very bad UX. It's not the excepted result.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/inorichi/tachiyomi/issues/961#issuecomment-325949109,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APr23XhNpBAiBuN465aHHDRpilX5tzJkks5sdTfPgaJpZM4PHB-2
.
The problem here is what should happen. Do you have a better proposal (with examples of edge cases)?
Maybe it would be best to not allow changes to categories that not all selected manga have.
Related: #135
The usual solution for this cases is to mark partly assigned elements in grey/half transparent way. When state is changed, you first remove the category for all elements, and behave normally for all future state-changes. If no state was changed, left the category untouched. It's called tripple-state. Not very hard to implement, but not sure how simple it's possible with android.
EDIT And of course, as the lazy implementation, you can simply NOT change categories which were not changed in the dialog. Make set of categories before, categories after, look where something changed, and just add those changes.
Anyway, this is clearly communicates what happens. The way Tachiyomi works now is a hidden behaviour. It's only obvious from the result, not from the interface itself. That's why it's bad.
@j2ghz @Jendrej
With MAL, it might be lazy design, but it might be also just a limitation on how much the app connects to MAL, or even a limitation with the MAL-API itself. Syncing with remote sources can be very slow and cumbersome, and leading fast to a bann if you push to much burden on them. There is a function under settings -> advanced(?) to update from the remote services. Maybe this is more what you are looking for?
I have suggested tri-state checkbox here: https://github.com/inorichi/tachiyomi/issues/135#issuecomment-183426007
Lazy implementation:
Not changing not changed is equally confusing, because user would see category A that is unmarked, because only some manga have it. So they mark it and unmark it, expecting that to clear it, which doesn't happen, because when they press ok, the state of the checkbox was not changed.
I was not talking about MAL, I guess you meant @Jendrej
Also for context it's more about the name "tracking" and "synchronization": https://weblate.j2ghz.com/translate/tachiyomi/main/de/?checksum=10f611ca4799fc5a#comments
Not changing not changed is equally confusing
I'd say it's less confusing. With the actual dialog you don't see whether an entry has additional categories which would be removed. So nobody except something to be removed. There is just a list of states to be changed, that's it. Anything outside the list is outside and not relevant, thus should remain unchanged.
Though, you could also add an additional button to expliciet allow the user to select the behaviour. Whether the list overrides all categories, or just extends the categories. But naming might be a problem here, and available space with the dialog. [Ok] is pretty clear, but [Extend] and [Override]? Not so much. Maybe use [Replace] or [Set this...]? Or add another mode-selection-list at the bottom, or in the settings.
Hm, even though we have now four solutions, tri-state might still be the best. I don't know about Android-widgets and dialogs, but the code for this functionality is very small and simple, so one solution at least should be implementable.
I was not talking about MAL, I guess you meant @Jendrej
Ups, yeah. Your comment appeared while I wrote it, so I picked the wrong ^^
Another possibility is just a simple warning: "Categories on selected manga will be replaced by:"
We already have a tri-state widget with genres. I can show uncommon categories in gray, but just as a visual feedback, the confirm operation should remain the same.
If you change your rating on MAL and not in Tachiyomi, when it updates the rating is overwritten with what you had in the app, even if it was blank.
I'm aware of this and I want to change it to delta updates, but nobody ever complained so I didn't give it priority. Please file an issue so that I don't forget it.