glutin: Rewrite using Glutin 0.30 to provide Compositor#1688
glutin: Rewrite using Glutin 0.30 to provide Compositor#1688ids1024 wants to merge 3 commits intoiced-rs:masterfrom
Compositor#1688Conversation
1cdaf7d to
e209b21
Compare
|
The CI failure is in |
e209b21 to
cff3656
Compare
CompositorCompositor
cff3656 to
df8c79c
Compare
Glutin 0.30 changes the API to not depend on winit, and instead take a raw window handle. `glutin-winit` is a helper to make it a bit easier to create a GL context on top of winit. Things like `iced_winit::conversion::window_event` are problematic here since we end up using a different winit version from `iced_winit`, and that function is quite complicated to duplicate. But we don't need all of it. Duplicating isn't so unreasonable. It's probably expected that integrations of Iced could not rely on conversions from `iced_winit`, since likely use something other than winit to get a window and OpenGL context, and in any case are not using the Iced fork of `winit`.
|
If #1689 is merged that will fix the build failure. Still leaving the questions above. |
This provides a `Compositor` adapting a `GLCompositor`, that thus can be used with `iced_winit` or with a different shell. Backport of iced-rs#1688. Still needs some work.
This provides a `Compositor` adapting a `GLCompositor`, that thus can be used with `iced_winit` or with a different shell. Backport of iced-rs#1688. Still needs some work.
|
Perhaps Not sure if that's an issue with Iced currently, but it would impact multi-window and may be a problem for some integrations of Iced. |
May be necessary in implementations other than Wgpu.
This provides a `Compositor` adapting a `GLCompositor`, that thus can be used with `iced_winit` or with a different shell.
df8c79c to
502b682
Compare
|
We are I still think there is a need for If you or anyone would want to take over these crates, I'd be more than happy to provide you with repositories in the organization! |
This provides a
Compositoradapting aGLCompositor, that thus can be used withiced_winitor with a different shell.Seems to be working for me on Wayland, but it needs more testing. And there are a few remaining questions:
compatible_windowisNone? Is it reasonable to return an error in that case? Should the trait not take anOptionhere?find_configs.create_surfacemethod of the trait return aResult?