Commit Graph

13067 Commits

Author SHA1 Message Date
4cae12a507 fix(ui): render transformer over objects, fix issue w/ inpaint rect color 2024-08-30 22:18:49 +10:00
d8e3708e0f fix(ui): brush preview fill for inpaint/region 2024-08-30 22:18:49 +10:00
f4de2fd3b1 fix(ui): no objects rendered until vis toggled 2024-08-30 22:18:49 +10:00
e1cb30bbb4 feat(ui): inpaint mask transform 2024-08-30 22:18:49 +10:00
97e0edc549 fix(ui): layer accidental early set isFirstRender=false 2024-08-30 22:18:49 +10:00
f4e66bf14f fix(ui): inpaint mask rendering 2024-08-30 22:18:49 +10:00
a6a7fe8aba feat(ui): wip inpaint mask uses new API 2024-08-30 22:18:49 +10:00
a273f72560 feat(ui): move updatePosition to transformer 2024-08-30 22:18:49 +10:00
b5126f45d6 feat(ui): move resetScale to transformer 2024-08-30 22:18:49 +10:00
ba3bb7cbf3 tidy(ui): more imperative naming 2024-08-30 22:18:49 +10:00
608279487b tidy(ui): use imperative names for setters in stateapi 2024-08-30 22:18:49 +10:00
72b5374916 fix(ui): commit drawing buffer on tool change, fixing bbox not calculating 2024-08-30 22:18:49 +10:00
08b03212ca fix(ui): sync transformer when requesting bbox calc 2024-08-30 22:18:49 +10:00
7e341a05a1 tidy(ui): rename union CanvasEntity -> CanvasEntityState 2024-08-30 22:18:49 +10:00
e665d08ee1 fix(ui): request rect calc immediately on transform, hiding rect 2024-08-30 22:18:49 +10:00
ba6362dc9d feat(ui): move bbox calculation to transformer 2024-08-30 22:18:49 +10:00
48f0797c43 feat(ui): use set for transformer subscriptions 2024-08-30 22:18:49 +10:00
640b0c4939 tidy(ui): clean up worker tasks when complete 2024-08-30 22:18:49 +10:00
287c61e277 tidy(ui): remove unused code in CanvasTool 2024-08-30 22:18:49 +10:00
f7b2516109 feat(ui): use pubsub for isTransforming on manager 2024-08-30 22:18:49 +10:00
b530eb49d4 docs(ui): update transformer docstrings 2024-08-30 22:18:49 +10:00
fa94979ab6 feat(ui): revised event pubsub, transformer logic split out 2024-08-30 22:18:49 +10:00
54f2acf5b9 feat(ui): add simple pubsub 2024-08-30 22:18:49 +10:00
b6d845a4d0 feat(ui): document & clean up object renderer 2024-08-30 22:18:49 +10:00
1095b7c37f feat(ui): split out object renderer 2024-08-30 22:18:49 +10:00
136ffd97ca fix(ui): unable to hold shit while transforming to retain ratio 2024-08-30 22:18:49 +10:00
80163d0af2 tidy(ui): rename canvas stuff 2024-08-30 22:18:49 +10:00
e1c6e926e7 tidy(ui): consolidate getLoggingContext builders 2024-08-30 22:18:49 +10:00
2bb74abf31 fix(ui): align all tools to 1px grid
- Offset brush tool by 0.5px when width is odd, ensuring each stroke edge is exactly on a pixel boundary
- Round the rect tool also
2024-08-30 22:18:49 +10:00
0d4b91afe0 feat(ui): disable image smoothing on layers 2024-08-30 22:18:49 +10:00
6c688d6878 fix(ui): round position when rasterizing layer 2024-08-30 22:18:49 +10:00
243feecef9 feat(ui): continue modularizing transform 2024-08-30 22:18:49 +10:00
abd22ba087 feat(ui): fix a few things that didn't unsubscribe correctly, add helper to manage subscriptions 2024-08-30 22:18:49 +10:00
ab25546e97 feat(ui): merge bbox outline into transformer 2024-08-30 22:18:49 +10:00
925f0fca2a fix(ui): update parent's pos not transformers 2024-08-30 22:18:49 +10:00
066366d885 feat(ui): merge interaction rect into transformer class 2024-08-30 22:18:49 +10:00
61d52e96b7 feat(ui): prepare staging area 2024-08-30 22:18:49 +10:00
051e88ca90 feat(ui): typing for logging context 2024-08-30 22:18:49 +10:00
e873b69850 feat(ui): remove inheritance of CanvasObject
JS is terrible
2024-08-30 22:18:49 +10:00
661fd55556 feat(ui): split & document transformer logic, iterate on class structures 2024-08-30 22:18:49 +10:00
402f5a4717 feat(ui): rotation snap to nearest 45deg when holding shift 2024-08-30 22:18:49 +10:00
81bf52ef37 feat(ui): expose subscribe method for nanostores 2024-08-30 22:18:49 +10:00
8ff92796df tidy(ui): remove layer scaling reducers 2024-08-30 22:18:49 +10:00
68af60e12e fix(ui): pixel-perfect transforms 2024-08-30 22:18:49 +10:00
cce6bf9428 fix(ui): layer visibility toggle 2024-08-30 22:18:49 +10:00
078908fbea fix(nodes): fix canvas mask erode
it wasn't eroding enough and caused incorrect transparency in result images
2024-08-30 22:18:49 +10:00
7275caaf5b fix(ui): do not reset layer on first render 2024-08-30 22:18:49 +10:00
d9487c1df4 feat(ui): revised logging and naming setup, fix staging area 2024-08-30 22:18:49 +10:00
3a9f955388 feat(ui): add repr methods to layer and object classes 2024-08-30 22:18:49 +10:00
e46c7acd2e feat(ui): use nanoid(10) instead of uuidv4 for canvas
Shorter ids makes it much more readable
2024-08-30 22:18:49 +10:00