As part of bug 1510569, the majority of the `nsIWebProgress` event listeners
have moved from the `WebProgressChild`/`RemoteWebProgress` to the
`BrowserChild`/`BrowserParent`. In responsive design mode, the
`RemoteWebProgress` previously would update the state of the `<iframe
mozbrowser>` with document URI and title which would be mirrored back to the
`<xul:browser>` when leaving RDM. However, the event handlers in the
`BrowserParent` call directly into the `<xul:browser>`, skipping the `<iframe
mozbrowser>` entirely. Therefore, when RDM is shut down, old state will be
mirroed to the `<xul:browser>`, leaving it in an inconsistent state. We now
mirror the state from the `<xul:browser>` to the `<iframe mozbrowser>` with an
`nsIWebProgressListener` so that the `<iframe mozbrowser>` will not clobber the
`<xul:browser>`'s state when leaving RDM.
Differential Revision: https://phabricator.services.mozilla.com/D38918
--HG--
extra : moz-landing-system : lando