@@ -235,6 +235,26 @@ function resetConnection() {
235235 $ ( "div.connection_button__label" ) . text ( i18n . getMessage ( "connect" ) ) ;
236236 $ ( "a.connection_button__link" ) . removeClass ( "active" ) ;
237237
238+ clearLiveDataRefreshTimer ( ) ;
239+
240+ MSP . clearListeners ( ) ;
241+
242+ if ( PortHandler . portPicker . selectedPort !== "virtual" ) {
243+ serial . removeEventListener ( "receive" , read_serial_adapter ) ;
244+ serial . removeEventListener ( "connect" , connectHandler ) ;
245+ serial . removeEventListener ( "disconnect" , disconnectHandler ) ;
246+ }
247+
248+ $ ( "#tabs ul.mode-connected" ) . hide ( ) ;
249+ $ ( "#tabs ul.mode-connected-cli" ) . hide ( ) ;
250+ $ ( "#tabs ul.mode-disconnected" ) . show ( ) ;
251+
252+ // header bar
253+ $ ( "#sensor-status" ) . hide ( ) ;
254+ $ ( "#portsinput" ) . show ( ) ;
255+ $ ( "#dataflash_wrapper_global" ) . hide ( ) ;
256+ $ ( "#quad-status_wrapper" ) . hide ( ) ;
257+
238258 CONFIGURATOR . connectionValid = false ;
239259 CONFIGURATOR . cliValid = false ;
240260 CONFIGURATOR . cliActive = false ;
@@ -331,6 +351,11 @@ function onOpen(openInfo) {
331351 }
332352 } ) ;
333353 } else {
354+ if ( ! serial . connected ) {
355+ abortConnection ( ) ;
356+ return ;
357+ }
358+
334359 const dialog = $ ( ".dialogConnectWarning" ) [ 0 ] ;
335360
336361 $ ( ".dialogConnectWarning-content" ) . html (
@@ -654,29 +679,9 @@ function onConnect() {
654679function onClosed ( result ) {
655680 gui_log ( i18n . getMessage ( result ? "serialPortClosedOk" : "serialPortClosedFail" ) ) ;
656681
657- $ ( "#tabs ul.mode-connected" ) . hide ( ) ;
658- $ ( "#tabs ul.mode-connected-cli" ) . hide ( ) ;
659- $ ( "#tabs ul.mode-disconnected" ) . show ( ) ;
660-
661- // header bar
662- $ ( "#sensor-status" ) . hide ( ) ;
663- $ ( "#portsinput" ) . show ( ) ;
664- $ ( "#dataflash_wrapper_global" ) . hide ( ) ;
665- $ ( "#quad-status_wrapper" ) . hide ( ) ;
666-
667682 console . log ( `${ logHead } Connection closed:` , result ) ;
668683
669684 resetConnection ( ) ;
670-
671- clearLiveDataRefreshTimer ( ) ;
672-
673- MSP . clearListeners ( ) ;
674-
675- if ( PortHandler . portPicker . selectedPort !== "virtual" ) {
676- serial . removeEventListener ( "receive" , read_serial_adapter ) ;
677- serial . removeEventListener ( "connect" , connectHandler ) ;
678- serial . removeEventListener ( "disconnect" , disconnectHandler ) ;
679- }
680685}
681686
682687export function read_serial ( info ) {
0 commit comments