-
Notifications
You must be signed in to change notification settings - Fork 156
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
Image Feed: UX Overhauling #63
base: main
Are you sure you want to change the base?
Conversation
- Makes the panel resizable using a bar on the open side - Slight styling changes - Removed column/image feed size options - Added image size option - Grid should auto-adjust based on the size and desired image size - Holding Ctrl while resizing will snap to the current image size * step - Changed the "Resize Feed" setting text to a Cog emoji - Use the .div for image containers instead of .img to adjust brightness - Moved css variables to the new image-feed-root - Always show the inner feed box
Fixes the flickering for when the mouse is too fast for the handle
Looks really nice so far!
Not really anything nice, there is the litegraph ContextMenu but it isnt overly useful for this scenario |
Oh, yeah just having min width be the size of the header buttons is super good. I assume vertically I would let the empty feed be able to get cut off, but the header needs to be always visible somehow.
Shame, I can make my own implementation for now (I don't really like how the popups in comfy/litegraph work anyways, as clicking outside of them don't cancel them). I Would've liked to use something that exists and improve it upstream, but I can use this to try stuff and then get it upstreamed later. Where would you want me to put the widget implementation? Not the image feed's settings menu, but the re-usable popup widget itself, or should I do a separate pull request for that? |
You can either just put it in the image feed file for now and I can move it out if it gets reused, or into the common folder |
See image feed for an example of usage.
Popup shouldn't go off the bottom screen now
Switch from width to min-width/height for the panel size Makes it so when the feed is empty, the width/height is more than any content inside So the header buttons should be the new minimum width for the panel When there are images, the panel will expand to desired image size
Closes when mouse distance is too far Adds an option to set the max distance, defaulting to 50 Makes the container more opaque Fixes outside of window logic
Update image feed stuff
Every side now makes the image size bigger when pulling the panel out
Yeah, I saw the problems with the top/bottom modes. In my experience I haven't been able to drag the panel larger than the window since that's just not possible lmao, but that might be because Wayland just doesn't allow that? windows/x11/mac probably allow events outside the window, so that's probably something I just can't test for. Using min(max()) in the panel size equations should fix that probably, like how I was using it before. |
Now that there's a ComfyUI built-in image queue feed, this PR should be closed and the custom feed removed from the plugin. |
out.mp4
I ended up having free time unexpectedly, so I went ahead and tried to work on some of those suggestions I had.
Doing a draft for now, since I would like feedback on the current changes from another user's perspective, and it's slightly broken in a few ways at the moment. Also pretty messy.
The "right" location settings menu is broken because it's attached to the panel, so width changes from adjusting image size makes it do bad things.
Definitely want
Nice to have
Adjust the panel's width after changing locations and on load so it doesn't snap outward. (Or change it so the images shrink like I wanted to do and allow for the panel to be dragged smaller than image size.)Have a little area near the settings/clear/close buttons, that when dragging, shows a preview to snap the panel to a different location. On release, changes the location to it.Just moved to the setting popup instead.