Commit Graph
13 Commits
Author SHA1 Message Date
MajoorWaldi 882c909e6b fix: restore previews and V3 node registration 2026-08-21 22:56:44 +02:00
MajoorWaldi 43a8180131 feat(vnext): complete Immediate First Sprint vNext migration and frontend parity tests 2026-08-21 22:13:27 +02:00
Ewald 2cddb1ba1f fix(preview): include all numeric widgets in compact panel
Remove NATIVE_NUMERIC_WIDGET_NAMES exclusion list (rotate_deg, scale, strength, width, height, rotate). Excluded widgets were left visible as native LiteGraph sliders at the bottom of nodes, creating vertical empty space and duplicate UI (notably CameraShake/Transform/Spherize). Also includes prior session work: P1-P4 UX improvements, video preview anti-blink/anti-stutter fixes in source.ts, README and REFACTO docs cleanup.
2026-05-20 01:12:28 +02:00
Ewald 068792c764 feat(color-correct): add zone-based color adjustment and soft brush drawing
- Implement global, shadows, midtones, and highlights zones for color correction
- Add brightness, contrast, saturation, vibrance, and gamma controls per zone
- Include temperature and tint adjustments with improved hue adjustment range
- Introduce soft brush drawing feature with adjustable softness
- Enhance draw tool with improved cursor feedback and eraser functionality
- Optimize performance with requestAnimationFrame for certain interactions
- Refactor color correction widget synchronization and reset logic
2026-04-24 23:52:41 +02:00
Ewald 5085f85598 refactor(video): remove syncVideoToTick function and streamline video playback handling 2026-04-20 10:43:46 +02:00
Ewald bd61c74b6a perf(preview): improve noise node performance and zoom/pan interactions
- Optimize Perlin noise gradient calculations by using precomputed tables
- Reduce canvas resolution for noise node previews to match canvas size
- Implement screen-to-world coordinate conversion for consistent zoom/pan across widgets
- Remove unused renderNonce from NodeState
2026-04-17 15:44:20 +02:00
Ewald 58561c4859 refactor: optimize node stream processing and improve canvas handling
- Replace queue.shift() with index pointer in resolveNodeStreamPreview to reduce O(n) complexity.
- Introduce MaskCanvas type and caching mechanisms for prepared mask canvases in ops.ts.
- Enhance fitCanvas to check for prepared mask canvases and mark them accordingly.
- Update extractCanvasField to utilize caching for performance improvements.
- Refactor renderCompPreview to handle alpha compositing more efficiently.
- Implement syncVideoToTick function to manage video playback timing based on render ticks.
- Modify ensureVideoFrameCanvas to support tick-based synchronization for video frames.
- Change waveform and vectorscope data types from Uint16Array to Uint32Array to prevent overflow.
- Update types to include new properties for interaction handling and static render caching.
2026-04-03 11:05:32 +02:00
MajoorWaldi 83fe6ef4b9 feat: Enhance live preview rendering and state management
- Introduced new state properties in ensureState to manage rendering state, including lastRenderTick, renderInFlight, queuedRenderTick, and renderNonce.
- Added hashText and serializePreviewValue functions for efficient preview value serialization.
- Implemented buildPreviewRenderKey to create a unique key for rendering based on node state and inputs.
- Improved rendering logic in registerImageOpsLivePreview to handle queued renders and prevent unnecessary re-renders.
- Refactored blit function to accept various source types and improved canvas handling.
- Added ensureCanvasSize and renderImageSourceToCanvas functions to streamline canvas creation and image rendering.
- Updated ops and renderer modules to utilize new rendering functions and improve performance.
- Enhanced error handling during rendering processes to provide clearer feedback.
2026-03-27 09:15:50 +01:00
MajoorWaldi 8f0249b81c Refactor canvas context retrieval and error handling in renderer
- Updated canvas context retrieval to handle potential null values gracefully in `renderer.ts`.
- Enhanced error handling by returning null when context cannot be obtained.
- Added a `tick` parameter to the adapter apply context in `types.ts`.
- Introduced new distortion and noise nodes in Python, implementing image distortion and noise generation functionalities.
- Improved memory management by closing previous bitmaps in `source.ts`.
2026-03-27 00:23:29 +01:00
MajoorWaldi 2abd0673b8 feat: add image operations nodes for composition, cropping, and drawing
- Implemented ImageOpsComp for image composition with multiple layers and blending modes.
- Created ImageOpsCrop for interactive cropping with aspect ratio support.
- Developed ImageOpsDraw for drawing on images with customizable tools and overlays.
- Added utility functions for handling crop and draw operations, including aspect ratio resolution and canvas management.
- Introduced TypeScript interfaces and utility functions for managing composition layers and crop rectangles in the preview.
2026-03-18 15:19:58 +01:00
MajoorWaldi f7967be180 feat: add image processing scopes and media handling
- Implemented `computeScopes`, `drawHistogram`, `drawWaveform`, `drawRgbWaveform`, and `drawVectorscope` functions for image analysis.
- Created `parseAnnotated`, `makeViewUrl`, `ensureBitmap`, and `ensureVideoFrameCanvas` functions for media source handling.
- Added TypeScript definitions for ComfyUI integration, including node state, media state, and scopes options.
- Established project structure with `package.json`, `tsconfig.json`, and `package-lock.json` for dependency management and TypeScript configuration.
2026-03-18 06:40:43 +01:00
MajoorWaldi 16bf08d9b2 feat(preview): implement shared ops for live preview with various image processing functions
- Added ops.ts for image processing operations including color adjustments, blurring, transformations, and more.
- Introduced progress.ts to manage execution progress for ImageOps nodes.
- Created registry.ts to build an adapter registry for ImageOps and interop.
- Developed renderer.ts for recursive rendering of nodes with support for interop.
- Implemented scopes.ts for histogram, waveform, and vectorscope computations and visualizations.
- Added source.ts for media source helpers, including parsing and ensuring bitmap/video frame canvases.
2026-03-18 06:40:22 +01:00
Your Name c223364b28 REFACTOR: Implement live preview for image operations 2026-01-13 23:36:57 +01:00