From 9c3a65744ccd45a0e1673b5a1ead6842b6b64f2e Mon Sep 17 00:00:00 2001 From: linux-man Date: Sun, 21 May 2017 19:13:41 +0100 Subject: [PATCH] Modified Zoom Block dimension calculation is not accurate, so zoom is made on mouse coordinates Change default modifier to ctrl - alt don't work on Linux New parameter zoomLevel: default 2 --- plugin/zoom-js/zoom.js | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) diff --git a/plugin/zoom-js/zoom.js b/plugin/zoom-js/zoom.js index 8738083a..41fd15d0 100644 --- a/plugin/zoom-js/zoom.js +++ b/plugin/zoom-js/zoom.js @@ -3,31 +3,17 @@ var isEnabled = true; document.querySelector( '.reveal .slides' ).addEventListener( 'mousedown', function( event ) { - var modifier = ( Reveal.getConfig().zoomKey ? Reveal.getConfig().zoomKey : 'alt' ) + 'Key'; - - var zoomPadding = 20; - var revealScale = Reveal.getScale(); + var modifier = ( Reveal.getConfig().zoomKey ? Reveal.getConfig().zoomKey : 'ctrl' ) + 'Key';//cl + var zoomLevel = ( Reveal.getConfig().zoomLevel ? Reveal.getConfig().zoomLevel : 2 ); if( event[ modifier ] && isEnabled ) { event.preventDefault(); - var bounds; - var originalDisplay = event.target.style.display; - - // Get the bounding rect of the contents, not the containing box - if( window.getComputedStyle( event.target ).display === 'block' ) { - event.target.style.display = 'inline-block'; - bounds = event.target.getBoundingClientRect(); - event.target.style.display = originalDisplay; - } else { - bounds = event.target.getBoundingClientRect(); - } - zoom.to({ - x: ( bounds.left * revealScale ) - zoomPadding, - y: ( bounds.top * revealScale ) - zoomPadding, - width: ( bounds.width * revealScale ) + ( zoomPadding * 2 ), - height: ( bounds.height * revealScale ) + ( zoomPadding * 2 ), + x: event.clientX - window.innerWidth / (zoomLevel * 2),//cl + y: event.clientY - window.innerHeight / (zoomLevel * 2), + width: window.innerWidth / zoomLevel, + height: window.innerHeight / zoomLevel, pan: false }); } @@ -283,6 +269,3 @@ var zoom = (function(){ } })(); - - -