To expand that a bit:
1) When people try to update a book they know exists, by choosing it in Calibre and running update, they can want different things to happen, and a default there makes sense. They might want to add new chapters (Probably 99% of the use), they might to rewrite the entire book because something went wrong, they might want to update just the metadata.
Although, interesting, they don't ever want to Skip the book...that doesn't make sense, to choose a book in the list just to skip it. So every choice except Skip makes sense there, both as a presented option as a default.
2) Whereas, when they provide a list of URLs, they always want the newest version of that book in their library. There's no person who says 'I want the newest version if I don't have it, but I'd like to regenerate the metadata if I already do'. Huh?
So the only other option that make sense is 'Skip', because they don't want to increase the server load if they accidentally paste the same thing twice, or if added a couple of book and then decided to scrap the author's entire page.
Conclusion:
The different forms of updating a book are actually different things. 'updating a book by selecting it', and 'getting a bunch of URLs that might include existing books in it'. They can work the same, but outside of the core functionality, they go off in completely different directions of what people might be trying to do.
The first thing needs the ability to select a default option from the list.
The second just needs a checkbox meaning 'I'm trying to be polite to the server and I don't recall what tabs in this giant browser mess I've already added.' for pasted stuff. (Really, a 'Do not try to update these pasted URL if the books have been updated in the last few hours' checkbox might make more sense...it's even less server load.)
And email just...needs to update, always. There's no scenario where someone has a story in their library, and got an email saying it had changed, and they would like FFF to...simply mark that email as read and not update the story.
|