Avoid calling inputChange when setting encoding inside loadURIParams

Otherwise the debounce logic sometimes causes the input to be overriden by the previous value.
This commit is contained in:
zb3 2024-04-05 18:48:45 +02:00
parent ab0493f53a
commit fc40580dce
2 changed files with 5 additions and 3 deletions

View file

@ -502,7 +502,7 @@ class App {
// Input Character Encoding
// Must be set before the input is loaded
if (this.uriParams.ienc) {
this.manager.input.chrEncChange(parseInt(this.uriParams.ienc, 10), true);
this.manager.input.chrEncChange(parseInt(this.uriParams.ienc, 10), true, true);
}
// Output Character Encoding

View file

@ -217,11 +217,13 @@ class InputWaiter {
* @param {number} chrEncVal
* @param {boolean} [manual=false]
*/
chrEncChange(chrEncVal, manual=false) {
chrEncChange(chrEncVal, manual=false, internal=false) {
if (typeof chrEncVal !== "number") return;
this.inputChrEnc = chrEncVal;
this.encodingState = manual ? 2 : this.encodingState;
this.inputChange();
if (!internal) {
this.inputChange();
}
}
/**