psychedelicious
ede3bd8e64
feat(ui): default canvas state includes bookmarked inpaint mask
2024-09-09 23:17:41 +10:00
psychedelicious
da2583b894
feat(ui): shift+c clears regional guidance
2024-09-09 23:17:41 +10:00
psychedelicious
9210970130
fix(ui): preview not updating after reset
2024-09-09 23:17:41 +10:00
psychedelicious
2a022a811c
feat(ui): selected entity alert
2024-09-09 23:17:41 +10:00
psychedelicious
1a53e8dc5c
feat(ui): swap gallery and layer tabs
2024-09-09 23:17:41 +10:00
psychedelicious
4e12e23b69
feat(ui): tweak left panel size
2024-09-09 23:17:41 +10:00
psychedelicious
fd56b35982
fix(ui): vae layout
2024-09-09 23:17:41 +10:00
psychedelicious
71e0abe653
fix(ui): preview image squished when editing layer title
2024-09-09 23:17:41 +10:00
psychedelicious
56956ccf78
tidy(ui): remove extraneous fallback in QueueCountBadge
2024-09-09 23:17:41 +10:00
psychedelicious
6d46d82028
feat(ui): do not render anything except current content
...
This makes it a bit slower to switch tabs but also eliminates a whole class of bugs related to rendered but hidden components.
2024-09-09 23:17:41 +10:00
psychedelicious
3ed29a16a8
feat(ui): reworked layout (wip)
2024-09-09 23:17:41 +10:00
psychedelicious
b67c369bdb
chore(ui): bump react-resizable-panels
2024-09-09 23:17:41 +10:00
psychedelicious
e774b6879e
feat(ui): auto-negative defaults to off
2024-09-09 23:17:41 +10:00
psychedelicious
e7d95c3724
fix(ui): error when creating control adapter
2024-09-09 23:17:41 +10:00
psychedelicious
1b65884dbe
feat(ui): add selected entity status to HUD
2024-09-09 23:17:41 +10:00
psychedelicious
eff9ddc980
fix(ui): queue count badge showing on model/queue tab
2024-09-09 23:17:41 +10:00
psychedelicious
400ef8cdc3
feat(ui): grid size -> snap to grid
...
Similar behaviour to before. When on, snaps to 64. If ctrl/cmd held, snap to 8.
2024-09-09 23:17:41 +10:00
psychedelicious
b0ec3de40a
fix(ui): do not change scaled size when manual & locked
2024-09-09 23:17:41 +10:00
psychedelicious
b38b8bc90c
feat(ui): make filter process debounce internally configurable
2024-09-09 23:17:41 +10:00
psychedelicious
a5ab5e5146
feat(ui): disable filter apply button when no filter processed
2024-09-09 23:17:41 +10:00
psychedelicious
61fc30b345
feat(ui): filter behaviour
...
- Add `reset` functionality
- Rename badly named `autoPreviewFilter` to `autoProcessFilter`
- Do not process filter when starting, unless `autoProcessFilter` is enabled
2024-09-09 23:17:41 +10:00
psychedelicious
46d0ba8ce2
chore(ui): bump @invoke-ai/ui-library
...
This includes some fixes for the composite number input component's local value handling, resolving an infinite recursion problem when an invalid value is set.
2024-09-09 23:17:41 +10:00
psychedelicious
5a3e0d76d9
fix(ui): adapter konva objects drawn in wrong order
...
Add `syncZIndices` to `CanvasEntityAdapterBase` to arrange each layer's konva nodes appropriately.
2024-09-09 23:17:41 +10:00
psychedelicious
5eb919f602
feat(ui): use 64 as grid for auto-scaled bbox
2024-09-08 21:55:26 +10:00
psychedelicious
2301b388e8
feat(ui): rename snapToGrid -> gridSize
2024-09-08 21:55:26 +10:00
psychedelicious
dbf13999a0
fix(ui): staging area not rendering when images are staged
2024-09-08 21:55:26 +10:00
psychedelicious
a37592f9f3
chore(ui): lint
2024-09-08 21:55:26 +10:00
psychedelicious
60d4514fd8
tidy(ui): CanvasSettingsAutoSaveCheckbox
2024-09-08 21:55:26 +10:00
psychedelicious
9709da901c
feat(ui): add snap & autosave to HUD
2024-09-08 21:55:26 +10:00
psychedelicious
44df59e9e9
feat(ui): snap to grid
...
Snap can be any of off, 8px or 64px.
The snap is used when moving and transforming entities.
When transforming and locking aspect ratio, the snap is ignored entirely, because we'd change the aspect ratio if we forced the snap.
Otherwise, if we are not locking aspect ratio (e.g. the user is holding shift), we snap the transform anchors to the grid.
2024-09-08 21:55:26 +10:00
psychedelicious
fbe80ceab2
fix(ui): bbox not updating when resizing from canvas
2024-09-08 21:55:26 +10:00
psychedelicious
a86822db4d
fix(ui): flicker when rendering buffers
2024-09-08 21:55:26 +10:00
psychedelicious
f024cb1d05
chore(ui): lint
2024-09-08 21:55:26 +10:00
psychedelicious
6b2d900b54
tidy(ui): organise canvas tool classes
2024-09-08 21:55:26 +10:00
psychedelicious
3d6d5affb5
tidy(ui): organise canvas entity classes
2024-09-08 21:55:26 +10:00
psychedelicious
99b683fc1f
tidy(ui): organise canvas object classes
2024-09-08 21:55:26 +10:00
psychedelicious
d5cd50c3ea
feat(ui): split buffer renderer from object renderer
2024-09-08 21:55:26 +10:00
psychedelicious
d7cde0fc23
feat(ui): add spandrel filter
2024-09-08 21:55:26 +10:00
psychedelicious
541605edb4
fix(ui): ignore opacity when transforming
2024-09-08 21:55:26 +10:00
psychedelicious
0194344de2
feat(ui): reset $shouldShowStagedImage when start staging
...
Realized we can use listener middleware to respond to _actions_, as opposed to using the redux store subscription to respond to _state changes_... This might simplify some things.
Using this pattern here.
Only hiccup - there's a TS issue preventing this from being added to the state api module. The `addListener` method has an overloaded type signature and TS cannot extract the overloaded arg type using `Parameters<T>`. As a result, if we try to wrap this, we end up with a broken TS signature for the wrapper method.
2024-09-08 21:55:26 +10:00
psychedelicious
34f3cb3116
fix(ui): progress images shown during staging when show staged images is disabled
2024-09-08 21:55:26 +10:00
psychedelicious
5ab4818eb6
tidy(ui): rename canvas session slice to staging area slice
2024-09-08 21:55:26 +10:00
psychedelicious
60d2541934
chore(ui): lint
2024-09-08 06:16:53 +10:00
psychedelicious
8d87549ebe
fix(ui): disabled global IP adapters used for generation
2024-09-08 06:16:53 +10:00
psychedelicious
4cb5854990
fix(ui): compositor does not respect layer order
2024-09-08 06:16:53 +10:00
psychedelicious
6f4d3d0395
fix(ui): do not merge disabled layers when merging visible
2024-09-08 06:16:53 +10:00
psychedelicious
93e9e64b3a
fix(ui): queue status not invalidated on enqueue
2024-09-08 06:16:53 +10:00
psychedelicious
2bdfc340aa
fix(ui): race conditions with progress events
...
There's a race condition where we sometimes get progress events from canceled queue items, depending on the timing of the cancellation request and last event or two from the queue item.
I can't imagine how to resolve this except by tracking all cancellations and ignoring events for cancelled items, which is implemented in this change.
2024-09-08 06:16:53 +10:00
psychedelicious
2a1bc3e044
fix(ui): do not allow transform when entity is "empty"
2024-09-08 06:16:53 +10:00
psychedelicious
b4d006d14b
fix(ui): do not use crypto.randomUUID
...
This API is not available in all browsers. Also add an eslint rule to prevent usage in the future.
2024-09-08 06:16:53 +10:00