This was done so navigation is as fast as possible, meaning it doesn't have to figure it out each time.
The patch:
1) Adds a method to the nsIContentViewerContainer to tell it whether we are printing or in PP.
2) Fix up the DV and PrintEngine, the DV SetIsXXXX didn't need to set any
values in the PrintEngine, but now instead makes calls and sets the values in DocShells
3) Cleaned up and add a macro to nsIDocumentViewerPrint
Bug 171161 r=dcone sr=rpotts