It took me awhile to realize that this was why the “forgiveness” scene at Christmas didn’t sit right with me. (Well, that and the fact that forgiveness was never actually asked for nor granted.)
John has trust issues. The fall, and Sherlock’s return, certainly didn’t do much to help those - more likely, it caused a setback. As of his wedding, John is still seeing his therapist. And while certainly his reasons for continuing therapy are numerous, we are told repeatedly that one of his big issues is trust.
And here John has learned he does not know who his wife is. He doesn’t know her name, her nationality, her first language. He doesn’t know anything about her family, her childhood…all he knows is that this woman used to be an assassin and has, in his words, “lied to me since the day we met.” It is actually a larger-scale lie than Sherlock’s fake suicide.
We watched John struggle with forgiving Sherlock in TEH. That was a huge betrayal of trust, and despite how much he’d missed Sherlock, John had a hard time getting passed it. What was it he kept asking? I don’t care how you did it, Sherlock. I want to know why. And, while we never see Sherlock fully explain Jim’s plan to John on the show, John’s blog informs us John did eventually learn the truth:
Turns out he’d faked his death because Moriarty had threatened those close to him. Including me. He’d gone into hiding, happy to leave me and everyone else thinking he was dead. He’d done it to save us but he hadn’t trusted us enough to tell us what was really going on. Not sure I’ll ever truly forgive him for that but as the saying goes, life goes on.
John does say “of course I forgive you” at the end of TEH, in what he thinks are his dying moments. But clearly this is a huge, huge deal for John, and again, a massive setback in terms of his trust issues.
So after spending months apart from Mary to come to terms with her enormous betrayal…we’re supposed to believe that John tosses out the hard drive supposedly containing her history, essentially tells her they’ve got a clean slate, he doesn’t care what she’s done – which, according to her, could put her away for life, not legal stuff, not CIA stuff, not necessarily killing “bad” people, maybe just killing people – but no no no, Captain Trust Issues Watson doesn’t care about her past that is even at this moment threatening her safety, his safety, and their unborn child’s safety because the guy John saw piss in a fireplace has already made it clear he knows what Mary’s done and could expose her to the enemies she’s made and judging from today’s Lord Smallwood Suicide headline he’s got no fucking problem pushing those he blackmails to the brink and beyond?
"The problems of your past…" Um, those are the problems of your future, John. Hell, they’re the problems of your present. It’s not just unbelievable that John would swallow all this and try to move on with a clean slate, it’s frankly insanely irresponsible and dangerous behavior for a father-to-be. Either that, or…
It’s bullshit. It’s such bullshit. John has fucking trust issues. He wants to know who he married. He wants to know who’s carrying his child. He wants to know what “Mary’s” done that led to something as drastic as assuming a false identity for five years, threatening a media mogul at gunpoint, and shooting and nearly killing a man who offered to help her.
John wants to know why. And that’s why he came in with “prepared words, words chosen with care.” Rehearsed. Carefully rehearsed words that are part of a larger plan we’ll see unfold in season four.
Let’s pretend the Watson marriage was “domestic bliss” up until the shooting; let’s pretend Mary was the love of John’s life; even then, how does this odd “forgive and forget” thing make sense? True love is not accepting that your partner has done things they’re so desperate for you not to find out, they attempt murder. True love is not sweeping the past under the rug while knowing it puts both of your and your child in danger.
I don’t know what’s going on with John in the Christmas scene. But actual forgiveness has nothing to do with it.
(ETA: If Martin Freeman can say shit with a look, what the HELL is he telling her in that last gif?!)