You simply take twice on e4, winning a rook
Time to resign?

Well, yes, that's what I would do. I didn't resign, my opponent did.
But what I'm saying is why would he resign at this point.
If you were white, would the loss of the rook and the queen cause you to resign?

People resign for all sorts of reasons. It may be initial shock about making a blunder or something came up during play. I have resigned quite a few games in even/superior/winning positions because of family interruptions as I felt it to be discorteous to let my opponent wait until my clock expires.

I definitely though of the possible family interruption situation. I've often resigned games because of that.
@Fiveofswords I agree that it's true that I'd have an overwhelmingly superior position after taking the rook, but I also think that with the amount of time left in the game, an easy win was definitely not a foregone conclusion.
Minor advantage? After the exchange (19. ... Qxe4 Rxe4 20. Bxe4), Black is literally a Queen up (9 points - 2 Knights/Bishops up, plus a Rook, minus 2 pawns). Black has a Rook and all 4 pieces against White, which has a Rook and 2 peices. Where does the difference come in? Well, both of White's pieces are inactive - one is trapped into the corner of its opponent's area, while the area is restricted (besides moving to a poor position on the second rank). In addition, White's Knight is being targeted, ready for further simplification (your aim is going to be to have 2 pieces against Black who has none, nail down all his pawns, get a Queen and take him out, though by this time he really should have resigned).

Because he saw 15. Bxh7 too late.
Why do you say that? You do realize 15 Bxh7 isn't checkmate. It's followed by Nxh7 and the game goes on. If 16 Qxh7 then Kxh7.
Or is there something else I'm missing?

Um... Maybe it was a reason that doesn't have to do with chess? Say he was needed somewhere and doesn't have time to finish the game?

Because he saw 15. Bxh7 too late.
Why do you say that? You do realize 15 Bxh7 isn't checkmate. It's followed by Nxh7 and the game goes on. If 16 Qxh7 then Kxh7.
Or is there something else I'm missing?
Yep. You missed it. 15.Bxh7 Nxh7 16.Qg6+! Kh8 17.Qg7#
So you cant play neither 15...Nxh7, nor 15...Kf7. Only 15...Kh8 is possible, but even then the game is pretty much lost for black.
Because he saw 15. Bxh7 too late.
Why do you say that? You do realize 15 Bxh7 isn't checkmate. It's followed by Nxh7 and the game goes on. If 16 Qxh7 then Kxh7.
Or is there something else I'm missing?
Yep. You missed it. 15.Bxh7 Nxh7 16.Qg6+! Kh8 17.Qg7#
So you cant play neither 15...Nxh7, nor 15...Kf7. Only 15...Kh8 is possible, but even then the game is pretty much lost for black.
That doesn't really make sense. If he had seen that, he would have resigned after Move 14, not Move 19.
It's pretty clear that the reason he resigned was because he was too far down on material. Most players would resign if they were a full 2 pieces down. It doesn't have to be Checkmate for an opponent to stop wasting your time.
I'm tired, I'm having a long day and I thought I'd play some live chess just to relax a bit.
I just had a five minute gave end abruptly with my opponent resigning, although the game still seemed relatively even to me.
I may have had a minor advantage, but I don't think I would have resigned if I were in his position. Of course, perhaps my opponent didn't realize how groggy I'm feeling right now.
What would you have done?
A couple more details - This was a 5 minute blitz game. I had 1:34 left on my clock. My opponent had 2:08 on his clock.
As sometimes happens in blitz games, my dialogue in my head after most of my early moves was either "oops," "why did I do that?" or "phew."
I suppose I did withstand my opponent's first withering attack, but this just seems a bit early for resignation to me.