-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ Feature ] [edit: option to] show group buttons in multiple rows ( like before [edit: but better] ) #303
Comments
I would do it this way: [ ■ ] - minimize widget or controller The controller name is set by double-clicking the default name Regarding the need to use both modes (Bypass, mute) I wrote here: |
What about having an user option to display 1 group button per row, with its individual icon buttons. This would also adress this issue: This would also alllow:
|
But for the larger Controllers, I would still like to have the single row "view". Maybe this would be toggled, per Controller, instead of being a global setting. We could have an icon in each Controller to toggle "list view" ( and it could be blue en enabled ). mockup: tabs view list view |
I like where this is going.... |
I wonder if, in list view, it would look good swapped around, so the icons are still on the left as they were before, and the title floats right? Just for slightly more consistency between the views. Maybe for wide controllers it would look weird, though. |
I did that to avoid aligning the buttons to the right, but it also looks good. Or we could still align to the left: Or have the same width on buttons and align the text to the center. And maybe the And if wider: But swapped around also looks good. |
Now it looks like you want the name of the group tab to be the title of the window at the same time, but at the same time you want to be able to display several titles (names of groups) in a row. This is wrong - a window (controller) can have only one title otherwise the interface turns into 💩! You can solve this problem with accordions! 😊 Next, I recommend prioritizing the functions that the user uses often and those that the user uses rarely. If we omit long considerations, I have removed the button to close the [ X ] window and delete the current group from the controller window into a pop-up menu in the form of items: delete and delete all. Also, are you not considering options where the group name would be multiple words, how would a chain of multiple group switches look then with all those switches being in the controller window headers? Once again, I remind you of the need for both bypass and mute switches to be present in the interface This makes three options, taking into account the above wishes:
Hovering over the [ ... ] icon opens a popup menu: Hovering over [ v ] displays a popup menu with a list of groups and a function to add a new group:
[ T ] - trash can icon for deleting a group from the controller
Also in all variants there is a unified minimize icon [ ■ ], which can be a circle as in nodes in a graph and which makes the same indentation from the left edge for easy reading of Controller, group and widget headers I'd settle on the first option, as you should neatly place the inclusion of advanced widgets ), in the first option it would remain a compact and efficient solution, you just need to add an item to the popup menu: |
The Controller windows never had any title / name. As we discussed before, it's better not to have "names" that are not used in the node's graph ( e.g. a title for each Controller ). If you just want to have a single group button in the controller, you don't need "list view". |
We could still have a "mute" button, with any of these layouts. Maybe we could use the |
I've never used mute - but isn't it done using a widget on a node, the rgthree switcher? In which case, surely the best approach is just to support that widget on the controller like any other widget? Rather than trying to duplicate the functionality? I'm very resistant to the idea of making the controller add functionality which isn't already in the workflow. |
Mute mode is needed for nodes that pass through values in bypass mode and they have data on their output even in bypass mode and in this case Any Switch node will not work correctly! |
In the example above, you jsut have to bypass the upper "Load Image" node. How do you mute a node? |
In fact, if you make support for Fast Groups Muter (rgthree) and Fast Groups Bypasser (rgthree) nodes, you don't need the Mute and Bypass buttons in the controller at all! That would be the best solution! |
Look, like I say, I've never used mute. Is it part of the Comfy core functionality? How do you actually mute a node? |
Ctrl +m |
We could support these nodes. But it would be better to have the buttons in the Controller. |
ok - so mute is actually core, and is just a variation on bypass (that produces no output instead of passing the input through)? Can you mute a group (in core Comfy)? |
Yes, that's what I did in the UE nodes: chrisgoringe/cg-use-everywhere#171 I bypassed a group by muting it ! |
How do you mute a group in Comfy? Without any custom nodes? |
So "never" is "mute".... Hmmm. Maybe the best icon would be a mute icon, then, like pi-volume-off with a diagonal slash superimposed... |
Seems to me that we have space in the current layout to have both bypass and mute icons on the header, and also we have space on the node title bar to add them on a node by node basis. Choosing the right icons might be the hardest bit! |
Yeah ... |
I vote for the Rgthree icons - they are easy to understand and they are already being used for this purpose (if, of course, you have democracy :D) |
Yes, have them behave as in the graph with nodes - the white ones become translucent when turned on |
I agree with this, in principle. But, in practice, if you have many panels, it's much easier to differentiate the panel's state, the way it is now. I'm always looking to replicate the ComfyUI style. |
Yeah, I would agree with that. Also, the red pastel icon color, would look better, in these "grey" muted panels. |
If you make lower opacity (let's say 20% or so) you should be able to differentiate them from active and bypassed Not to mention that if you have grey nodes, you won't notice the difference |
First of all, I would move the Bypass/Mute icon to the right side of the widget header - it will not stick to the text of the widget name. |
Yes, I agree it could be finetuned a bit. I would have to see how it looks. But I'd like to keep the the same overall brightness on bypassed and muted nodes.
You can notice the difference due to slider color, and also icon color. |
Yes, I also wanted to do that. But it does not look very good in the controller ( #305 (comment) )
What do you mean ? What about your suggestion for red pastel color ?
What's more important than to know if a node is muted or bypassed ?
We need to have the same overall shape because it's the same button. |
I think we should just give a more pastel color to the mute icon, for now. We should let @chrisgoringe, move on to more important features, in version 1.4 ( e.g. snapping ). In version 1.5 we will have ComfyUI theme support. This will allow much more aesthetic customization. With Color Palettes, we may even be able to change the bypass color, like we now can do in ComfyUI: |
It doesn't matter if the icons are not next to the widget header, the main thing is that they are inside the widget they disable. But the fact that the Bypass/Mute toggle button is moved because of the [Pinned] widget fixing icon - it looks bad. In lists with pinned items it is not necessary to put a pinned icon on each item, it is enough to make a separate section at the top with the title Pinned, and after this section place all other items in the list.
Yes, you don't need colors for these buttons as there are icons for the button states!
This was about the mute/bypass group button (which is always placed on the background of the controller) but not the buttons for widgets. It's bad to color-code a Bypass/Mute button that will be on top of a background that has a random color - these colors can often conflict and cause your eyes to bleed. A better solution is to make the buttons inside the widget white and play with the transparency of the button as well.
You are wrong! The most important thing is the widget data and the work with this data by users, the other things is less important information!
Yes, but on the small scale of micro-buttons, other rules work and you can discard unnecessary detail in favor of readability of what the icon depicts! |
Having the button next to the name makes it easier to see what nodes are muted / bypassed, at a glance.
The "pin" icon is just for nodes with images, to auto adjust the image size, when we resize the Controller.
I think it may be confusing if the
But if the widget is muted or bypassed, the widget data we have there will not matter.
Having colors in the mute/bypass icons, helps readability. If the buttons look too small on your screen, you may need to increase the Controller's font size in the user settings. |
Yep. Better make all buttons white/gray like in ComfyUI! You somehow ignore the fact that a colored button on a colored random background is a terrible solution.
This is clearly visible even without Bypass/Mute buttons - the entire widget becomes semi-transparent. If you make the button on the right side, it will be visible - there will be free space around it! 🤦
And I would advise you to study color theory and the rules of color mixing :) |
Comfy UI also has blue and red buttons.
I think having both visual cues is better: button color and panel color.
What are the colors that are not matching well in the Controller ?
|
In the nodes column, the widgets in the Muted state are not grey, but semi-transparent and have the same color that the user specified. Making them a different color in this state is to further confuse the user. Also in the above link, (Comfy-Org/ComfyUI_frontend#993) Both of these facts suggest that the Bypass/Mute button should be white and translucent when enabled. |
@rollingcookies, we are also discussing aesthetics in this discussion: #309 I think we should have all aesthetic ideas in one place, so that they are easier to follow. This issue is supposed to be only for multi-row headers. |
I think it would be a good idea if someone started a discussion topic just
for aesthetic discussions.
…On Sat, 9 Nov 2024 at 8:54 PM, JorgeR81 ***@***.***> wrote:
@rollingcookies <https://github.com/rollingcookies>, we are also
discussing aesthetics in this discussion: #309
<#309>
I think we should have all aesthetic ideas in one place, so that they are
easier to follow.
This issue is supposed to be only for multi-row headers.
—
Reply to this email directly, view it on GitHub
<#303 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABBLMA2QZ3ROS25V2AU5Z3DZ7XLTZAVCNFSM6AAAAABRJNUDH6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGE2TEMBTHA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
OK, here: #314 |
This is a mockup, with the new proposed header style ( #361 (comment) )
|
do you think it would look better with the 'advanced' lightning flash to the left of the name so that they are aligned? |
Yes, but then we would have an empty space, if the group doesn't have advanced controls. It may look better if all the group buttons have the same length, in "list mode". This layout is also more convenient, if we need to add more icon buttons in the future. |
The bolt icon on the left, could be the best option, depending on how we implement "hidden widgets" ( #143 ). ComfyUI calls this If a node has ComfyUI's So both icons would have the same layout in both headers ( Node and Controller ). |
This is a mockup of a Controller with We have both buttons in the both headers ( Node and Controller ).
The I may want to see the masked face image, without seeing all the |
@chrisgoringe, regarding this "multi-row" header feature, in terms of cost/benefit, this alternative approach may be better:
If possible use a thicker outline, to make it stand out. With this alternative approach, the only thing we "lose" it's the ability to change the state for non-select groups. And we also have other advantages:
mockup
|
With support to Users that require complex combinations of group mute / bypass, can add these nodes to a separate Controller window. The only thing we really need, it's an user option to show the full group name ( in multiple lines ), like before. And, if it's not too hard to implement, button highlighting ( for the mute/bypass states ), would also be cool. |
For the sake of simplicity, I think we can now close this issue, because:
|
I use narrow, full height, Controllers.
I have 2 buttons per controller.
It would be better to just show the buttons in 2 rows.
The text was updated successfully, but these errors were encountered: