Skip to content

fix fast-groups toggle + widget sync in frontend (fast_actions/fast_groups_muter)#594

Open
tlennon-ie wants to merge 1 commit intorgthree:mainfrom
tlennon-ie:fast-action-button-toggle-fix
Open

fix fast-groups toggle + widget sync in frontend (fast_actions/fast_groups_muter)#594
tlennon-ie wants to merge 1 commit intorgthree:mainfrom
tlennon-ie:fast-action-button-toggle-fix

Conversation

@tlennon-ie
Copy link
Copy Markdown

Summary

This PR fixes a frontend bug in the RGTHREE custom nodes where the "Fast Actions" button and the "Fast Groups" widgets would not reliably toggle group enable/bypass state (the button seemed to toggle only once or behave directionally). The issue was caused by a mix of:

  • reading widget boolean state from widget.value (an object) instead of the FastGroupsToggleRowWidget boolean accessor widget.toggled,
  • and not always letting nodes handle their own action via handleAction, which can lead to stale UI widget state unless a recompute/refresh is run afterwards.

Changes

  • Normalize widget boolean reads (use widget.toggled if present, fallback to widget.value) in fast_groups_muter.js.
  • Prefer calling node.handleAction(action) from the Fast Actions button if the node implements it. After calling handleAction, force a widget refresh and schedule the fast-groups service recompute to ensure UI state and internal group caches are synchronized.

Files changed

  • custom_nodes/rgthree-comfy/web/comfyui/fast_groups_muter.js
  • custom_nodes/rgthree-comfy/web/comfyui/fast_actions_button.js

Testing

  • Manual: Verified locally that Toggle/Enable/Bypass now flips groups back-and-forth reliably with toggleRestriction = "always one".
    See gif animation of the button working on latest comfyui version as of today

brave_GKbr9RIbdK

- normalize widget boolean reads to use widget.toggled when present
- prefer node.handleAction(action) for virtual actions and refresh widgets/service after
- add sync scheduling to ensure UI state updates after programmatic changes
r-vage added a commit to r-vage/rgthree-comfy that referenced this pull request Feb 9, 2026
…vitai filter

- PR rgthree#594: Fast Groups toggle widget state normalization
  * Prefer node.handleAction() over direct mode changes in Fast Actions Button
  * Add getWidgetBool() helper to normalize widget.toggled vs widget.value
  * Call refreshWidgets() and scheduleRun() after handleAction()

- PR rgthree#679: Add Civitai filter to LoRA trigger words
  * New civitai parameter for get_enabled_triggers_from_prompt_node()
  * Filters trainedWords to only include Civitai-tagged words when enabled
  * Backward compatible with default value False

These fixes complement our event-driven mode change detection for Fast Bypasser.
All changes preserve our custom property setter approach in base_node_mode_changer.js.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant