re-enable mouse-wheel slider movements
This commit is contained in:
parent
87d1ee3ffa
commit
5b4f7d93aa
3 changed files with 28 additions and 7 deletions
|
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
|
/** Copyright Stewart Allen <sa@grid.space> -- All Rights Reserved */
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
@ -1103,10 +1104,25 @@
|
||||||
SPACE.showSkyGrid(false);
|
SPACE.showSkyGrid(false);
|
||||||
SPACE.setSkyColor(dark ? 0 : 0xffffff);
|
SPACE.setSkyColor(dark ? 0 : 0xffffff);
|
||||||
SPACE.init(container, function (delta) {
|
SPACE.init(container, function (delta) {
|
||||||
if (API.var.layer_max === 0) return;
|
if (API.var.layer_max === 0 || !delta) return;
|
||||||
if (settings().controller.reverseZoom) delta = -delta;
|
if (settings().controller.reverseZoom) delta = -delta;
|
||||||
if (delta > 0) API.var.layer_at--;
|
let same = API.var.layer_hi === API.var.layer_lo;
|
||||||
else if (delta < 0) API.var.layer_at++;
|
let track = API.var.layer_lo > 0;
|
||||||
|
if (delta > 0) {
|
||||||
|
API.var.layer_hi = Math.max(same ? 0 : API.var.layer_lo, API.var.layer_hi - 1);
|
||||||
|
if (track) {
|
||||||
|
API.var.layer_lo = Math.max(0, API.var.layer_lo - 1);
|
||||||
|
}
|
||||||
|
} else if (delta < 0) {
|
||||||
|
API.var.layer_hi = Math.min(API.var.layer_max, API.var.layer_hi + 1);
|
||||||
|
if (track) {
|
||||||
|
API.var.layer_lo = Math.min(API.var.layer_hi, API.var.layer_lo + 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (same) {
|
||||||
|
API.var.layer_lo = API.var.layer_hi;
|
||||||
|
}
|
||||||
|
API.view.update_slider();
|
||||||
API.show.slices();
|
API.show.slices();
|
||||||
});
|
});
|
||||||
SPACE.platform.onMove(API.conf.save);
|
SPACE.platform.onMove(API.conf.save);
|
||||||
|
|
|
||||||
|
|
@ -409,6 +409,8 @@ MOTO.CTRL = function (object, domElement, notify, slider) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
slider(null);
|
||||||
|
|
||||||
let delta = -(event.deltaY || event.wheelDelta || event.detail || 0);
|
let delta = -(event.deltaY || event.wheelDelta || event.detail || 0);
|
||||||
|
|
||||||
if (delta === 0) return;
|
if (delta === 0) return;
|
||||||
|
|
|
||||||
|
|
@ -715,7 +715,10 @@
|
||||||
clearTimeout(platformMoveTimer);
|
clearTimeout(platformMoveTimer);
|
||||||
platformMoveTimer = setTimeout(platformOnMove, 500);
|
platformMoveTimer = setTimeout(platformOnMove, 500);
|
||||||
}
|
}
|
||||||
}, slider);
|
}, (val) => {
|
||||||
|
updateLastAction();
|
||||||
|
slider(val);
|
||||||
|
});
|
||||||
|
|
||||||
viewControl.noKeys = true;
|
viewControl.noKeys = true;
|
||||||
viewControl.maxDistance = 1000;
|
viewControl.maxDistance = 1000;
|
||||||
|
|
@ -770,8 +773,8 @@
|
||||||
'mouseup', onMouseUp,
|
'mouseup', onMouseUp,
|
||||||
'keypress', keyHandler,
|
'keypress', keyHandler,
|
||||||
// dup with touch but need to observe here
|
// dup with touch but need to observe here
|
||||||
'DOMMouseScroll', updateLastAction,
|
// 'DOMMouseScroll', updateLastAction,
|
||||||
'mousewheel', updateLastAction,
|
// 'mousewheel', updateLastAction,
|
||||||
'touchstart', updateLastAction,
|
'touchstart', updateLastAction,
|
||||||
'touchmove', updateLastAction,
|
'touchmove', updateLastAction,
|
||||||
'touchend', updateLastAction
|
'touchend', updateLastAction
|
||||||
|
|
@ -781,7 +784,7 @@
|
||||||
|
|
||||||
function animate() {
|
function animate() {
|
||||||
requestAnimationFrame(animate);
|
requestAnimationFrame(animate);
|
||||||
if (docVisible && !freeze && Date.now() - lastAction < 2000) {
|
if (docVisible && !freeze && Date.now() - lastAction < 1500) {
|
||||||
renderer.render(SCENE, camera);
|
renderer.render(SCENE, camera);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue