Fixing disconnect to handle different cases differently.

This commit is contained in:
Evelyn Eastmond 2019-03-19 10:44:33 -04:00
parent 151789cbad
commit 65b05a9da4
2 changed files with 16 additions and 6 deletions

View file

@ -73,14 +73,19 @@ class BLE extends JSONRPCWebSocket {
* Close the websocket. * Close the websocket.
*/ */
disconnect () { disconnect () {
if (this._ws.readyState !== this._ws.OPEN) return; if (this._ws.readyState === this._ws.OPEN) {
this._ws.close();
}
this._ws.close(); if (this._connected) {
this._connected = false; this._connected = false;
}
if (this._discoverTimeoutID) { if (this._discoverTimeoutID) {
window.clearTimeout(this._discoverTimeoutID); window.clearTimeout(this._discoverTimeoutID);
} }
// Sets connection status icon to orange
this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED);
} }

View file

@ -75,14 +75,19 @@ class BT extends JSONRPCWebSocket {
* Close the websocket. * Close the websocket.
*/ */
disconnect () { disconnect () {
if (this._ws.readyState !== this._ws.OPEN) return; if (this._ws.readyState === this._ws.OPEN) {
this._ws.close();
}
if (this._connected) {
this._connected = false;
}
this._ws.close();
this._connected = false;
if (this._discoverTimeoutID) { if (this._discoverTimeoutID) {
window.clearTimeout(this._discoverTimeoutID); window.clearTimeout(this._discoverTimeoutID);
} }
// Sets connection status icon to orange
this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED);
} }