Avoid cross-origin iframe issues when loading PDF in print preview

There are several issues that arise because we load the PDF viewer in a cross-origin iframe in print preview:
1) It doesn't get access to chrome:// resources by default (we have a hack in place, see crbug.com/444752)
2) The above hack causes its own problems (see crbug.com/461987).
3) Cross-origin policy prevents direct communication between the two frames DOMs which has made some implementation more difficult (we could simplify some code after this patch).
4) It's necessary that the two frames run in the same process because Chrome's printing needs direct access to the plugin element. With site isolation, the extension could be loaded up in a separate process, we don't want this.

This patch causes the iframe to load in the same origin as print preview and then all the resources are pulled in from the Chrome extension.

Ideally we would turn the PDF viewer into a polymer element which would encapsulate it better and make it clearer what is going on in this situation but this will require some additional work.

BUG=444752,461987

Review URL: https://codereview.chromium.org/1217503012

Cr-Commit-Position: refs/heads/master@{#367293}
8 files changed