1
0
Fork 0
mirror of https://github.com/betaflight/betaflight-configurator.git synced 2025-07-24 16:55:24 +03:00

Checks for refresh

This commit is contained in:
blckmn 2025-06-20 21:18:02 +10:00
parent a3aefb10c3
commit a604fce2f3

View file

@ -44,6 +44,7 @@ class WebSerial extends EventTarget {
this.closeRequested = false;
this.transmitting = false;
this.connectionInfo = null;
this.refreshRequired = true;
this.bitrate = 0;
this.bytesSent = 0;
@ -79,7 +80,7 @@ class WebSerial extends EventTarget {
const added = this.createPort(device);
this.ports.push(added);
this.dispatchEvent(new CustomEvent("addedDevice", { detail: added }));
this.refreshRequired = true;
return added;
}
@ -87,6 +88,7 @@ class WebSerial extends EventTarget {
const removed = this.ports.find((port) => port.port === device);
this.ports = this.ports.filter((port) => port.port !== device);
this.dispatchEvent(new CustomEvent("removedDevice", { detail: removed }));
this.refreshRequired = true;
}
handleReceiveBytes(info) {
@ -121,6 +123,7 @@ class WebSerial extends EventTarget {
const ports = await navigator.serial.getPorts();
this.portCounter = 1;
this.ports = ports.map((port) => this.createPort(port));
this.refreshRequired = false;
} catch (error) {
console.error(`${logHead} Error loading devices:`, error);
}
@ -142,11 +145,14 @@ class WebSerial extends EventTarget {
} catch (error) {
console.error(`${logHead} User didn't select any SERIAL device when requesting permission:`, error);
}
this.refreshRequired = true;
return newPermissionPort;
}
async getDevices() {
await this.loadDevices();
if (this.refreshRequired) {
await this.loadDevices();
}
return this.ports;
}