Bug 1136478 - [e10s] pagehide/show events not fired when swapping remote browsers
This is tricky. Initially, I thought maybe we could send messages down to browser-child.js, and have them trigger the pageshow/pagehide events. I don't think that's sufficient though… I actually need something to called nsDocument::OnPageShow and nsDocument::OnPageHide.

So maybe add something to PBrowser.ipdl to indicate that we're switching… and then, like, recursively fire OnPageShow and OnPageHide in the proper places.

Is there some common code that both nsFrameLoader and TabChild call into? Or does TabChild call into nsFrameLoader at all? nsContentUtils might make the most sense.

Let's try that.

Yep. Works. Let's see what smaug thinks.

He likes it! Aaaaand landed. \o/