Closed acristescu closed 3 months ago
@bqv can you please have a look at this and let me know if you have any thoughts on this and if you're interested in having a look at this? It's not a problem if you don't I can find the time to do it... eventually.
I actually just had the idea of removing that view, and instead having some form jump navigation in the tsumego screen (which doesn't render the board I suppose, to keep the API usage light). That would be an idle compromise after implementing your above? I just want to avoid limiting the user to "next"/"prev" navigation and the implicit jump to "first unsolved". I think I'll look into this though, sure
Sure, the website also has this as you might notice. On the website it's powered by the https://online-go.com/api/v1/puzzles/2627/collection_summary
call which is a lightweight call providing just the id and name of the puzzles in the collection. But we can do it even without that, as unlike the website we have the local database!
I suggest that to be a step 2 thing though. Removing the extra screen would be a intermediary step that could make the whole thing releasable (although I'd probably tinker with the UI a bit before actually sending this out).
@bqv So is this issue something you'd be interested in working on or shall I add it to my backlog?
Sorry, I did make a start on it, I just got drawn away yesterday by circumstance. I'm still on it :)
No rush, just wanted to know what I should be looking at. I'll have a go at the UI of the Directory screen.
Rationale
starting_puzzle
property of each collection to navigate the user to the first unsolved puzzle in the collection. We should emulate the behaviour.Proposal
We need to modify the directory screen to look at the
starting_puzzle
property when the user clicks on a collection and navigate the user to the appropriate Tsumego screen. We should then remove the PuzzleSetFragment and related classes altogether. Potential caveat: we might need to refresh the data of the clicked collection with a single call to fetch it. It would be great if we could get away without it, but if not, that's not a biggie.