File tree Expand file tree Collapse file tree 1 file changed +12
-8
lines changed Expand file tree Collapse file tree 1 file changed +12
-8
lines changed Original file line number Diff line number Diff line change @@ -301,6 +301,7 @@ class CornerstoneViewport extends Component {
301301 componentWillUnmount ( ) {
302302 const clear = true ;
303303
304+ this . _handleOnElementEnabledEvent ( clear ) ;
304305 this . _bindInternalCornerstoneEventListeners ( clear ) ;
305306 this . _bindInternalElementEventListeners ( clear ) ;
306307 this . _bindExternalEventListeners ( 'cornerstone' , clear ) ;
@@ -565,28 +566,31 @@ class CornerstoneViewport extends Component {
565566 * @memberof CornerstoneViewport
566567 * @returns {undefined }
567568 */
568- _handleOnElementEnabledEvent = ( ) => {
569+ _handleOnElementEnabledEvent = ( clear = false ) => {
569570 const handler = evt => {
570571 const elementThatWasEnabled = evt . detail . element ;
571572 if ( elementThatWasEnabled === this . element ) {
572573 // Pass Event
573574 this . props . onElementEnabled ( evt ) ;
574-
575- // Stop Listening
576- cornerstone . events . removeEventListener (
577- cornerstone . EVENTS . ELEMENT_ENABLED ,
578- handler
579- ) ;
580575 }
581576 } ;
582577
583578 // Start Listening
584- if ( this . props . onElementEnabled ) {
579+ if ( this . props . onElementEnabled && ! clear ) {
585580 cornerstone . events . addEventListener (
586581 cornerstone . EVENTS . ELEMENT_ENABLED ,
587582 handler
588583 ) ;
589584 }
585+
586+ // Stop Listening
587+ if ( clear ) {
588+ // Stop Listening
589+ cornerstone . events . removeEventListener (
590+ cornerstone . EVENTS . ELEMENT_ENABLED ,
591+ handler
592+ ) ;
593+ }
590594 } ;
591595
592596 /**
You can’t perform that action at this time.
0 commit comments