From 6dd088fd2250498c0abab5dd1c958b9bc55fff86 Mon Sep 17 00:00:00 2001 From: mvdbeek Date: Fri, 19 Mar 2021 12:35:55 +0100 Subject: [PATCH] Ensure new outputs have correct mapOver state by storing the effective mapOver state on the node. Fixes https://github.com/galaxyproject/galaxy/issues/10778 --- client/src/components/Workflow/Editor/Node.vue | 3 +++ client/src/components/Workflow/Editor/modules/terminals.js | 1 + 2 files changed, 4 insertions(+) diff --git a/client/src/components/Workflow/Editor/Node.vue b/client/src/components/Workflow/Editor/Node.vue index 4b1600c591e..cbba30677f9 100644 --- a/client/src/components/Workflow/Editor/Node.vue +++ b/client/src/components/Workflow/Editor/Node.vue @@ -248,6 +248,9 @@ export default { delete this.inputTerminals[input.name]; }, onAddOutput(output, terminal) { + if (this.mapOver) { + terminal.setMapOver(this.mapOver); + } this.outputTerminals[output.name] = terminal; }, onRemoveOutput(output) { diff --git a/client/src/components/Workflow/Editor/modules/terminals.js b/client/src/components/Workflow/Editor/modules/terminals.js index 9e2fab488d3..e7b1a79b82a 100644 --- a/client/src/components/Workflow/Editor/modules/terminals.js +++ b/client/src/components/Workflow/Editor/modules/terminals.js @@ -157,6 +157,7 @@ class Terminal extends EventEmitter { } if (!this.mapOver.equal(val)) { this.mapOver = val; + this.node.mapOver = output_val; Object.values(this.node.outputTerminals).forEach((outputTerminal) => { outputTerminal.setMapOver(output_val); });