psychedelicious
714126b832
build(ui): temp disable circular dependency check
...
I'll need to think about how to fix this properly. For now, disable the check as the UI can still build fine.
2024-04-22 23:09:39 +10:00
psychedelicious
a10c66797d
chore(ui): lint
2024-04-22 23:09:39 +10:00
psychedelicious
6dcaf75b5f
feat(ui): regional prompts spray n pray
...
Trying a lot of different things as I iterated, so this is smooshed into one big commit... too hard to split it now.
- Iterated on IP adapter handling and UI. Unfortunately there is an bug related to undo/redo. The IP adapter state is split across the `controlAdapters` slice and the `regionalPrompts` slice, but only the `regionalPrompts` slice supports undo/redo. If you delete the IP adapter and then undo/redo to a history state where it existed, you'll get an error. The fix is likely to merge the slices... Maybe there's a workaround.
- Iterated on UI. I think the layers are OK now.
- Removed ability to disable RP globally for now. It's enabled if you have enabled RP layers.
- Many minor tweaks and fixes.
2024-04-22 23:09:39 +10:00
psychedelicious
018845cda0
tidy(ui): regional prompts kind
-> type
2024-04-22 23:09:39 +10:00
psychedelicious
8c0a061fa0
fix(ui): hotkeys dependency array
2024-04-20 11:32:08 -04:00
psychedelicious
4895875ded
feat(ui): rects on regional prompt UI
2024-04-20 11:32:08 -04:00
psychedelicious
cfddbda578
tidy(ui): clean up action names
2024-04-20 11:32:08 -04:00
psychedelicious
58d3a9e7d4
refactor(ui): revise regional prompts state to support prompt-less mask layers
...
This structure is more adaptable to future features like IP-Adapter-only regions, controlnet layers, image masks, etc.
2024-04-20 11:32:08 -04:00
psychedelicious
a00e703144
feat(nodes): image mask to tensor invocation
...
Thanks @JPPhoto!
2024-04-20 11:32:08 -04:00
psychedelicious
e4024bdeb9
fix(ui): floor all pixel coords
...
This prevents rendering objects with sub-pixel positioning, which looks soft
2024-04-20 11:32:08 -04:00
psychedelicious
944690ac8e
feat(ui): remove drag distance on layers
2024-04-20 11:32:08 -04:00
psychedelicious
a7d69aa0a9
fix(ui): brush preview cursor jank
2024-04-20 11:32:08 -04:00
psychedelicious
15018fdbc0
fix(ui): brush preview not visible after hotkey
2024-04-20 11:32:08 -04:00
psychedelicious
31ace9aff8
feat(ui): tool hotkeys for rp
2024-04-20 11:32:08 -04:00
psychedelicious
3f4ea30113
fix(ui): fix missing bbox when a layer is empty
2024-04-20 11:32:08 -04:00
psychedelicious
7edcadb371
fix(ui): bbox rendered slightly too small
2024-04-20 11:32:08 -04:00
psychedelicious
d582203c62
chore(ui): lint
2024-04-20 14:54:49 +10:00
psychedelicious
148a6c08ca
fix(ui): fix bbox caching
2024-04-20 14:54:49 +10:00
psychedelicious
1e904d281a
feat(ui): hook up sd1.5 t2i graph to regional prompts
2024-04-20 14:54:49 +10:00
psychedelicious
03d9a75720
feat(ui): better rp colors
2024-04-20 14:54:49 +10:00
psychedelicious
5edce0a4de
perf(ui): caching efficiency
2024-04-20 14:54:49 +10:00
psychedelicious
604bf4e9ec
perf(ui): use efficient group caching instead of a compositing rect
...
Seems to be the same speed and it's less complex.
2024-04-20 14:54:49 +10:00
psychedelicious
39d036bb37
feat(ui): update move tool to show all bboxes, mouseover bbox strokes
2024-04-20 14:54:49 +10:00
psychedelicious
8a69fbd336
perf(ui): more bbox optimizations
...
- Keep track of whether the bbox needs to be recalculated (e.g. had lines/points added)
- Keep track of whether the bbox has eraser strokes - if yes, we need to do the full pixel-perfect bbox calculation, otherwise we can use the faster getClientRect
- Use comparison rather than Math.min/max in bbox calculation (slightly faster)
- Return `null` if no pixel data at all in bbox
2024-04-20 14:54:49 +10:00
psychedelicious
a71ed10b71
perf(ui): more efficient bbox method with smaller minimum offscreen canvas size
2024-04-20 14:54:49 +10:00
psychedelicious
9d3978edcf
fix(ui): give min dimensions to rp storybook
2024-04-20 14:54:49 +10:00
psychedelicious
18e1d74917
fix(ui): group layer color change history
2024-04-20 14:54:49 +10:00
psychedelicious
9276ecfd02
feat(ui): rp ui styling/layout
2024-04-19 09:32:56 -04:00
psychedelicious
ea527f5fe1
feat(nodes): add beta classification to mask tensor nodes
2024-04-19 09:32:56 -04:00
psychedelicious
d43f9732ab
feat(ui): rp ui styling
2024-04-19 09:32:56 -04:00
psychedelicious
c613839740
feat(ui): use translations for rp features
2024-04-19 09:32:56 -04:00
psychedelicious
bb371cfeca
feat(ui): minor styling rp
2024-04-19 09:32:56 -04:00
psychedelicious
6a5510146c
feat(ui): add default rp brush size
2024-04-19 09:32:56 -04:00
psychedelicious
9667f77c41
feat(ui): rp editor styling
2024-04-19 09:32:56 -04:00
psychedelicious
e93e0612af
tidy(ui): selectedLayer
-> selectedLayerId
2024-04-19 09:32:56 -04:00
psychedelicious
9528287d56
feat(ui): move ephemeral tool state out of redux
2024-04-19 09:32:56 -04:00
psychedelicious
14c722c265
tidy(ui): remove unused conditional
2024-04-19 09:32:56 -04:00
psychedelicious
4b2cd2da9f
feat(ui): remove special handling of main prompt
...
Until we have a good handle on what works best, leaving this to the user
2024-04-19 09:32:56 -04:00
psychedelicious
3c5b728bee
feat(ui): add enabled state for RP
2024-04-19 09:32:56 -04:00
psychedelicious
9b5c47748d
tidy(ui): isRegionalPromptLayer
-> isRPLayer
2024-04-19 09:32:56 -04:00
psychedelicious
eb781272f7
tidy(ui): organize rp layer components
2024-04-19 09:32:56 -04:00
psychedelicious
642a0de3dd
feat(ui): organize layer naming
...
prep for non-rp layer types
2024-04-19 09:32:56 -04:00
psychedelicious
f3b4cecf2e
feat(ui): invert tensor mask instead of loading mask image and converting to tensor second time
...
minor efficiency improvement
2024-04-19 09:32:56 -04:00
psychedelicious
499e7a7b74
chore(ui): typegen
2024-04-19 09:32:56 -04:00
psychedelicious
aace364677
feat(nodes): add InvertTensorMaskInvocation
2024-04-19 09:32:56 -04:00
psychedelicious
c195094e91
fix(ui): do not open panels when collapsed and window resize
2024-04-19 09:32:56 -04:00
psychedelicious
e6c57edf87
tidy(ui): shuffle graph builder logic
2024-04-19 09:32:56 -04:00
psychedelicious
c217e052a8
tidy(ui): remove unused action
2024-04-19 09:32:56 -04:00
psychedelicious
964e2236b9
feat(ui): do not add promptless conditioning nodes
2024-04-19 09:32:56 -04:00
psychedelicious
a6e64423d9
feat(ui): per-layer autonegative
2024-04-19 09:32:56 -04:00