- Shape list with selection and delete button (B1)
- Boolean operations: Union/Intersect/Subtract/Xor (B7)
- Bounds editing with X1/Y1/X2/Y2 sliders and size display (B2)
- Fill toggle + fill color with RGB sliders (B3)
- Stroke color with RGB sliders (B4)
- Opacity and Hardness sliders (B5)
- Line Cap controls for Line shapes (B6)
- Create filter_params.rs with per-filter parameter editing UI
- Support all FilterType variants: blur, sharpen, pixelate, distort,
stylize, color/light adjustments, dehaze, noise pattern
- Float/int sliders with labels and numeric display
- Toggle buttons for boolean params and mode selectors
- Integrate parameter panel into filters.rs below the filter list
- Update dock/view.rs to pass filter_params to the filters panel
- Deselect handler now clears selection_transform and transform_drag_handle
- Escape key (MenuClose) now cancels active transform before closing menus
- Ensures selection handles are properly cleaned up when deselecting
- Added marching_ants_offset to HcieIcedApp for animation state
- Added selection_bounds field to IcedDocument for persistent selection display
- Updated OverlayProgram to draw animated marching ants (black + white dashed lines)
- Added timer subscription for continuous animation when selection is active
- Updated SelectAll/Deselect handlers to properly manage selection state
- Selection now remains visible after creation with animated border
- Add Inverse selection (Shift+Ctrl+I) with engine.invert_selection()
- Add Shrink, Feather, Border, Smooth menu items with parameter dialogs
- Implement selection_border() and selection_smooth() in engine API
- Implement border_mask() and smooth_mask() in hcie-selection crate
- Update SelectionOpApply handler for all selection operations
These fields are required by the spec (section S2) but were missed during
initial implementation. They support selection mask alpha channel data
and selection bounding box coordinates.
- Added Photopea theme implementation report and design specifications.
- Created tool options and settings panels to match Photopea's layout.
- Implemented settings persistence to save and load user preferences.
- Updated toolbar to include SVG icons and tool options in a single row.
- Enhanced tool settings with specific parameters for each tool type.
- Added functionality for resetting tool settings to defaults.
- Implemented contour lookup functionality for Bevel & Emboss effect to allow for custom contour curves.
- Added contour parameter to LayerStyle and updated related structures and functions.
- Improved emboss algorithm by fixing height field calculations and ensuring proper handling of outside pixels.
- Introduced tilt component for 3D emboss effect, enhancing visual depth.
- Optimized MAE grid search parameters for better performance and accuracy.
- Expanded Iced GUI panel for Bevel & Emboss to include contour selection and additional styling options.
- Updated example scripts to reflect changes in the API and new features.
- Updated styles in `styles.rs` to include new pane and canvas backgrounds, while marking unused functions with `#[allow(dead_code)]`.
- Modified `text_editor.rs` to suppress warnings for unused function parameters.
- Enhanced `title_bar.rs` to create a unified title/menu bar with improved hover states and draggable functionality.
- Simplified `sidebar.rs` to always use a single-column layout and improved tool button styling with hover feedback.
- Added a new `viewport.rs` file to implement a custom canvas viewport widget for zoom and pan rendering, replacing the previous layout-based approach.
- Updated theme management in `theme.rs` to suppress warnings for unused methods.
- Adjusted line count report to reflect recent changes in codebase.
- Implemented a theme system in `iced-panel-adapter` for consistent styling across panels.
- Created `iced-panel-ai-chat` for an AI assistant interface, including message handling and UI components.
- Developed `iced-panel-script` for a DSL editor with execution capabilities, allowing procedural drawing commands.
- Introduced message types for interaction in both chat and script panels.
- Added color and theme management for improved visual consistency.
- Changed default VISION_BACKEND from CPU to GPU for better performance.
- Made `map_brush_style` public to allow external access.
- Updated `Engine` struct to use pooled buffers for stroke snapshots, reducing memory allocations during brush strokes.
- Introduced `CompositeSnapshot` for efficient background compositing without blocking the UI thread.
- Implemented `SendPtr` for safe raw pointer handling across threads.
- Enhanced `commit_pending_history` to recycle buffers and improve performance.
- Fixed cursor preview issues for procedural brushes by removing unnecessary preset synchronization.
- Added tests and documentation for new features and performance improvements.