-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Drawing board undo/redo and bug fixes #9726
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
GeneralGDA
commented
Aug 27, 2025
- Undo/redo support.
- Canvas resize fix (drawing above an image).
- Tooltips.
- Text editing commit on tool selection.
- Collaborative drawing board: dark background when dark theme selected.
- Basic module tests for drawing board.
- Refactoring: stricter typing.
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
…sting Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
|
Connected to Huly®: UBERF-13307 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements comprehensive undo/redo functionality for the drawing board along with numerous bug fixes and improvements. It introduces proper type safety, collaborative features, and better user experience through tooltips and accessibility enhancements.
Key changes include:
- Added undo/redo support using Yjs UndoManager with a new DrawingCommandsProcessor class
- Fixed canvas resizing issues when drawing above images through improved CSS transform scaling
- Enhanced the drawing board with tooltips for all tools and better theme support for dark mode
- Improved type safety by introducing CommandUid branded type and stricter typing throughout
Reviewed Changes
Copilot reviewed 30 out of 31 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
packages/presentation/src/drawingCommandsProcessor.ts |
New class managing undo/redo operations with Yjs integration |
packages/presentation/src/drawingUtils.ts |
New utilities for point manipulation and canvas scaling calculations |
packages/presentation/src/drawing.ts |
Major refactor with stricter typing, improved canvas scaling, and undo/redo integration |
packages/presentation/src/components/DrawingBoardToolbar.svelte |
Added undo/redo buttons and tooltips for all tools |
packages/theme/styles/_colors.scss |
Theme-aware drawing background colors for light/dark modes |
| Language files | Added localized strings for new UI elements and tooltips |
| Test files | Comprehensive test coverage for new drawing utilities and command processor |
Files not reviewed (1)
- common/config/rush/pnpm-lock.yaml: Language not supported
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>