File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22 "name" : " SoulSifter" ,
33 "version" : " 1.10.0" ,
44 "description" : " DJ & music organization app." ,
5- "build" : 4221 ,
5+ "build" : 4222 ,
66 "main" : " main.js" ,
77 "scripts" : {
88 "fe:build" : " vite build" ,
Original file line number Diff line number Diff line change @@ -63,12 +63,16 @@ class MidiManager {
6363 }
6464 }
6565
66- async disconnect ( ) {
66+ disconnect ( ) {
6767 this . _midiInput . removeListener ( ) ;
6868 this . _midiInput = null ;
6969 this . _channelCallbacks = [ ] ;
7070 }
7171
72+ isConnected ( ) {
73+ return ! ! this . _midiInput ;
74+ }
75+
7276 _setupListeners ( ) {
7377 if ( this . _midiInput ) {
7478 Object . entries ( this . _channelCallbacks ) . forEach ( ( [ channel , chanCb ] ) => {
Original file line number Diff line number Diff line change @@ -89,7 +89,6 @@ class SearchToolbar extends AlertsMixin(BpmMixin(QueryMixin(SearchMixin(SearchOp
8989
9090 connectedCallback ( ) {
9191 super . connectedCallback ( ) ;
92- this . registerMidiCallbacks ( ) ;
9392 window . addEventListener ( 'register-midi-callbacks' , this . registerMidiCallbacks . bind ( this ) ) ;
9493 }
9594
@@ -433,6 +432,8 @@ class SearchToolbar extends AlertsMixin(BpmMixin(QueryMixin(SearchMixin(SearchOp
433432 }
434433
435434 connectToMidiController ( e ) {
435+ const event = new CustomEvent ( 'register-midi-callbacks' , { } ) ;
436+ window . dispatchEvent ( event ) ;
436437 midiManager . connect ( this . settings . getString ( 'midi.controllerName' ) ) ;
437438 }
438439
Original file line number Diff line number Diff line change @@ -366,9 +366,11 @@ class SettingsEdit extends SettingsMixin(LitElement) {
366366 this . puti ( 'virtualdj.port' , Number ( this . shadowRoot . getElementById ( 'virtualdjPort' ) . value ) ) ;
367367 this . settings . save ( ) ;
368368 // reset midi
369- midiManager . removeListeners ( ) ;
370- const event = new CustomEvent ( 'register-midi-callbacks' , { } ) ;
371- window . dispatchEvent ( event ) ;
369+ if ( midiManager . isConnected ( ) ) {
370+ midiManager . removeListeners ( ) ;
371+ const event = new CustomEvent ( 'register-midi-callbacks' , { } ) ;
372+ window . dispatchEvent ( event ) ;
373+ }
372374 this . exit ( ) ;
373375 }
374376
Original file line number Diff line number Diff line change @@ -126,7 +126,6 @@ class SongList extends AlertsMixin(
126126 window . addEventListener ( 'keydown' , this . keydownHandler . bind ( this ) ) ;
127127 window . addEventListener ( 'song-list-pos' , this . getNextOrPrevSong . bind ( this ) ) ;
128128 window . addEventListener ( 'register-midi-callbacks' , this . registerMidiCallbacks . bind ( this ) ) ;
129- this . registerMidiCallbacks ( ) ;
130129 }
131130
132131 firstUpdated ( ) {
Original file line number Diff line number Diff line change @@ -88,7 +88,6 @@ class VDJWaveform extends AlertsMixin(SettingsMixin(LitElement)) {
8888 window . addEventListener ( 'enable-stem-waveforms' , e => {
8989 if ( this . settings . getBool ( 'virtualdj.active' ) && e . detail ) {
9090 this . startUpdating ( ) ;
91- this . registerMidiCallbacks ( ) ;
9291 } else {
9392 this . stopUpdating ( ) ;
9493 this . stopDisplayTimeUpdate ( ) ;
You can’t perform that action at this time.
0 commit comments