Skip to content
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

Integrate Cosmic Text #34

Closed
ealmloff opened this issue May 19, 2023 · 3 comments
Closed

Integrate Cosmic Text #34

ealmloff opened this issue May 19, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@ealmloff
Copy link
Member

Specific Demand

Cosmic text implements some more advanced text layout and editing. It supports rendering bold, italicized, and multiline text. It also implements text editing on Unicode characters.

Implement Suggestion

Replace the current text layout engine with Cosmic text and use Cosmic text to implement editing when input widgets are implemented.

Related: linebender/vello#306

@ealmloff ealmloff added the enhancement New feature or request label May 19, 2023
@jackpot51
Copy link

Are there issues with cosmic-text blocking this?

@nicoburns
Copy link
Collaborator

We've just landed text support based on parley. This work was largely completed prior to the recent flurry of activity on cosmic-text, so this was seen as the path of least resistance given that we really needed the inline box support (pop-os/cosmic-text#80) and that it was hard to implement that in cosmic-text without the multiple line-height support. That would still be a blocker for use adopting cosmic-text in future, but we would also consider implementing it ourselves (I've just implemented it in parley and it wasn't too hard). We would consider migrating to cosmic-text in future, but there would need to be a compelling reason to overcome the switching cost.

At this point my view is that cosmic-text and parley are both approximately as good and bad options as each other: both have pretty decent support for basic rich text layout, and neither are particularly actively developed by their creators (although both are seeing some maintenance and development). The best case for me is a merging of the projects such that the limited development resources of each project can be combined (and that any work that I/Dioxus/Bevy put into a project can be universally available).

Closing because it's effectively implemented for now. But feel free to continue discussion here.

@jackpot51
Copy link

Thanks for the feedback. I'll be looking into layout with custom rectangles soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants