Prevent cleaning graph state on undo/redo (#2255)
* Prevent cleaning graph state on undo/redo * Remove pause rendering due to LG bug
This commit is contained in:
parent
57926635e8
commit
ab93abd4b2
|
@ -71,24 +71,21 @@ function graphEqual(a, b, root = true) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const undoRedo = async (e) => {
|
const undoRedo = async (e) => {
|
||||||
|
const updateState = async (source, target) => {
|
||||||
|
const prevState = source.pop();
|
||||||
|
if (prevState) {
|
||||||
|
target.push(activeState);
|
||||||
|
isOurLoad = true;
|
||||||
|
await app.loadGraphData(prevState, false);
|
||||||
|
activeState = prevState;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (e.ctrlKey || e.metaKey) {
|
if (e.ctrlKey || e.metaKey) {
|
||||||
if (e.key === "y") {
|
if (e.key === "y") {
|
||||||
const prevState = redo.pop();
|
updateState(redo, undo);
|
||||||
if (prevState) {
|
|
||||||
undo.push(activeState);
|
|
||||||
isOurLoad = true;
|
|
||||||
await app.loadGraphData(prevState);
|
|
||||||
activeState = prevState;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
} else if (e.key === "z") {
|
} else if (e.key === "z") {
|
||||||
const prevState = undo.pop();
|
updateState(undo, redo);
|
||||||
if (prevState) {
|
|
||||||
redo.push(activeState);
|
|
||||||
isOurLoad = true;
|
|
||||||
await app.loadGraphData(prevState);
|
|
||||||
activeState = prevState;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1559,9 +1559,12 @@ export class ComfyApp {
|
||||||
/**
|
/**
|
||||||
* Populates the graph with the specified workflow data
|
* Populates the graph with the specified workflow data
|
||||||
* @param {*} graphData A serialized graph object
|
* @param {*} graphData A serialized graph object
|
||||||
|
* @param { boolean } clean If the graph state, e.g. images, should be cleared
|
||||||
*/
|
*/
|
||||||
async loadGraphData(graphData) {
|
async loadGraphData(graphData, clean = true) {
|
||||||
this.clean();
|
if (clean !== false) {
|
||||||
|
this.clean();
|
||||||
|
}
|
||||||
|
|
||||||
let reset_invalid_values = false;
|
let reset_invalid_values = false;
|
||||||
if (!graphData) {
|
if (!graphData) {
|
||||||
|
|
Loading…
Reference in New Issue