Ver Fonte

OrbitControls: interceptControlDown listener not removed while dispose OrbitControls. (#27778)

* OrbitControls: interceptControlDown listener not removed while dispose OrbitControls.

* Update OrbitControls.js

Clean up.

---------

Co-authored-by: Michael Herzog <[email protected]>
Ivan Li há 1 ano atrás
pai
commit
98941a0cd6
1 ficheiros alterados com 3 adições e 0 exclusões
  1. 3 0
      examples/jsm/controls/OrbitControls.js

+ 3 - 0
examples/jsm/controls/OrbitControls.js

@@ -424,6 +424,9 @@ class OrbitControls extends EventDispatcher {
 			scope.domElement.removeEventListener( 'pointermove', onPointerMove );
 			scope.domElement.removeEventListener( 'pointerup', onPointerUp );
 
+			const document = scope.domElement.getRootNode(); // offscreen canvas compatibility
+
+			document.removeEventListener( 'keydown', interceptControlDown, { capture: true } );
 
 			if ( scope._domElementKeyEvents !== null ) {