middle drag for mouse
This commit is contained in:
parent
896a3f07f4
commit
c1bea959f3
1 changed files with 10 additions and 0 deletions
|
|
@ -390,6 +390,15 @@ class Orbit extends EventDispatcher {
|
|||
if (scope.enabled === false) return;
|
||||
event.preventDefault();
|
||||
|
||||
// keep wheel as dolly, but treat middle-button drag like right-button drag
|
||||
// in default orbit bindings.
|
||||
const touchSynthesized = Boolean(event?.sourceCapabilities?.firesTouchEvents);
|
||||
if (!touchSynthesized
|
||||
&& event.button === MOUSE.MIDDLE
|
||||
&& scope.mouseButtons.ZOOM === MOUSE.MIDDLE
|
||||
&& scope.mouseButtons.PAN === MOUSE.RIGHT) {
|
||||
state = STATE.PAN;
|
||||
} else {
|
||||
switch (event.button) {
|
||||
case scope.mouseButtons.ORBIT:
|
||||
state = event.metaKey ? STATE.PAN : STATE.ROTATE;
|
||||
|
|
@ -401,6 +410,7 @@ class Orbit extends EventDispatcher {
|
|||
state = STATE.PAN;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch (state) {
|
||||
case STATE.ROTATE:
|
||||
|
|
|
|||
Loading…
Reference in a new issue