| Index: chrome/browser/resources/pdf/pdf.js
|
| diff --git a/chrome/browser/resources/pdf/pdf.js b/chrome/browser/resources/pdf/pdf.js
|
| index a8ec3081fc0f46a7015d7ede91659ce26a14140e..37e9cce5dc680b6ba0ea0e3b2fea5c46979b7095 100644
|
| --- a/chrome/browser/resources/pdf/pdf.js
|
| +++ b/chrome/browser/resources/pdf/pdf.js
|
| @@ -47,6 +47,7 @@ function PDFViewer(streamDetails) {
|
| this.loaded_ = false;
|
| this.parentWindow_ = null;
|
|
|
| + this.isMaterial_ = location.pathname.substring(1) == 'index-material.html';
|
| // The sizer element is placed behind the plugin element to cause scrollbars
|
| // to be displayed in the window. It is sized according to the document size
|
| // of the pdf and zoom level.
|
| @@ -58,6 +59,7 @@ function PDFViewer(streamDetails) {
|
| this.passwordScreen_.addEventListener('password-submitted',
|
| this.onPasswordSubmitted_.bind(this));
|
| this.errorScreen_ = $('error-screen');
|
| + this.toolbarHeight_ = this.isMaterial_ ? $('pdf-toolbar').clientHeight : 0;
|
|
|
| // Create the viewport.
|
| this.viewport_ = new Viewport(window,
|
| @@ -65,7 +67,8 @@ function PDFViewer(streamDetails) {
|
| this.viewportChanged_.bind(this),
|
| this.beforeZoom_.bind(this),
|
| this.afterZoom_.bind(this),
|
| - getScrollbarWidth());
|
| + getScrollbarWidth(),
|
| + this.toolbarHeight_);
|
| // Create the plugin object dynamically so we can set its src. The plugin
|
| // element is sized to fill the entire window and is set to be fixed
|
| // positioning, acting as a viewport. The plugin renders into this viewport
|
| @@ -77,6 +80,10 @@ function PDFViewer(streamDetails) {
|
| this.plugin_.type = 'application/x-google-chrome-pdf';
|
| this.plugin_.addEventListener('message', this.handlePluginMessage_.bind(this),
|
| false);
|
| + if (this.isMaterial_)
|
| + this.plugin_.style.height =
|
| + (window.innerHeight - this.toolbarHeight_) + 'px';
|
| +
|
|
|
| // Handle scripting messages from outside the extension that wish to interact
|
| // with it. We also send a message indicating that extension has loaded and
|
| @@ -85,6 +92,8 @@ function PDFViewer(streamDetails) {
|
| false);
|
|
|
| document.title = getFilenameFromURL(this.streamDetails_.originalUrl);
|
| + if (this.isMaterial_)
|
| + $('title').textContent = document.title;
|
| this.plugin_.setAttribute('src', this.streamDetails_.originalUrl);
|
| this.plugin_.setAttribute('stream-url', this.streamDetails_.streamUrl);
|
| var headers = '';
|
| @@ -304,7 +313,11 @@ PDFViewer.prototype = {
|
| * @param {number} progress the progress as a percentage.
|
| */
|
| updateProgress_: function(progress) {
|
| - this.progressBar_.progress = progress;
|
| + if (this.isMaterial_)
|
| + this.progressBar_.value = progress;
|
| + else
|
| + this.progressBar_.progress = progress;
|
| +
|
| if (progress == -1) {
|
| // Document load failed.
|
| this.errorScreen_.style.visibility = 'visible';
|
| @@ -398,7 +411,8 @@ PDFViewer.prototype = {
|
| break;
|
| case 'setTranslatedStrings':
|
| this.passwordScreen_.text = message.data.getPasswordString;
|
| - this.progressBar_.text = message.data.loadingString;
|
| + if (!this.isMaterial_)
|
| + this.progressBar_.text = message.data.loadingString;
|
| this.progressBar_.style.visibility = 'visible';
|
| this.errorScreen_.text = message.data.loadFailedString;
|
| break;
|
| @@ -466,6 +480,10 @@ PDFViewer.prototype = {
|
| if (!this.documentDimensions_)
|
| return;
|
|
|
| + if (this.isMaterial_)
|
| + this.plugin_.style.height =
|
| + (window.innerHeight - this.toolbarHeight_) + 'px';
|
| +
|
| // Update the buttons selected.
|
| $('fit-to-page-button').classList.remove('polymer-selected');
|
| $('fit-to-width-button').classList.remove('polymer-selected');
|
|
|