As you can see in the examples above, in English we use the present tense to talk about the future in a subordinate clause. This rule does not exist in French! Remember the sentence from the beginning of the post?
Quand tu arriveras, on aura déjà mangé.
When you arrive, we’ll have already eaten.
Just remember: the future perfect is always needed for the action that comes first.