- fix config migration issue

- change rts/dtr to persist value
This commit is contained in:
Xen 2020-07-30 21:47:15 +08:00
parent 4e42075e6b
commit 27451a4ace
3 changed files with 51 additions and 22 deletions

View File

@ -1,7 +1,7 @@
{
"name": "comNG",
"productName": "comNG",
"version": "1.0.10",
"version": "1.0.11",
"mode": "dev",
"description": "A powerful serialport tool with modernx UI",
"repository": "https://github.com/xenkuo/comNG",

View File

@ -64,9 +64,13 @@ const store = new Store({
store.set("transmit.hexmode", false);
store.set("about.insiderPreview", false);
},
"1.0.10": (store) => {
"1.0.11": (store) => {
store.set("fileops.capture.switch", false);
store.set("fileops.capture.filePath", "");
store.delete("general.modemSignal");
store.set("general.modemSignal.switch", false);
store.set("general.modemSignal.rts", false);
store.set("general.modemSignal.dtr", false);
},
},
});
@ -162,9 +166,17 @@ window.onload = () => {
document.getElementById("hexmode-switch").checked = config.general.hexmode;
document.getElementById("timestamp-switch").checked =
config.general.timestamp;
if (true === config.general.modemSignal.rts) {
let e = document.getElementById("rts-btn");
e.classList.remove("grey");
}
if (true === config.general.modemSignal.dtr) {
let e = document.getElementById("dtr-btn");
e.classList.remove("grey");
}
document.getElementById("modem-signal-switch").checked =
config.general.modemSignal;
if (config.general.modemSignal === true) {
config.general.modemSignal.switch;
if (config.general.modemSignal.switch === true) {
document.getElementById("modem-signal-bar").hidden = false;
} else {
document.getElementById("modem-signal-bar").hidden = true;
@ -442,7 +454,7 @@ document.getElementById("timestamp-switch").onclick = (e) => {
document.getElementById("modem-signal-switch").onclick = (e) => {
let state = e.target.checked;
configUpdate("general.modemSignal", state);
configUpdate("general.modemSignal.switch", state);
if (state === true) {
document.getElementById("modem-signal-bar").hidden = false;
} else {

View File

@ -7,8 +7,6 @@ var modemSignal = {
cts: false,
dsr: false,
dcd: false,
rts: false,
dtr: false,
};
function portUpdate() {
@ -70,6 +68,7 @@ function modemSignalTimerHandle() {
});
}
// Only readonly signals need reset
function modemSignalReset() {
modemSignal.cts = false;
modemSignal.dsr = false;
@ -161,9 +160,15 @@ document.getElementById("port-switch").onclick = (e) => {
// cause issues to other devices.
// To fit your device's private behavior, first config setting before
// open the port.
port.set({ rts: modemSignal.rts, dtr: modemSignal.dtr }, (e) => {
if (e !== null) console.error(e);
});
port.set(
{
rts: config.general.modemSignal.rts,
dtr: config.general.modemSignal.dtr,
},
(e) => {
if (e !== null) console.error(e);
}
);
});
port.on("error", (e) => {
@ -204,33 +209,45 @@ document.getElementById("port-switch").onclick = (e) => {
document.getElementById("rts-btn").onclick = (e) => {
console.log("rts click");
if (modemSignal.rts === true) {
modemSignal.rts = false;
if (config.general.modemSignal.rts === true) {
configUpdate("general.modemSignal.rts", false);
e.target.classList.add("grey");
} else {
modemSignal.rts = true;
configUpdate("general.modemSignal.rts", true);
e.target.classList.remove("grey");
}
if (port === undefined || port.isOpen === false) return;
port.set({ rts: modemSignal.rts, dtr: modemSignal.dtr }, (e) => {
if (e !== null) console.error(e);
});
port.set(
{
rts: config.general.modemSignal.rts,
dtr: config.general.modemSignal.dtr,
},
(e) => {
if (e !== null) console.error(e);
}
);
};
document.getElementById("dtr-btn").onclick = (e) => {
console.log("dtr click");
if (modemSignal.dtr === true) {
modemSignal.dtr = false;
if (config.general.modemSignal.dtr === true) {
configUpdate("general.modemSignal.dtr", false);
e.target.classList.add("grey");
} else {
modemSignal.dtr = true;
configUpdate("general.modemSignal.dtr", true);
e.target.classList.remove("grey");
}
if (port === undefined || port.isOpen === false) return;
port.set({ rts: modemSignal.rts, dtr: modemSignal.dtr }, (e) => {
if (e !== null) console.error(e);
});
port.set(
{
rts: config.general.modemSignal.rts,
dtr: config.general.modemSignal.dtr,
},
(e) => {
if (e !== null) console.error(e);
}
);
};