| Index: chrome/browser/resources/pdf/elements/viewer-page-selector/viewer-page-selector.js
|
| diff --git a/chrome/browser/resources/pdf/elements/viewer-page-selector/viewer-page-selector.js b/chrome/browser/resources/pdf/elements/viewer-page-selector/viewer-page-selector.js
|
| index 8e1f2460ad34e16692dbb230dbe67a3294a73972..014362ab962c4fba693bd7e41dbbc172bda92555 100644
|
| --- a/chrome/browser/resources/pdf/elements/viewer-page-selector/viewer-page-selector.js
|
| +++ b/chrome/browser/resources/pdf/elements/viewer-page-selector/viewer-page-selector.js
|
| @@ -16,22 +16,26 @@ Polymer({
|
| },
|
|
|
| /**
|
| - * The current page being viewed (1-based).
|
| + * The current page being viewed (1-based). A change to pageNo is mirrored
|
| + * immediately to the input field. A change to the input field is not
|
| + * mirrored back until pageNoCommitted() is called and change-page is fired.
|
| */
|
| pageNo: {
|
| - type: String,
|
| - value: '1'
|
| + type: Number,
|
| + value: 1
|
| },
|
|
|
| strings: Object
|
| },
|
|
|
| pageNoCommitted: function() {
|
| - var page = parseInt(this.pageNo);
|
| - if (!isNaN(page)) {
|
| + var page = parseInt(this.$.input.value);
|
| +
|
| + if (!isNaN(page) && page <= this.docLength && page > 0)
|
| this.fire('change-page', {page: page - 1});
|
| - this.$.input.blur();
|
| - }
|
| + else
|
| + this.$.input.value = this.pageNo;
|
| + this.$.input.blur();
|
| },
|
|
|
| docLengthChanged: function() {
|
|
|