psychedelicious
4a44e171fd
fix(ui): fix layer transparency calculation
2024-08-23 19:46:04 +10:00
psychedelicious
9bc57a6f59
fix(ui): reset initial image when resetting canvas
2024-08-23 19:46:03 +10:00
psychedelicious
4341ed7ab4
fix(ui): reset node executions states when loading workflow
2024-08-23 19:46:03 +10:00
psychedelicious
97ce72c542
fix(ui): entity display list
2024-08-23 19:46:03 +10:00
psychedelicious
a2c78a57a7
feat(ui): img2img working
2024-08-23 19:46:03 +10:00
psychedelicious
044a713dc9
feat(ui): rough out img2img on canvas
2024-08-23 19:46:03 +10:00
psychedelicious
b8479c5fe2
UNDO ME WIP
2024-08-23 19:46:03 +10:00
psychedelicious
4e5d056824
feat(ui): log invocation source id on socket event
2024-08-23 19:46:03 +10:00
psychedelicious
118278b372
feat(ui): restore document size overlay renderer
2024-08-23 19:46:03 +10:00
psychedelicious
8e8c255f3f
feat(ui): make documnet size a rect
2024-08-23 19:46:03 +10:00
psychedelicious
1575bee401
refactor(ui): remove modular imagesize components
...
This is no longer necessary with canvas v2 and added a ton of extraneous redux actions when changing the image size. Also renamed to document size
2024-08-23 19:46:03 +10:00
psychedelicious
249bbfc883
feat(ui): initialState is for generation mode
2024-08-23 19:46:03 +10:00
psychedelicious
3993ae410f
feat(ui): split out canvas entity list component
2024-08-23 19:46:03 +10:00
psychedelicious
edf040e3d2
feat(ui): hide bbox button when no canvas session active
2024-08-23 19:46:03 +10:00
psychedelicious
66fd077ee7
tidy(ui): remove unused naming objects/utils
...
The canvas manager means we don't need to worry about konva node names as we never directly select konva nodes.
2024-08-23 19:46:03 +10:00
psychedelicious
b93462ebb6
feat(ui): split up tool chooser buttons
...
Prep for distinct toolbars for generation vs canvas modes
2024-08-23 19:46:03 +10:00
psychedelicious
d4da00e607
feat(ui): "stagingArea" -> "session"
2024-08-23 19:46:03 +10:00
psychedelicious
0c539ff00b
feat(ui): add reset button to canvas
2024-08-23 19:46:03 +10:00
psychedelicious
5983cbf26c
feat(ui): add snapToRect util
2024-08-23 19:46:03 +10:00
psychedelicious
c513d6e3af
fix(ui): fiddle with control adapter filters
...
some jank still
2024-08-23 19:46:03 +10:00
psychedelicious
9d57c0e631
feat(ui): temp disable doc size overlay
2024-08-23 19:46:03 +10:00
psychedelicious
a1923a8966
feat(ui): no animation on layer selection
...
Felt sluggish
2024-08-23 19:46:03 +10:00
psychedelicious
d988e18731
feat(ui): use canvas as source for control images (wip)
2024-08-23 19:46:03 +10:00
psychedelicious
51008da2dd
fix(ui): control adapter translate & scale
2024-08-23 19:46:03 +10:00
psychedelicious
6ccc1f5672
tidy(ui): removed unused state related to non-buffered drawing
2024-08-23 19:46:03 +10:00
psychedelicious
4a556f84e0
feat(ui): control adapter image rendering
2024-08-23 19:46:03 +10:00
psychedelicious
2f21a2220d
fix(ui): do not floor bbox calc, it cuts off the last pixels
2024-08-23 19:46:03 +10:00
psychedelicious
91a420b13e
feat(ui): fix issue where creating line needs 2 points
2024-08-23 19:46:03 +10:00
psychedelicious
c27da3581b
fix(ui): edge cases when holding shift and drawing lines
2024-08-23 19:46:03 +10:00
psychedelicious
961dfbce93
fix(ui): set buffered rect color to full alpha
2024-08-23 19:46:03 +10:00
psychedelicious
df39c825ae
fix(ui): handle mouseup correctly
2024-08-23 19:46:03 +10:00
psychedelicious
3f6ee1b7a4
feat(ui): buffered rect drawing
2024-08-23 19:46:03 +10:00
psychedelicious
908e504a6f
fix(ui): buffered drawing edge cases
2024-08-23 19:46:03 +10:00
psychedelicious
f2fa41afc5
perf(ui): do not use stage.find
2024-08-23 19:46:03 +10:00
psychedelicious
440ff40ad5
perf(ui): object groups do not listen
2024-08-23 19:46:03 +10:00
psychedelicious
5c15458e15
perf(ui): buffered drawing (wip)
2024-08-23 19:46:03 +10:00
psychedelicious
be5b474f1e
tidy(ui): organise files
2024-08-23 19:46:03 +10:00
psychedelicious
cee178c2b6
tidy(ui): organise files
2024-08-23 19:46:03 +10:00
psychedelicious
27657f8b7a
tidy(ui): organise files
2024-08-23 19:46:03 +10:00
psychedelicious
e0cde3815a
fix(ui): background rendering
2024-08-23 19:46:03 +10:00
psychedelicious
09d0421de4
pkg(ui): remove unused deps react-konva & use-image
2024-08-23 19:46:03 +10:00
psychedelicious
47b94d563c
feat(ui): organize konva state and files
2024-08-23 19:46:03 +10:00
psychedelicious
0b5d20c9f0
fix(ui): merge conflicts in image deletion listener
2024-08-23 19:46:03 +10:00
psychedelicious
80e7e1293a
fix(ui): region rendering
2024-08-23 19:46:03 +10:00
psychedelicious
3a82b0cbc1
fix(ui): inpaint mask rendering
2024-08-23 19:46:03 +10:00
psychedelicious
a27cbc13b6
fix(ui): staging area rendering
2024-08-23 19:46:03 +10:00
psychedelicious
a8f962eb3f
fix(ui): stale selected entity
2024-08-23 19:46:03 +10:00
psychedelicious
7f40d23f19
fix(ui): staging area image offset
2024-08-23 19:46:03 +10:00
psychedelicious
918354cd9d
feat(ui): tweak layer ui component
2024-08-23 19:46:03 +10:00
psychedelicious
eef9278ee6
fix(ui): resetting layer resets position
2024-08-23 19:46:03 +10:00
psychedelicious
2c32e2e5c1
feat(ui): updated layer list component styling
2024-08-23 19:46:03 +10:00
psychedelicious
6f05654db5
feat(ui): transformable layers
2024-08-23 19:46:03 +10:00
psychedelicious
1d31b6902f
feat(ui): move tool icon is pointer like in other apps
2024-08-23 19:46:03 +10:00
psychedelicious
5a7d615e64
feat(ui): do not floor cursor position
2024-08-23 19:46:03 +10:00
psychedelicious
1dbf9e4ed4
feat(ui): disable gallery hotkeys while staging
2024-08-23 19:46:03 +10:00
psychedelicious
5dcc6ee203
feat(ui): revised canvas progress & staging image handling
2024-08-23 19:46:03 +10:00
psychedelicious
84a4e6ae3f
feat(ui): show queue item origin in queue list
2024-08-23 19:46:03 +10:00
psychedelicious
f283bfd68f
chore(ui): typegen
2024-08-23 19:46:03 +10:00
psychedelicious
7c3800d03f
fix(ui): denoise start on outpainting
2024-08-23 19:46:03 +10:00
psychedelicious
941db90518
feat(ui): add redux events for queue cleared & batch enqueued socket events
2024-08-23 19:46:03 +10:00
psychedelicious
0d9ecf0f90
feat(ui): canvas staging area works
2024-08-23 19:46:03 +10:00
psychedelicious
9c77023a11
feat(ui): switch to view tool when staging
2024-08-23 19:46:03 +10:00
psychedelicious
b55378c63c
tidy(ui): disable preview images on every enqueue
2024-08-23 19:46:03 +10:00
psychedelicious
946c2a49ab
feat(ui): rough out save staging image
2024-08-23 19:46:03 +10:00
psychedelicious
b823c31ec6
feat(ui): staging area image visibility toggle
2024-08-23 19:46:03 +10:00
psychedelicious
ec6361e5cb
fix(ui): batch building after removing canvas files
2024-08-23 19:46:03 +10:00
psychedelicious
0c26d28278
feat(ui): make Graph class's getMetadataNode public
2024-08-23 19:46:03 +10:00
psychedelicious
c5172d4c5a
tidy(ui): remove old canvas graphs
2024-08-23 19:46:03 +10:00
psychedelicious
89de04775e
fix(ui): do not select already-selected entity
2024-08-23 19:46:03 +10:00
psychedelicious
b4c3c940b5
tidy(ui): naming things
2024-08-23 19:46:03 +10:00
psychedelicious
aee2aad959
tidy(ui): file organisation
2024-08-23 19:46:03 +10:00
psychedelicious
5ca48a8a5f
fix(ui): reset cursor pos when fitting document
2024-08-23 19:46:03 +10:00
psychedelicious
1806aa187b
feat(ui): staging area works more better
2024-08-23 19:46:03 +10:00
psychedelicious
7824cb7a1a
feat(ui): staging area barely works
2024-08-23 19:46:03 +10:00
psychedelicious
9807a896f4
feat(ui): consolidate konva API
2024-08-23 19:46:03 +10:00
psychedelicious
19866f057d
feat(ui): consolidate konva API
2024-08-23 19:46:03 +10:00
psychedelicious
ec4eae3c9c
feat(ui): staging area (rendering wip)
2024-08-23 19:46:03 +10:00
psychedelicious
bea0cba038
tidy(ui): type "Dimensions" -> "Size"
2024-08-23 19:46:03 +10:00
psychedelicious
48ee75af9c
feat(ui): add updateNode to Graph
2024-08-23 19:46:03 +10:00
psychedelicious
929c593d2f
feat(ui): sdxl graphs
2024-08-23 19:46:03 +10:00
psychedelicious
221f32eca7
feat(ui): sd1 outpaint graph
2024-08-23 19:46:03 +10:00
psychedelicious
c3acc15e8b
tests(ui): add missing tests for Graph class
2024-08-23 19:46:03 +10:00
psychedelicious
1b653278fc
feat(ui): add Graph.getid() util
2024-08-23 19:46:03 +10:00
psychedelicious
cc9062ee46
feat(ui): outpaint graph, organize builder a bit
2024-08-23 19:46:03 +10:00
psychedelicious
91c0feb0ad
feat(ui): inpaint sd1 graph
2024-08-23 19:46:03 +10:00
psychedelicious
ae60292ac8
feat(ui): temp disable image caching while testing
2024-08-23 19:46:03 +10:00
psychedelicious
a6ca17b19d
feat(ui): txt2img & img2img graphs
2024-08-23 19:46:03 +10:00
psychedelicious
6a4a5ece74
feat(ui): minor change to canvas bbox state type
2024-08-23 19:46:03 +10:00
psychedelicious
9b81860307
feat(ui): simplified konva node to blob/imagedata utils
2024-08-23 19:46:03 +10:00
psychedelicious
5f4a3928d2
feat(ui): node manager getter/setter
2024-08-23 19:46:03 +10:00
psychedelicious
b703884763
feat(ui): generation mode calculation, fudged graphs
2024-08-23 19:46:03 +10:00
psychedelicious
32da98ab8f
feat(ui): add utils for getting images from canvas
2024-08-23 19:46:03 +10:00
psychedelicious
bd5a85bf70
feat(ui): even more simplified API - lean on the konva node manager to abstract imperative state API & rendering
2024-08-23 19:46:03 +10:00
psychedelicious
d045f24014
feat(ui): revised docstrings for renderers & simplified api
2024-08-23 19:46:03 +10:00
psychedelicious
2aad3f89c3
feat(ui): inpaint mask UI components
2024-08-23 19:46:03 +10:00
psychedelicious
dd54d19f00
feat(ui): inpaint mask rendering (wip)
2024-08-23 19:46:03 +10:00
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
psychedelicious
7ccc5ba398
refactor(ui): fix gallery stuff
2024-08-23 19:46:03 +10:00
psychedelicious
5e1a6ae334
refactor(ui): fix delete image stuff
2024-08-23 19:46:03 +10:00
psychedelicious
3f6cf638f9
refactor(ui): fix useIsReadyToEnqueue for new adapterType field
2024-08-23 19:46:03 +10:00
psychedelicious
46e062a828
refactor(ui): update generation tab graphs
2024-08-23 19:46:02 +10:00
psychedelicious
cc3a0b5d6c
refactor(ui): add adapterType
to ControlAdapterData
2024-08-23 19:46:02 +10:00
psychedelicious
775479ab7b
refactor(ui): update components & logic to use new unified slice (again)
2024-08-23 19:46:02 +10:00
psychedelicious
6b9e0e6d63
refactor(ui): update components & logic to use new unified slice
2024-08-23 19:46:02 +10:00
psychedelicious
83a5c87f5e
refactor(ui): merge compositing, params into canvasV2 slice
2024-08-23 19:46:02 +10:00
psychedelicious
84fde74331
refactor(ui): add scaled bbox state
2024-08-23 19:46:02 +10:00
psychedelicious
a517e29b39
refactor(ui): update dnd/image upload
2024-08-23 19:46:02 +10:00
psychedelicious
ccceba7565
refactor(ui): update size/prompts state
2024-08-23 19:46:02 +10:00
psychedelicious
5fc7a03669
refactor(ui): rip out old control adapter implementation
2024-08-23 19:46:02 +10:00
psychedelicious
8864ad1b50
refactor(ui): canvas v2 (wip)
...
fix entity count select
2024-08-23 19:46:02 +10:00
psychedelicious
f2989885fb
refactor(ui): canvas v2 (wip)
...
delete unused file
2024-08-23 19:46:02 +10:00
psychedelicious
19c66e5c76
refactor(ui): canvas v2 (wip)
...
merge all canvas state reducers into one big slice (but with the logic split across files so it's not hell)
2024-08-23 19:46:02 +10:00
psychedelicious
8a6690a57c
refactor(ui): canvas v2 (wip)
...
Fix a few more components
2024-08-23 19:46:02 +10:00
psychedelicious
2cc60f253a
refactor(ui): canvas v2 (wip)
...
missed a spot
2024-08-23 19:46:02 +10:00
psychedelicious
cb69872dd3
refactor(ui): canvas v2 (wip)
...
Redo all UI components for different canvas entity types
2024-08-23 19:46:02 +10:00
psychedelicious
ba66d7c9a6
refactor(ui): canvas v2 (wip)
2024-08-23 19:46:02 +10:00
psychedelicious
9fe727c9f8
refactor(ui): canvas v2 (wip)
2024-08-23 19:46:02 +10:00
psychedelicious
58c656224f
refactor(ui): canvas v2 (wip)
2024-08-23 19:46:02 +10:00
psychedelicious
c51253f5f6
refactor(ui): canvas v2 (wip)
2024-08-23 19:46:02 +10:00
psychedelicious
6c1d1588fc
feat(ui): bbox tool
2024-08-23 19:46:02 +10:00
psychedelicious
95d6183a6c
fix(ui): rect tool preview
2024-08-23 19:46:02 +10:00
psychedelicious
f4c9facdaf
fix(ui): multiple stages
2024-08-23 19:46:02 +10:00
psychedelicious
a274e6f165
feat(ui): decouple konva logic from nanostores
2024-08-23 19:46:02 +10:00
psychedelicious
154e3e6f64
feat(ui): store all stage attrs in nanostores
2024-08-23 19:46:02 +10:00
psychedelicious
2c3ac972e5
feat(ui): round stage scale
2024-08-23 19:46:02 +10:00
psychedelicious
2e2e072b0b
chore(ui): bump konva
2024-08-23 19:46:02 +10:00
psychedelicious
9d8dd2bf66
feat(ui): generation bbox transformation working
...
whew
2024-08-23 19:46:02 +10:00
psychedelicious
9047f6db30
feat(ui): wip generation bbox
2024-08-23 19:46:02 +10:00
psychedelicious
5ab345ee63
feat(ui): wip generation bbox
2024-08-23 19:46:02 +10:00
psychedelicious
d8a83acd3a
feat(ui): CL zoom and pan, some rendering optimizations
2024-08-23 19:46:02 +10:00
psychedelicious
1f58e5756b
Revert "feat(ui): add x,y,scaleX,scaleY,rotation to objects"
...
This reverts commit 53318b396c967c72326a7e4dea09667b2ab20bdd.
2024-08-23 19:46:02 +10:00
psychedelicious
744acb8f07
feat(ui): layers manage their own bbox
2024-08-23 19:46:02 +10:00
psychedelicious
ae7228d821
docs(ui): konva image object docstrings
2024-08-23 19:46:02 +10:00
psychedelicious
99d8b3a7bf
feat(ui): add x,y,scaleX,scaleY,rotation to objects
2024-08-23 19:46:02 +10:00
psychedelicious
3fbe65bbcf
fix(ui): show color picker when using rect tool
2024-08-23 19:46:02 +10:00
psychedelicious
f5d879d8e7
feat(ui): image loading fallback for raster layers
2024-08-23 19:46:02 +10:00
psychedelicious
cbc5a4f8e6
feat(ui): bbox calc for raster layers
2024-08-23 19:46:02 +10:00
psychedelicious
37ac7d8ed5
feat(ui): do not fill brush preview when drawing
2024-08-23 19:46:02 +10:00
psychedelicious
bee3fa339d
fix(ui): brush spacing handling
2024-08-23 19:46:02 +10:00
psychedelicious
c171fe2b96
fix(ui): jank when starting a shape when not already focused on stage
2024-08-23 19:46:02 +10:00
psychedelicious
1fa8032fdb
feat(ui): wip raster layers
...
I meant to split this up into smaller commits and undo some of it, but I committed afterwards and it's tedious to undo.
2024-08-23 19:46:02 +10:00
psychedelicious
5c0676bcc2
feat(ui): support image objects on raster layers
...
Just the UI and internal state, not rendering yet.
2024-08-23 19:46:02 +10:00
psychedelicious
cefd9a027c
tidy(ui): clean up event handlers
...
Separate logic for each tool in preparation for ellipse and polygon tools.
2024-08-23 19:46:02 +10:00
psychedelicious
1bce156de1
feat(ui): raster layer reset, object group util
2024-08-23 19:46:02 +10:00
psychedelicious
cd4f63f2fd
feat(ui): rect shape preview now has fill
2024-08-23 19:46:02 +10:00
psychedelicious
3c7140cbf3
feat(ui): cancel shape drawing on esc
2024-08-23 19:46:02 +10:00
psychedelicious
b71ba63b5a
feat(ui): temp disable history on CL
2024-08-23 19:46:02 +10:00
psychedelicious
d540e2c0d3
feat(ui): raster layer logic
...
- Deduplicate shared logic
- Split up giant renderers file into separate cohesive files
- Tons of cleanup
- Progress on raster layer functionality
2024-08-23 19:46:02 +10:00
psychedelicious
d79fafc5f5
feat(ui): add raster layer rendering and interaction (WIP)
2024-08-23 19:46:02 +10:00
psychedelicious
9e93fa2092
feat(ui): scaffold out raster layers
...
Raster layers may have images, lines and shapes. These will replace initial image layers and provide sketching functionality like we have on canvas.
2024-08-23 19:46:02 +10:00
psychedelicious
392e9b4882
refactor(ui): revise types for line and rect objects
...
- Create separate object types for brush and eraser lines, instead of a single type that has a `tool` field.
- Create new object type for rect shapes.
- Add logic to schemas to migrate old object types to new.
- Update renderers & reducers.
2024-08-23 19:46:02 +10:00