psychedelicious
0ed6591d8c
fix(ui): models loaded handler
2024-08-23 19:46:03 +10:00
psychedelicious
712e090134
feat(ui): internal state for inpaint mask
2024-08-23 19:46:03 +10:00
psychedelicious
8fc2a1d1cf
refactor(ui): divvy up canvas state a bit
2024-08-23 19:46:03 +10:00
psychedelicious
cc15c1593e
feat(ui): get region and base layer canvas to blob logic working
2024-08-23 19:46:03 +10:00
psychedelicious
9997d3abda
refactor(ui): node manager handles more tedious annoying stuff
2024-08-23 19:46:03 +10:00
psychedelicious
031471e785
feat(ui): use node manager for addRegions
2024-08-23 19:46:03 +10:00
psychedelicious
2e860c6791
feat(ui): persist bbox
2024-08-23 19:46:03 +10:00
psychedelicious
d071a9e17d
fix(ui): fix generation graphs
2024-08-23 19:46:03 +10:00
psychedelicious
ed53d33321
feat(ui): add toggle for clipToBbox
2024-08-23 19:46:03 +10:00
psychedelicious
382bc6d978
feat(ui): rename konva node manager
2024-08-23 19:46:03 +10:00
psychedelicious
dab42e258c
refactor(ui): create classes to abstract mgmt of konva nodes
2024-08-23 19:46:03 +10:00
psychedelicious
81556410bb
tidy(ui): organise renderers
2024-08-23 19:46:03 +10:00
psychedelicious
1f2dfd473c
refactor(ui): create entity to konva node map abstraction (wip)
...
Instead of chaining konva `find` and `findOne` methods, all konva nodes are added to a mapping object. Finding and manipulating them is much simpler.
Done for regions and layers, wip for control adapters.
2024-08-23 19:46:03 +10:00
psychedelicious
8f0f51be2c
perf(ui): fix lag w/ region rendering
...
Needed to memoize these selectors
2024-08-23 19:46:03 +10:00
psychedelicious
7179e250ed
feat(ui): move canvas fill color picker to right
2024-08-23 19:46:03 +10:00
psychedelicious
5bec091fd6
refactor(ui): remove unused ellipse & polygon objects
2024-08-23 19:46:03 +10:00
psychedelicious
2c5896cb0c
fix(ui): incorrect rect/brush/eraser positions
2024-08-23 19:46:03 +10:00
psychedelicious
93ff252dc0
refactor(ui): enable global debugging flag
2024-08-23 19:46:03 +10:00
psychedelicious
ac52224455
refactor(ui): disable the preview renderer for now
2024-08-23 19:46:03 +10:00
psychedelicious
4087cad23d
tweak(ui): canvas editor layout
2024-08-23 19:46:03 +10:00
psychedelicious
e936b1ff8f
perf(ui): memoize layeractionsmenu valid actions
2024-08-23 19:46:03 +10:00
psychedelicious
b7f9c5e221
refactor(ui): decouple konva renderer from react
...
Subscribe to redux store directly, skipping all the react overhead.
With react in dev mode, a typical frame while using the brush tool on almost-empty canvas is reduced from ~7.5ms to ~3.5ms. All things considered, this still feels slow, but it's a massive improvement.
2024-08-23 19:46:03 +10:00
psychedelicious
fc5467150e
feat(ui): clip lines to bbox
2024-08-23 19:46:03 +10:00
psychedelicious
4dcab357a0
fix(ui): document fit positioning
2024-08-23 19:46:03 +10:00
psychedelicious
695e464255
feat(ui): document bounds overlay
2024-08-23 19:46:03 +10:00
psychedelicious
9999b60c3b
tidy(ui): background layer
2024-08-23 19:46:03 +10:00
psychedelicious
e7df53e260
refactor(ui): use "entity" instead of "data" for canvas
2024-08-23 19:46:03 +10:00
psychedelicious
844590a571
feat(ui): brush size border radius = 1
2024-08-23 19:46:03 +10:00
psychedelicious
9622beaa0d
fix(ui): canvas HUD doesn't interrupt tool
2024-08-23 19:46:03 +10:00
psychedelicious
007e2553a8
refactor(ui): split up canvas entity renderers, temp disable preview
2024-08-23 19:46:03 +10:00
psychedelicious
15ad4e3f5e
fix(ui): delete all layers button
2024-08-23 19:46:03 +10:00
psychedelicious
be5094fcb4
fix(ui): ignore keyboard shortcuts in input/textarea elements
2024-08-23 19:46:03 +10:00
psychedelicious
a20a861680
fix(ui): canvas entity ids getting clobbered
2024-08-23 19:46:03 +10:00
psychedelicious
396d0a4bc0
fix(ui): move lora followup fixes
2024-08-23 19:46:03 +10:00
psychedelicious
ca9314e077
chore(ui): lint
2024-08-23 19:46:03 +10:00
psychedelicious
4b848798e7
refactor(ui): move loras to canvas slice
2024-08-23 19:46:03 +10:00
psychedelicious
083bcbc77d
fix(ui): layer is selected when added
2024-08-23 19:46:03 +10:00
psychedelicious
e8cdc9ae62
feat(ui): r to center & fit stage on document
2024-08-23 19:46:03 +10:00
psychedelicious
8abfa759a4
feat(ui): better HUD
2024-08-23 19:46:03 +10:00
psychedelicious
f6a324b633
fix(ui): always use current brush width when making straight lines
2024-08-23 19:46:03 +10:00
psychedelicious
f083be9391
feat(ui): hold shift w/ brush to draw straight line
2024-08-23 19:46:03 +10:00
psychedelicious
091e2fb751
fix(ui): update bg on canvas resize
2024-08-23 19:46:03 +10:00
psychedelicious
d8539daf1f
refactor(ui): better hud
2024-08-23 19:46:03 +10:00
psychedelicious
7ec059f5fa
refactor(ui): scaled tool preview border
2024-08-23 19:46:03 +10:00
psychedelicious
4f2ecdefd2
refactor(ui): port remaining canvasV1 rendering logic to V2, remove old code
2024-08-23 19:46:03 +10:00
psychedelicious
e8891a1988
refactor(ui): fix more types
2024-08-23 19:46:03 +10:00
psychedelicious
37d2607f34
refactor(ui): metadata recall (wip)
...
just enough let the app run
2024-08-23 19:46:03 +10:00
psychedelicious
0e7b10d3d9
refactor(ui): undo/redo button temp fix
2024-08-23 19:46:03 +10:00
psychedelicious
1f85888638
refactor(ui): fix renderer stuff
2024-08-23 19:46:03 +10:00
psychedelicious
c1f9a129fa
refactor(ui): fix misc types
2024-08-23 19:46:03 +10:00