Updates to leap.js and index.html
Added timing code to limit gesture calls. Added gesture to access the overview. index.html includes the leap plugin
This commit is contained in:
parent
af5acd1aa2
commit
70cade3732
2 changed files with 45 additions and 19 deletions
|
@ -359,6 +359,9 @@ function linkify( selector ) {
|
||||||
progress: true,
|
progress: true,
|
||||||
history: true,
|
history: true,
|
||||||
center: true,
|
center: true,
|
||||||
|
leap: {
|
||||||
|
invert : true
|
||||||
|
},
|
||||||
|
|
||||||
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
|
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
|
||||||
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
|
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
|
||||||
|
@ -370,7 +373,8 @@ function linkify( selector ) {
|
||||||
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||||||
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
||||||
{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
|
{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
|
||||||
{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
|
{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } },
|
||||||
|
{ src: 'plugin/leap/leap.js', async: true, }
|
||||||
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
|
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
|
||||||
// { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
|
// { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
|
||||||
]
|
]
|
||||||
|
|
|
@ -22,24 +22,36 @@ var b=right.criteria;if(a!==b){if(a>b||a===void 0)return 1;if(a<b||b===void 0)re
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
var controller = new Leap.Controller({enableGestures: true}),
|
var controller = new Leap.Controller({enableGestures: true}),
|
||||||
|
lastGesture = 0,
|
||||||
config = Reveal.getConfig().leap ||
|
config = Reveal.getConfig().leap ||
|
||||||
{
|
{
|
||||||
invert: false
|
invert: false
|
||||||
};
|
},
|
||||||
|
now;
|
||||||
|
|
||||||
controller.on('frame', function (frame) {
|
controller.on('frame', function (frame) {
|
||||||
if (frame.gestures.length > 0) {
|
now = new Date().getTime();
|
||||||
var gesture = frame.gestures[0];
|
|
||||||
//console.log(gesture);
|
if( lastGesture === 0 ) {
|
||||||
var x = gesture.direction[0];
|
lastGesture = now;
|
||||||
var y = gesture.direction[1];
|
}
|
||||||
if (gesture.state === 'start' && gesture.type === 'swipe') {
|
|
||||||
|
if ( (now - lastGesture) > 500 && frame.gestures.length > 0 ) {
|
||||||
|
var gesture = frame.gestures[0],
|
||||||
|
x = gesture.direction[0],
|
||||||
|
y = gesture.direction[1];
|
||||||
|
|
||||||
|
|
||||||
|
if ( gesture.speed > 1000 && gesture.state === 'start' && gesture.type === 'swipe' ) {
|
||||||
|
if( frame.fingers.length > 1 ) {
|
||||||
if ( Math.abs(x) > Math.abs(y) ) {
|
if ( Math.abs(x) > Math.abs(y) ) {
|
||||||
if ( x > 0 ) {
|
if ( x > 0 ) {
|
||||||
config.invert ? Reveal.left() : Reveal.right();
|
config.invert ? Reveal.left() : Reveal.right();
|
||||||
} else {
|
} else {
|
||||||
config.invert ? Reveal.right() : Reveal.left();
|
config.invert ? Reveal.right() : Reveal.left();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lastGesture = now;
|
||||||
} else {
|
} else {
|
||||||
if ( y > 0 ) {
|
if ( y > 0 ) {
|
||||||
config.invert ? Reveal.down() : Reveal.up();
|
config.invert ? Reveal.down() : Reveal.up();
|
||||||
|
@ -47,8 +59,18 @@ var b=right.criteria;if(a!==b){if(a>b||a===void 0)return 1;if(a<b||b===void 0)re
|
||||||
config.invert ? Reveal.up() : Reveal.down();
|
config.invert ? Reveal.up() : Reveal.down();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lastGesture = now;
|
||||||
|
} else if( frame.hands.length == 2 ) {
|
||||||
|
if ( y > 0 ) {
|
||||||
|
Reveal.toggleOverview();
|
||||||
|
}
|
||||||
|
|
||||||
|
lastGesture = now;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
controller.connect();
|
controller.connect();
|
||||||
})();
|
})();
|
||||||
|
|
Loading…
Reference in a new issue