Commit Graph

47 Commits

Author SHA1 Message Date
syntaxbullet
606426c885 feat: add non-destructive adjustment layers 2026-07-11 12:31:06 +02:00
syntaxbullet
9fb3a19912 feat: add crop and canvas resize workflows 2026-07-11 12:16:33 +02:00
syntaxbullet
4d7358af4b feat: add contextual layer inspector 2026-07-11 12:07:36 +02:00
syntaxbullet
bef2fb3051 feat: unify AI edit workflow 2026-07-11 11:58:16 +02:00
syntaxbullet
03493a1c32 feat: add generation cancel job functionality and improve job handling
- Introduced `generationCancelJob` command ID in `commands/ids.ts`.
- Added `GenerationCancelJobPayload` type in `commands/payloads.ts`.
- Enhanced job status to include "cancelled" in `editor/state.ts`.
- Updated `runGenerationJob` to accept an `AbortSignal` and handle cancellation.
- Implemented cancellation logic in `runGenerate` and related functions.
- Added tests for job cancellation in `operations/generation/workflow.test.ts`.
- Improved layer rendering logic to prevent stack overflow in `editor/document-indexes.ts`.
- Added raster size assertions in `platform/browser/rasterLimits.ts` for image processing limits.
- Enhanced image file handling to check for size limits in `platform/browser/imageFiles.ts`.
- Updated UI components to reflect job cancellation state in `view/GenerationJobStatus.tsx` and `view/bottom-controls/GenerateActionControls.tsx`.
2026-07-11 11:37:21 +02:00
syntaxbullet
1236b6dd2f feat: add commands for clearing candidates and reusing candidate settings, update UI controls 2026-07-11 11:23:25 +02:00
syntaxbullet
556fd685a2 feat: implement chroma key operation and related keybinds, update workspace panel management 2026-07-11 00:09:41 +02:00
syntaxbullet
9697075d29 feat: add project management features including open/save functionality and recovery support 2026-07-10 23:46:01 +02:00
syntaxbullet
5e4b548ad4 feat: add ComfyUI integration for image generation and management
- Implemented ComfyGenerateRequest type and associated functions for generating images using various architectures and modes.
- Added functions for listing generation options and handling image uploads.
- Created workflows for different generation modes including SDXL, Z-Image, Z-Image Turbo, and Anima.
- Introduced GenerationJobStatus component to display the status of ongoing generation jobs.
- Developed MaskControls for managing mask operations and displaying mask analysis.
- Created palette items for tool selection, layer management, and generation settings.
2026-07-10 23:15:02 +02:00
syntaxbullet
41bbd1e16b feat: refine candidate handling in generation commands and update UI interactions 2026-07-09 22:00:23 +02:00
syntaxbullet
317a7bbf5f feat: enhance Comfy API handling and add tests for branded non-Z diffusion models 2026-07-09 21:56:25 +02:00
syntaxbullet
c3a75cf0d6 feat: add command palette functionality and shortcuts
- Implemented command palette with keyboard shortcut (⌘K) for opening.
- Added commands for opening, closing, setting query, and selecting items in the command palette.
- Created tests for command palette commands and input handling.
- Enhanced layer actions with functions for adding, grouping, and deleting layers.
- Updated UI components to integrate command palette and shortcuts.
2026-07-05 17:15:20 +02:00
syntaxbullet
5eaf37ba28 feat: enhance layer mask handling and opacity management
- Introduced `getLayerMask` utility to streamline layer mask retrieval.
- Updated layer rendering logic to incorporate layer masks and opacity adjustments.
- Added functionality to prevent dropping a group into its descendants.
- Enhanced image texture rendering to support opacity parameters across various rendering functions.
- Implemented group layer bounds application for better scaling and positioning.
- Added tests to ensure correct behavior when handling layer masks and group layers.
- Created new types for asset generation provenance to track generated assets more effectively.
2026-07-05 16:06:23 +02:00
syntaxbullet
a83024c35c feat: add configurable history timeout and polling interval for ComfyUI API 2026-07-05 15:47:08 +02:00
syntaxbullet
0b6b064085 feat: enhance generate settings to support multiple architectures and their defaults 2026-07-05 11:21:56 +02:00
syntaxbullet
f5c610dac5 feat: implement inpainting functionality with mask handling
- Added `createMaskedPixelReplacementSource` function to handle pixel replacement using inpainting.
- Introduced `buildInpaintBundle` to prepare inpainting data including mask generation and validation.
- Created utility functions for mask operations such as `applyMaskedContentModeToRgba`, `expandRectWithinBounds`, and others for mask manipulation.
- Developed tests for inpainting preparation and mask raster utilities to ensure functionality and correctness.
- Implemented mask raster operations including inversion, feathering, blurring, and more.
2026-07-05 09:35:16 +02:00
syntaxbullet
1a43d1f0e5 fix(commands): narrow deferred history policy 2026-07-04 15:59:30 +02:00
syntaxbullet
1acfcbe4a5 perf(history): batch transform drag undo 2026-07-04 15:49:13 +02:00
syntaxbullet
d9e5e05183 perf(commands): skip no-op dispatch emissions 2026-07-04 15:21:41 +02:00
syntaxbullet
7188569672 feat: add ComfyUI integration for image generation
- Implemented ComfyUI API for generating images with various modes (text-to-image, image-to-image, inpaint, outpaint).
- Created GenerateSheet and associated controls for user input on generation settings.
- Added subtle scrollbar styles for improved UI experience.
- Enhanced canvas input handling to ignore key events when focused on editable elements.
- Optimized canvas resizing logic to prevent unnecessary dispatches.
- Introduced error handling for generation failures and loading models.
- Added functionality to upload images and masks for inpainting.
2026-07-04 15:10:30 +02:00
syntaxbullet
af50a165da feat: add magic wand tool with settings and controls, including UI integration and functionality 2026-07-04 11:49:35 +02:00
syntaxbullet
6b6c2ebb80 feat: add chroma key tool and settings, including UI components and controls 2026-07-04 11:13:47 +02:00
syntaxbullet
4590b47e19 Remove crop tool 2026-07-03 21:15:31 +02:00
syntaxbullet
4ad0bb8b2c feat: enhance layer masking functionality and brush controls
- Refactor LayersSheet component to support mask editing state and improve layer visibility handling.
- Introduce functions to collect mask layer IDs and count display layers excluding masks.
- Update BrushControls to include mask view mode options and a Done button for exiting mask editing.
- Modify brush session handling to support brush previews when editing masks.
- Implement a new BrushPreviewRenderer for rendering brush strokes with visual feedback.
- Add document geometry utilities for transforming points and resolving layer bounds.
- Ensure proper cleanup of brush preview on pointer leave and other interactions.
2026-07-03 20:49:29 +02:00
syntaxbullet
15f3a934e0 feat(masks): add mask editing mode 2026-07-03 18:07:04 +02:00
syntaxbullet
64aebbe23a feat(tools): add brush controls 2026-07-03 17:49:00 +02:00
syntaxbullet
9fc0c18114 feat(tools): add brush raster painting 2026-07-03 17:37:43 +02:00
syntaxbullet
665f4a5340 feat(core): add raster layer type 2026-07-03 17:34:02 +02:00
syntaxbullet
c946fb4c93 feat(tools): add crop tool 2026-07-03 17:32:46 +02:00
syntaxbullet
0ffbc4f68b feat(history): add undo redo stack 2026-07-03 17:30:31 +02:00
syntaxbullet
fedeaffa57 feat(layers): add layer management panel 2026-07-03 17:26:50 +02:00
syntaxbullet
ba3f253ee5 feat(renderer): enhance image rendering with asset synchronization and clipping 2026-07-03 16:34:31 +02:00
syntaxbullet
75466d2aa6 feat(commands): add image asset layer commands 2026-07-03 16:18:40 +02:00
syntaxbullet
a3b4a4a1b0 refactor(transform): resolve target bounds 2026-07-03 16:12:26 +02:00
syntaxbullet
bf5d9f5371 feat(transform): add transform session commands 2026-07-03 16:06:58 +02:00
syntaxbullet
e90b829e62 feat(commands): add artboard bounds command 2026-07-03 16:05:15 +02:00
syntaxbullet
8965532c3a feat(viewport): add fit artboard command 2026-07-03 11:31:55 +02:00
syntaxbullet
84a610f019 refactor(commands): centralize command ids 2026-07-03 11:31:02 +02:00
syntaxbullet
9e1050e5f3 feat(commands): add tool mode commands 2026-07-03 10:12:28 +02:00
syntaxbullet
f4ad35a7f8 feat(commands): add transparent artboard creation 2026-07-03 09:52:00 +02:00
syntaxbullet
ca9e265614 feat(commands): add selection commands 2026-07-03 09:51:26 +02:00
syntaxbullet
d77bdc22a9 feat(commands): type command payload dispatch 2026-07-03 09:50:39 +02:00
syntaxbullet
af71a49b09 test(commands): cover viewport command flow 2026-07-03 09:50:03 +02:00
syntaxbullet
d7406e803a chore(architecture): enforce layer boundaries 2026-07-03 09:34:21 +02:00
syntaxbullet
a8dbd26474 feat(commands): add app state dispatcher foundation 2026-07-03 09:28:06 +02:00
syntaxbullet
697d12725d feat(editor): add transient app state foundation 2026-07-03 09:24:08 +02:00
syntaxbullet
02df52c978 feat: add core domain model foundations 2026-07-02 23:11:14 +02:00