| OLD | NEW | 
|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 Polymer('viewer-page-indicator', { | 5 Polymer('viewer-page-indicator', { | 
| 6   text: '1', | 6   label: '1', | 
|  | 7   index: 0, | 
| 7   timerId: undefined, | 8   timerId: undefined, | 
|  | 9   pageLabels: null, | 
| 8   ready: function() { | 10   ready: function() { | 
| 9     var callback = this.fadeIn.bind(this, 2000); | 11     var callback = this.fadeIn.bind(this, 2000); | 
| 10     window.addEventListener('scroll', function() { | 12     window.addEventListener('scroll', function() { | 
| 11       requestAnimationFrame(callback); | 13       requestAnimationFrame(callback); | 
| 12     }); | 14     }); | 
| 13   }, | 15   }, | 
| 14   initialFadeIn: function() { | 16   initialFadeIn: function() { | 
| 15     this.fadeIn(6000); | 17     this.fadeIn(6000); | 
| 16   }, | 18   }, | 
| 17   fadeIn: function(displayTime) { | 19   fadeIn: function(displayTime) { | 
| 18     var percent = window.scrollY / | 20     var percent = window.scrollY / | 
| 19         (document.body.scrollHeight - | 21         (document.body.scrollHeight - | 
| 20          document.documentElement.clientHeight); | 22          document.documentElement.clientHeight); | 
| 21     this.style.top = percent * | 23     this.style.top = percent * | 
| 22         (document.documentElement.clientHeight - this.offsetHeight) + 'px'; | 24         (document.documentElement.clientHeight - this.offsetHeight) + 'px'; | 
| 23     this.style.opacity = 1; | 25     this.style.opacity = 1; | 
| 24     clearTimeout(this.timerId); | 26     clearTimeout(this.timerId); | 
| 25 | 27 | 
| 26     this.timerId = setTimeout(function() { | 28     this.timerId = setTimeout(function() { | 
| 27       this.style.opacity = 0; | 29       this.style.opacity = 0; | 
| 28       this.timerId = undefined; | 30       this.timerId = undefined; | 
| 29     }.bind(this), displayTime); | 31     }.bind(this), displayTime); | 
|  | 32   }, | 
|  | 33   pageLabelsChanged: function() { | 
|  | 34     this.indexChanged(); | 
|  | 35   }, | 
|  | 36   indexChanged: function() { | 
|  | 37     if (this.pageLabels) | 
|  | 38       this.label = this.pageLabels[this.index]; | 
|  | 39     else | 
|  | 40       this.label = String(this.index + 1); | 
| 30   } | 41   } | 
| 31 }); | 42 }); | 
| OLD | NEW | 
|---|