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

Servo on Desktop: maybe use libsimpleservo + libui? #22868

Closed
paulrouget opened this issue Feb 12, 2019 · 1 comment
Closed

Servo on Desktop: maybe use libsimpleservo + libui? #22868

paulrouget opened this issue Feb 12, 2019 · 1 comment

Comments

@paulrouget
Copy link
Contributor

@paulrouget paulrouget commented Feb 12, 2019

I'm not sure about that just yet, but maybe it's worth considering.

I recently added OpenGL support for Mac and Linux, and Windows support via EGL+Angle should not be too hard to achieve. Additionally, the C API appears to work.

The current Desktop servo app is build in Rust. One of the issue with Winit/Glutin is that it requires a full window GL buffer (or some hacky workaround to add widgets). In #21333 I describe a way to build the UI with WR, but maybe a better approach is to build the UI with whatever crossplatform toolkit + language and use Servo via libsimpleservo.

I was thinking of using libui. I am also thinking of not using any of its Rust ports, but directly the C version. Not using Rust at the embedder level is harder, but it's what the rest of the world will be doing anyway.

I've built a proof of concept (requires few tweaks in libui and in servo, but all are WIP PRs) that just render a page (no interactions).

If we go this way, adding url bars, tabs, etc, will be a lot easier.

@paulrouget
Copy link
Contributor Author

@paulrouget paulrouget commented Aug 13, 2020

Nah.

We should have a UIKit view, a UWP control, and a GTK widget. It's really not hard to build.

@paulrouget paulrouget closed this Aug 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.