I thought 'khi nào' was 'when' in the future tense and 'hồi nào' was 'when for the past. Am I mistaken?
You are right about "hồi nào": it is only used in past tense. In addition, it may mean a little negative, like "When did you learn Vietnamese? You didn't learn that, as I remember."
"Khi nào" is used for any tense. Hence this sentence is not clear about the time - future or past, which also makes sense because the asker asks because he does not know.
Regarding the slightly negative connotation, that's only sometimes? Is there a way to distinguish so you're not misunderstood or is it safer to always use 'khi nào' if not being snarky? Thanks!
If a native speaker asked this question it would only be about a future event.