psychedelicious
f96148ca52
feat(ui): improved transparency effect
...
Use the min of each pixel's alpha value and lightness for the output alpha. This prevents artifacts when using the transparency effect, especially with non-black pixels with low alpha.
2024-09-06 21:27:57 +10:00
psychedelicious
96786ed62b
chore: release v4.2.9.dev12
2024-09-06 21:27:57 +10:00
psychedelicious
cc9cc62707
fix(ui): missing translation
2024-09-06 21:27:57 +10:00
psychedelicious
07cf5807be
fix(ui): save to gallery uses auto-add board
2024-09-06 21:27:57 +10:00
psychedelicious
013414e962
fix(ui): cancel transform/filter when deleting entity
2024-09-06 21:27:57 +10:00
psychedelicious
10bba49e28
chore(ui): lint
2024-09-06 21:27:57 +10:00
psychedelicious
7888b4913a
feat(ui): iterate on state flow and rendering 2
...
- Rely on redux + reselect more
- Remove all nanostores that simply "mirrored" redux state in favor of direct subscriptions to redux store
- Add abstractions for creating redux subs and running selectors
- Add `initialize` method to CanvasModuleBase, for post-instantiation tasks
- Reduce local caching of state in modules to a minimum
2024-09-06 21:27:57 +10:00
psychedelicious
27b00cedc5
feat(ui): iterate on state flow and rendering
2024-09-06 21:27:57 +10:00
psychedelicious
0bfdd5acb8
feat(ui): slight layout change for staging area toolbar
2024-09-06 21:27:57 +10:00
psychedelicious
6e6629ad74
feat(ui): clean up adapter API
2024-09-06 21:27:57 +10:00
psychedelicious
fe257e3e46
feat(ui): streamlined state flow
2024-09-06 21:27:57 +10:00
psychedelicious
0b1dc365d0
fix(ui): handle optimal dimension when resetting canvas
2024-09-06 21:27:57 +10:00
psychedelicious
c75a933b17
feat(ui): background and staging area modules have own store subscription and render themselves
2024-09-06 21:27:57 +10:00
psychedelicious
f1525c2a82
feat(ui): make rendering methods not need args
...
They should pull from the entity's state directly. This allows more freedom with updating the canvas.
2024-09-06 21:27:57 +10:00
psychedelicious
8266c10c53
feat(ui): restore size of invoke button
2024-09-06 21:27:57 +10:00
psychedelicious
34554f8555
tidy(ui): remove unnecessary awaits in rendering module
2024-09-06 21:27:57 +10:00
psychedelicious
200dbbbf55
tidy(ui): rename some classes to better represent their responsibilities
2024-09-06 21:27:57 +10:00
psychedelicious
5a30ff6045
feat(ui): abstract out CanvasEntityAdapterBase
...
Things were getting to complex to reason about & classes a bit complicated. Trying to simplify...
2024-09-06 21:27:57 +10:00
psychedelicious
73e8837d45
feat(ui): revise entity rendering flow
2024-09-06 21:27:57 +10:00
psychedelicious
6ba78e7632
tidy(ui): remove unused id on konva nodes
2024-09-06 21:27:57 +10:00
psychedelicious
736fabe327
tidy(ui): remove commented code
2024-09-06 21:27:57 +10:00
psychedelicious
ad53169eba
tidy(ui): remove extraneous docstrings
2024-09-06 21:27:57 +10:00
psychedelicious
0a22e6b5a1
feat(ui): clean up unused tool module state
2024-09-06 21:27:57 +10:00
psychedelicious
5eb9e2ba04
tidy(ui): disable isDebugging flag on root component
2024-09-06 21:27:57 +10:00
psychedelicious
376a626419
fix(ui): unable to drag while transforming after switching tools
2024-09-06 21:27:57 +10:00
psychedelicious
5d089ecc77
feat(ui): prevent layer interactions when transforming or filtering
2024-09-06 21:27:57 +10:00
psychedelicious
3ed85d821b
feat(ui): add compositeMaskedRegions setting
2024-09-06 21:27:57 +10:00
psychedelicious
7c29caa245
tidy(ui): merge tool slice, sendToCanvas into settings slice
2024-09-06 21:27:57 +10:00
psychedelicious
6161c71aa7
build(ui): add csstype dev dependency
2024-09-06 21:27:57 +10:00
psychedelicious
f7e68ac6d6
feat(ui): clean up tool preview rendering
2024-09-06 21:27:57 +10:00
psychedelicious
5074c97683
feat(ui): tool buttons are only disabled when currently selected
2024-09-06 21:27:57 +10:00
psychedelicious
bb6b5c4941
feat(ui): better types on CanvasStateApiModule.getEntity
2024-09-06 21:27:57 +10:00
psychedelicious
ff12f16343
feat(ui): update default logging context path to be string
2024-09-06 21:27:57 +10:00
psychedelicious
397038e6e8
tidy(ui): mark canvas module attrs readonly
2024-09-06 21:27:57 +10:00
psychedelicious
fcacc0f70a
chore: release v4.2.9.dev11
2024-09-06 21:27:57 +10:00
psychedelicious
3ed4cf63ae
feat(ui): tidy stateApi atoms & add docstrings
2024-09-06 21:27:57 +10:00
psychedelicious
4b753941e4
feat(ui): streamline manager -> react transform interface
2024-09-06 21:27:57 +10:00
psychedelicious
dbff929be5
tidy(ui): remove unused $isProcessingTransform atom
2024-09-06 21:27:57 +10:00
psychedelicious
44be058ac7
docs(ui): docstrings for $canvasCache
2024-09-06 21:27:57 +10:00
psychedelicious
437129cf70
feat(ui): tweak bookmark verbiage
2024-09-06 21:27:57 +10:00
psychedelicious
2e4a48b71c
feat(ui): move transformer state to nanostores
...
This provides some free reactivity for this canvas-manager-managed state.
2024-09-06 21:27:57 +10:00
psychedelicious
618473db02
fix(ui): transform should ignore konva filters (e.g. transparency effect)
2024-09-06 21:27:57 +10:00
psychedelicious
4f4eee76b9
feat(ui): add fit to bbox as transform helper
2024-09-06 21:27:57 +10:00
psychedelicious
1628eb5900
tidy(ui): transformer organisation
2024-09-06 21:27:57 +10:00
psychedelicious
92c754df79
fix(ui): disable merge visible when 1 or fewer layers of type
2024-09-06 21:27:57 +10:00
psychedelicious
921ade4b0a
feat(ui): brush preview opacity at 0.5 when drawing on mask
2024-09-06 21:27:57 +10:00
psychedelicious
c38b05c002
chore(ui): lint
2024-09-06 21:27:57 +10:00
psychedelicious
277708d69e
fix(ui): edge cases in quick switch, simpler logic
2024-09-06 21:27:57 +10:00
psychedelicious
02061faaf0
chore(ui): lint
2024-09-06 21:27:57 +10:00
psychedelicious
a4fb8eb171
feat(ui): add bookmark for quick switch
2024-09-06 21:27:57 +10:00