diff --git a/client/homebrew/brewRenderer/brewRenderer.jsx b/client/homebrew/brewRenderer/brewRenderer.jsx index 66735126a..4d39bf4ed 100644 --- a/client/homebrew/brewRenderer/brewRenderer.jsx +++ b/client/homebrew/brewRenderer/brewRenderer.jsx @@ -25,6 +25,7 @@ const BrewRenderer = createClass({ return { viewablePageNumber : 0, height : 0, + willChange : 'auto', isMounted : false, usePPR : true, @@ -125,22 +126,43 @@ const BrewRenderer = createClass({ }); return this.lastRender; }, + + /** + * Optimize for smooth scrolling when mouse enters the rendering panel + **/ + prepareScroll : function(){ + this.setState({willChange : 'transform'}); + }, + + /** + * Unload smooth scrolling optimizations when mouse leaves rendering panel + **/ + unprepareScroll : function(){ + this.setState({willChange : 'auto'}); + }, render : function(){ - return
+ return ( + +
- - + + -
- {this.renderPages()} -
- {this.renderPageInfo()} - {this.renderPPRmsg()} -
; +
+ {this.renderPages()} +
+
; + {this.renderPageInfo()} + {this.renderPPRmsg()} + + ); } }); diff --git a/client/homebrew/brewRenderer/brewRenderer.less b/client/homebrew/brewRenderer/brewRenderer.less index c893dbac4..542fb97bd 100644 --- a/client/homebrew/brewRenderer/brewRenderer.less +++ b/client/homebrew/brewRenderer/brewRenderer.less @@ -5,28 +5,6 @@ } .brewRenderer{ overflow-y : scroll; - .pageInfo{ - position : absolute; - right : 17px; - bottom : 0; - z-index : 1000; - padding : 8px 10px; - background-color : #333; - font-size : 10px; - font-weight : 800; - color : white; - } - .ppr_msg{ - position : absolute; - left : 0px; - bottom : 0; - z-index : 1000; - padding : 8px 10px; - background-color : #333; - font-size : 10px; - font-weight : 800; - color : white; - } .pages{ margin : 30px 0px; &>.phb{ @@ -36,4 +14,26 @@ box-shadow : 1px 4px 14px #000; } } +} +.pageInfo{ + position : absolute; + right : 17px; + bottom : 0; + z-index : 1000; + padding : 8px 10px; + background-color : #333; + font-size : 10px; + font-weight : 800; + color : white; +} +.ppr_msg{ + position : absolute; + left : 0px; + bottom : 0; + z-index : 1000; + padding : 8px 10px; + background-color : #333; + font-size : 10px; + font-weight : 800; + color : white; } \ No newline at end of file