psychedelicious
ce6cf9b079
feat(ui): revise filter implementation
2024-08-27 11:01:52 +10:00
psychedelicious
13ec80736a
fix(ui): add button to delete inpaint mask
2024-08-27 11:01:52 +10:00
psychedelicious
c9690a4b21
feat(ui): add contexts/hooks to access entity adapters directly
2024-08-27 11:01:52 +10:00
psychedelicious
489e875a6e
feat(ui): add CanvasManagerProviderGate
...
This context waits to render its children its until the canvas manager is available. Then its children have access to the manager directly via hook.
2024-08-27 11:01:52 +10:00
psychedelicious
8651396048
feat(ui) do not set $canvasManager until ready
2024-08-27 11:01:52 +10:00
psychedelicious
2bab5a6179
fix(ui): inpaint mask naming
2024-08-27 11:01:52 +10:00
psychedelicious
006f06b615
feat(ui): efficient canvas compositing
...
Also solves issue of exporting layers at different opacities than what is visible
2024-08-27 11:01:52 +10:00
psychedelicious
d603923d1b
feat(ui): allow multiple inpaint masks
...
This is easier than making it a nullable singleton
2024-08-27 11:01:52 +10:00
psychedelicious
86878e855b
fix(ui): missing rasterization cache invalidations
2024-08-27 11:01:52 +10:00
psychedelicious
35de60a8fa
feat(ui): iterate on filter UI, flow
2024-08-27 11:01:52 +10:00
psychedelicious
2c444a1941
fix(ui): rehydration data loss
2024-08-27 11:01:52 +10:00
psychedelicious
3dfef01889
feat(ui): sort log namespaces
2024-08-27 11:01:52 +10:00
psychedelicious
a845a2daa5
fix(ui): do not merge arrays by index during rehydration
2024-08-27 11:01:52 +10:00
psychedelicious
df41f4fbce
fix(ui): clone parsed data during state rehydration
...
Without this, the objects and arrays in `parsed` could be mutated, and the log statment would show the mutated data.
2024-08-27 11:01:52 +10:00
psychedelicious
76482da6f5
fix(ui): fix logger filter
...
was accidetnally replacing the filter instead of appending to it.
2024-08-27 11:01:52 +10:00
psychedelicious
8205abbbbf
fix(ui): race condition queue status
...
Sequence of events causing the race condition:
- Enqueue batch
- Invalidate `SessionQueueStatus` tag
- Request updated queue status via HTTP - batch still processing at this point
- Batch completes
- Event emitted saying so
- Optimistically update the queue status cache, it is correct
- HTTP request makes it back and overwrites the optimistic update, indicating the batch is still in progress
FIxed by not invalidating the cache.
2024-08-27 11:01:52 +10:00
psychedelicious
926873de26
fix(ui): handle opacity for masks
2024-08-27 11:01:52 +10:00
psychedelicious
00cb1903ba
feat(ui): default background to checkerboard
2024-08-27 11:01:52 +10:00
psychedelicious
58ba38b9c7
feat(ui): clean up logging namespaces, allow skipping namespaces
2024-08-27 11:01:52 +10:00
psychedelicious
2f6a5617f9
chore(ui): bump ui library
2024-08-27 11:01:52 +10:00
psychedelicious
e0d84743be
fix(ui): do not allow drawing if layer disabled
2024-08-27 11:01:52 +10:00
psychedelicious
ee7c62acc4
fix(ui): stale state causing race conditions & extraneous renders
2024-08-27 11:01:52 +10:00
psychedelicious
daf3e58bd9
fix(ui): do not clear buffer when rendering "real" objects
2024-08-27 11:01:52 +10:00
psychedelicious
c5b9209057
tidy(ui): remove "filter" from CanvasImageState
2024-08-27 11:01:52 +10:00
psychedelicious
2a4d6d98e2
feat(ui): better editable title
2024-08-27 11:01:52 +10:00
psychedelicious
cfdf59d906
fix(ui): stroke eraserline
2024-08-27 11:01:52 +10:00
psychedelicious
f91ce1a47c
feat(ui): restore transparency effect for control layers
2024-08-27 11:01:52 +10:00
psychedelicious
4af2888168
feat(ui): use text cursor for entity title
2024-08-27 11:01:52 +10:00
psychedelicious
8471c6fe86
tidy(ui): remove extraneous logging in CanvasStateApi
2024-08-27 11:01:52 +10:00
psychedelicious
fe65a5a2db
feat(ui): better buffer commit logic
2024-08-27 11:01:52 +10:00
psychedelicious
0df26e967c
feat(ui): render buffer separately from "real" objects
2024-08-27 11:01:52 +10:00
psychedelicious
d4822b305e
fix(ui): pixelRect should always be integer
2024-08-27 11:01:52 +10:00
psychedelicious
8df5447563
fix(ui): only update stage attrs when stage itself is dragged
2024-08-27 11:01:52 +10:00
psychedelicious
7b5a43df9b
feat(ui): add line simplification
...
This fixes some awkward issues where line segments stack up.
2024-08-27 11:01:52 +10:00
psychedelicious
61ef630175
fix(ui): various things listening when they need not listen
2024-08-27 11:01:52 +10:00
psychedelicious
4eda2ef555
feat(ui): layer opacity via caching
2024-08-27 11:01:52 +10:00
psychedelicious
57f4489520
feat(ui): reset view fits all visible objects
2024-08-27 11:01:52 +10:00
psychedelicious
fb6cf9e3da
fix(ui): rerenders when changing canvas scale
2024-08-27 11:01:52 +10:00
psychedelicious
f776326cff
fix(ui): do not render rasterized layer unless renderObjects=true
2024-08-27 11:01:52 +10:00
psychedelicious
5be32d5733
feat(ui): revise app layout strategy, add interaction scopes for hotkeys
2024-08-27 11:01:52 +10:00
psychedelicious
1f73435241
feat(ui): tweak mask patterns
2024-08-27 11:01:52 +10:00
psychedelicious
3251a00631
fix(ui): dynamic prompts recalcs when presets are loaded
2024-08-27 11:01:52 +10:00
psychedelicious
49c4ad1dd7
fix(ui): use style preset prompts correctly
2024-08-27 11:01:52 +10:00
psychedelicious
5857e95c4a
fix(ui): discard selected staging image not all other images
2024-08-27 11:01:52 +10:00
psychedelicious
85be2532c6
fix(ui): respect image size in staging preview
2024-08-27 11:01:52 +10:00
psychedelicious
8b81a00def
tidy(ui): cleanup after events change
2024-08-27 11:01:52 +10:00
psychedelicious
8544595c27
feat(ui): move socket event handling out of redux
...
Download events and invocation status events (including progress images) are very frequent. There's no real need for these to pass through redux. Handling them outside redux is a significant performance win - far fewer store subscription calls, far fewer trips through middleware.
All event handling is moved outside middleware. Cleanup of unused actions and listeners to follow.
2024-08-27 11:01:52 +10:00
psychedelicious
a6a5d1470c
fix(ui): rebase conflicts
2024-08-27 11:01:39 +10:00
psychedelicious
febcc12ec9
fix(ui): update compositing rect when fill changes
2024-08-27 11:01:39 +10:00
psychedelicious
ab64078b76
feat(ui): add canvas background style
2024-08-27 11:01:39 +10:00