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

Port the UI to Xilem #144

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open

Port the UI to Xilem #144

wants to merge 8 commits into from

Conversation

DJMcNab
Copy link

@DJMcNab DJMcNab commented Nov 6, 2024

Xilem is the successor project to Druid, which your existing UI is written in.

I am one of the maintainers of Xilem, and so wanted to get a feel for how Xilem compares to Druid in terms of functionality and features. Because of this, I have ported your UI from Druid to Xilem. Currently, this uses the main branch of Xilem.

image

Key missing features of this port are:

  1. Emoji support. That has been fully implemented, but the work hasn't trickled through dependency updates yet; you can track Update to Vello 0.3.0, Parley main, AccessKit 0.17 linebender/xilem#616 or Add a small emoji picker/selector example linebender/xilem#420 for progress.
  2. File open dialogues. I hacked around that by using a textbox

@tbillington
Copy link
Owner

Thanks @DJMcNab ! I haven't had a lot of time to work on the gui so it's languished.

I'm curious how much support xilem currently has for customising the styling? Do you know of any examples or other projects I could peruse, cheers :)

@DJMcNab
Copy link
Author

DJMcNab commented Nov 15, 2024

Our styling support is quite limited. In this example, you could (with difficulty) get almost any style you want; the only limitation is that styling how the button looks isn't very supported.

This PR was as much an excercise for myself in trying out Xilem as a serious contribution; and so the code style is definitely not ideal. There aren't any other "real" public projects which use Xilem at the moment; the closest thing to what you're asking is probably the calc_masonry example, but that solves styling by making a fully custom widget.

As a note, the font discovery is much better on my machine than with Druid - the correct font is found for the terminal box characters, which wasn't the case on the old version.

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