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.
This commit is contained in:
@@ -48,5 +48,12 @@ function recordHistory(currentState: AppState, nextState: AppState): AppState {
|
||||
}
|
||||
|
||||
function snapshot(state: AppState): HistorySnapshot {
|
||||
return { document: state.document, editor: state.editor };
|
||||
return {
|
||||
document: state.document,
|
||||
editor: {
|
||||
...state.editor,
|
||||
brushPreview: undefined,
|
||||
brushStrokePreview: undefined,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user