|
@@ -412,6 +412,7 @@ THREE.OrbitControls = function ( object, domElement ) {
|
|
|
if ( state !== STATE.NONE ) {
|
|
|
document.addEventListener( 'mousemove', onMouseMove, false );
|
|
|
document.addEventListener( 'mouseup', onMouseUp, false );
|
|
|
+ document.addEventListener( 'mouseout', onMouseOut, false );
|
|
|
scope.dispatchEvent( startEvent );
|
|
|
}
|
|
|
|
|
@@ -482,6 +483,19 @@ THREE.OrbitControls = function ( object, domElement ) {
|
|
|
|
|
|
document.removeEventListener( 'mousemove', onMouseMove, false );
|
|
|
document.removeEventListener( 'mouseup', onMouseUp, false );
|
|
|
+ document.removeEventListener( 'mouseout', onMouseOut, false );
|
|
|
+ scope.dispatchEvent( endEvent );
|
|
|
+ state = STATE.NONE;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ function onMouseOut( /* event */ ) {
|
|
|
+
|
|
|
+ if ( scope.enabled === false ) return;
|
|
|
+
|
|
|
+ document.removeEventListener( 'mousemove', onMouseMove, false );
|
|
|
+ document.removeEventListener( 'mouseup', onMouseUp, false );
|
|
|
+ document.removeEventListener( 'mouseout', onMouseOut, false );
|
|
|
scope.dispatchEvent( endEvent );
|
|
|
state = STATE.NONE;
|
|
|
|
|
@@ -705,6 +719,7 @@ THREE.OrbitControls = function ( object, domElement ) {
|
|
|
|
|
|
document.removeEventListener( 'mousemove', onMouseMove, false );
|
|
|
document.removeEventListener( 'mouseup', onMouseUp, false );
|
|
|
+ document.removeEventListener( 'mouseout', onMouseOut, false );
|
|
|
|
|
|
window.removeEventListener( 'keydown', onKeyDown, false );
|
|
|
|