Merge feat/textgate-runbutton-fix: Run-from-here fires Comfy.QueuePrompt (text + image gate)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -20,8 +20,12 @@ The node currently has no explicit state. Add three:
|
|||||||
- **passed** — after Pass click. Textarea keeps the edited text, **Pass** hidden,
|
- **passed** — after Pass click. Textarea keeps the edited text, **Pass** hidden,
|
||||||
**▶ Run from here** shown, status `passed — Run from here to re-run`.
|
**▶ Run from here** shown, status `passed — Run from here to re-run`.
|
||||||
|
|
||||||
**Run from here** click → `app.queuePrompt(0, 1)` with `app.queuePrompt(0)`
|
**Run from here** click → executes the `Comfy.QueuePrompt` command via
|
||||||
fallback — copied verbatim from the Image Gate's `queueFromHere`.
|
`app.extensionManager.command.execute(...)` — the same path the Run button and
|
||||||
|
Ctrl+Enter use, so the prompt actually starts. A bare `app.queuePrompt(0, 1)`
|
||||||
|
enqueues but skips the command's run setup, so the 1.47 frontend doesn't kick off
|
||||||
|
execution (you'd have to press Run yourself). `app.queuePrompt` remains a fallback
|
||||||
|
for older frontends without the command registry.
|
||||||
|
|
||||||
## Sticky edited text (by intent, not text comparison)
|
## Sticky edited text (by intent, not text comparison)
|
||||||
|
|
||||||
|
|||||||
@@ -215,6 +215,16 @@ function showResolved(node, choiceLabel) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function queueFromHere(node) {
|
async function queueFromHere(node) {
|
||||||
|
// Fire the same command the Run button / Ctrl+Enter use, so the prompt
|
||||||
|
// actually EXECUTES. A bare app.queuePrompt(...) enqueues but skips the
|
||||||
|
// command's run setup, so the 1.47 frontend doesn't kick off the run (you'd
|
||||||
|
// have to press Run yourself). Fall back to app.queuePrompt on older
|
||||||
|
// frontends without the command registry.
|
||||||
|
const cmd = app.extensionManager?.command;
|
||||||
|
if (cmd?.execute) {
|
||||||
|
try { await cmd.execute("Comfy.QueuePrompt"); return; }
|
||||||
|
catch (e) { /* fall through to the legacy path */ }
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
await app.queuePrompt(0, 1);
|
await app.queuePrompt(0, 1);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|||||||
@@ -43,6 +43,16 @@ async function postPass(node, text) {
|
|||||||
// re-pauses the gate, matching the Image Gate's queueFromHere.
|
// re-pauses the gate, matching the Image Gate's queueFromHere.
|
||||||
|
|
||||||
async function queueFromHere(node) {
|
async function queueFromHere(node) {
|
||||||
|
// Fire the same command the Run button / Ctrl+Enter use, so the prompt
|
||||||
|
// actually EXECUTES. A bare app.queuePrompt(...) enqueues but skips the
|
||||||
|
// command's run setup, so the 1.47 frontend doesn't kick off the run (you'd
|
||||||
|
// have to press Run yourself). Fall back to app.queuePrompt on older
|
||||||
|
// frontends without the command registry.
|
||||||
|
const cmd = app.extensionManager?.command;
|
||||||
|
if (cmd?.execute) {
|
||||||
|
try { await cmd.execute("Comfy.QueuePrompt"); return; }
|
||||||
|
catch (e) { /* fall through to the legacy path */ }
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
await app.queuePrompt(0, 1);
|
await app.queuePrompt(0, 1);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user