Skip to content

Conversation

@zxnb01
Copy link
Contributor

@zxnb01 zxnb01 commented Sep 22, 2025

Fixes #93

🎨 Drawing Canvas Implementation
This PR implements a comprehensive drawing system for the text editing app as requested in #93.

Features Implemented:
Single brush feature with advanced drawing capabilities
Brush size slider with intuitive controls and real-time preview
Comprehensive color palette with color picker and preset options
Improved brush size UI - updated to a better, more user-friendly design

Functionality Ensured:
Drawing files save correctly - all drawing data persists properly when saving pages
Text compatibility maintained - texts remain fully draggable and editable on the drawing screen
Seamless integration - text and drawing features work together without conflicts
Enhanced page previews - saved pages display properly with both drawings and texts intact

UI Improvements:
Better brush size interface - refined the brush size controls for improved user experience
Unified canvas - smooth interaction between text editing and drawing modes

Technical Implementation:

  • Uses Flutter's native CustomPainter and Canvas API
  • No external drawing libraries required
  • Fixed save/load issues - drawings maintain stroke appearance
  • Proper JSON serialization of drawing paths and properties

@github-actions
Copy link
Contributor

Our Pull Request Approval Process

Thanks for contributing!

Reviewers

Do not assign reviewers. Our Queue Monitors will review your PR and assign them.
When your PR has been assigned reviewers contact them to get your code reviewed and approved via:

  1. comments in this PR

Reviewing Your Code

Your reviewer(s) will have the following roles:

  1. arbitrators of future discussions with other contributors about the validity of your changes
  2. point of contact for evaluating the validity of your work
  3. person who verifies matching issues by others that should be closed.
  4. person who gives general guidance in fixing your tests

Other

🎯 Please be considerate of our volunteers' time. Contacting the person who assigned the reviewers is not advised unless they ask for your input. Do not @ the person who did the assignment otherwise.

@may-tas
Copy link
Owner

may-tas commented Sep 22, 2025

@zxnb01 instead of adding all the different sub classes inside a single file drawing_canvas.dart, make a subfolder inside widgets and add the classes in different files.

@zxnb01
Copy link
Contributor Author

zxnb01 commented Sep 22, 2025

done ,u can review now

@may-tas
Copy link
Owner

may-tas commented Sep 24, 2025

@zxnb01
Upload a working screen recording to check that nothing is broken. In the recording, please use both the text and drawing modes, as I want to see if they work well together.

@zxnb01
Copy link
Contributor Author

zxnb01 commented Sep 24, 2025

Screen.Recording.2025-09-24.164239.mp4

here is the demo.

@may-tas
Copy link
Owner

may-tas commented Sep 24, 2025

@zxnb01
Please pull the latest changes, as this PR has been merged. All colors have now been centralized, so make sure to use this colors class wherever necessary.
#95

@zxnb01 zxnb01 force-pushed the feature/drawing-canvas-implementation branch from 048f6ec to 1a95237 Compare September 25, 2025 07:42
@zxnb01
Copy link
Contributor Author

zxnb01 commented Sep 25, 2025

@may-tas resolved the merge conflicts in cubit folder
and added a seperate subfolder for the monolith drawing.dart
can u recheck

@may-tas
Copy link
Owner

may-tas commented Sep 25, 2025

@zxnb01
You should utilize the ColorConstants class for all necessary colors and functions to apply different shades using alpha values. Please update all files where hardcoded colors have been used and replace them with ColorConstants.

@zxnb01
Copy link
Contributor Author

zxnb01 commented Sep 25, 2025

@may-tas made the changes as requested.

Screen.Recording.2025-09-25.160619.mp4

final video to ensure there is no breakage in the code.

@may-tas
Copy link
Owner

may-tas commented Sep 25, 2025

LGTM, Merging.
Thanks for contributing.

@may-tas may-tas merged commit 6b62e05 into may-tas:main Sep 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature Request: Add Drawing/Doodling Capability to Text Editing App

2 participants