Skip to content

fix: add dashed line support across all platforms#41

Merged
erweixin merged 1 commit intoerweixin:mainfrom
keta1:fix/android-displaylist-sync
Apr 13, 2026
Merged

fix: add dashed line support across all platforms#41
erweixin merged 1 commit intoerweixin:mainfrom
keta1:fix/android-displaylist-sync

Conversation

@keta1
Copy link
Copy Markdown
Contributor

@keta1 keta1 commented Apr 13, 2026

Summary

  • Add missing dashed field to DisplayItem.Line (or equivalent) across Android, React Native (Android/iOS), Flutter, iOS, and ratex-svg — aligning with the JVM/web reference implementation
  • Change PathCommand.Close from object to data object in React Native Android (consistent with JVM module)
  • Implement dashed line rendering in all platform renderers (dash pattern: 3t on, 3t off)
  • Handle dashed field in ratex-svg, emitting <line stroke-dasharray> instead of solid <rect>

Affected platforms

Platform Data model Renderer
Android dashed field added DashPathEffect
React Native Android dashed + data object DashPathEffect
React Native iOS dashed field added CGContext.setLineDash
iOS dashed field added CGContext.setLineDash
Flutter dashed field added Manual dash path segments
ratex-svg Already had field (was ignored) stroke-dasharray

@erweixin
Copy link
Copy Markdown
Owner

Thanks for the PR — looks great!

This issue seems to exist across ratex-svg, Flutter, iOS, and web. Would you be interested in working on a fix together?

@erweixin erweixin self-requested a review April 13, 2026 09:33
@erweixin erweixin self-assigned this Apr 13, 2026
@keta1 keta1 force-pushed the fix/android-displaylist-sync branch from 0edabea to 7edfc07 Compare April 13, 2026 10:36
Add missing `dashed` field to DisplayItem.Line and implement dashed
line rendering for Android, React Native (Android/iOS), Flutter, iOS,
and ratex-svg — aligning them with the JVM/web reference implementation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@keta1 keta1 force-pushed the fix/android-displaylist-sync branch from 7edfc07 to 99c94d7 Compare April 13, 2026 10:41
@keta1 keta1 changed the title fix: sync Android DisplayList.kt with JVM version fix: add dashed line support across all platforms Apr 13, 2026
@keta1
Copy link
Copy Markdown
Contributor Author

keta1 commented Apr 13, 2026

This issue seems to exist across ratex-svg, Flutter, iOS, and web. Would you be interested in working on a fix together?

Sure! I've already pushed a fix covering all affected platforms.

@erweixin erweixin merged commit 4b221ac into erweixin:main Apr 13, 2026
3 checks passed
@keta1 keta1 deleted the fix/android-displaylist-sync branch April 13, 2026 11:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants