PAINTROID-451: feat: Add Advanced Options (Antialiasing and Smoothing) - #171
Open
this-is-varunxyz wants to merge 13 commits into
Open
PAINTROID-451: feat: Add Advanced Options (Antialiasing and Smoothing)#171this-is-varunxyz wants to merge 13 commits into
this-is-varunxyz wants to merge 13 commits into
Conversation
… up rendering logic
…endering Migrated the Advanced Settings from a modal dialog to a bottom-bar panel to match StrokeToolOptions, fulfilling the UI specification. - Replaced hardcoded strings with AppLocalizations keys for the overflow menu and settings panel. - Added unit tests verifying Line, Spray, and Shapes tools correctly inherit the isAntiAlias state from the shared PaintProvider. - Fixed legacy integration tests that relied on hardcoded English menu strings.
this-is-varunxyz
marked this pull request as ready for review
August 23, 2026 22:40
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces the "Advanced Options" dialog to the workspace overflow menu, allowing users to toggle Antialiasing and Smoothing for drawing tools.
Jira Ticket: PAINTROID-451
New Features and Enhancements
AdvancedSettingsDialogaccessible via the Top App Bar overflow menu to toggle features, following theToolOptionsstate data patterns.AdvancedSettingsStateDatausing Riverpod and Freezed to securely manage the global state of the antialiasing and smoothing toggles.PaintProviderand updatedGraphicFactory.copyPaintWith()to conditionally applyisAntiAliasto the globalPaintobject.ShapeDrawingUtils), Line, Spray, and Clipboard tools.strokeWidth <= 1.0).AdvancedSettingsAlgorithms) from Native Kotlin into the FlutterBrushTool.distFromLast < 5.0) inonDragto safely drop microscopic sub-pixel touch events while keeping the visual rendering loop instant.Refactorings and Serialization Fixes
PaintConverter.dartand bumpedSerializerVersion.PAINT_VERSIONto ensure the user's Anti-aliasing preference is saved cleanly in.catrobatfiles while maintaining backwards compatibility.CubicToActionwrapper insidePathWithActionHistoryand updatedPathActionConverter.dartto support JSON serialization for 6-coordinate cubic Bezier splines.reset()method toPathWithActionHistoryto support on-the-fly path reconstruction without triggering "ghost path" artifacts.advanced_settings_state_data_test) to gracefully handle the new distance filters and defaulttruestates.Checklist
Your checklist for this pull request
Please review the contributing guidelines and wiki pages of this repository.