Revert "Revert "forward x11 and wayland features to glutin" (#5391)" (#5490)

* https://github.com/emilk/egui/pull/5391
* https://github.com/emilk/egui/pull/5488
* https://github.com/emilk/egui/pull/5490
This commit is contained in:
Emil Ernerfeldt 2024-12-17 09:36:03 +01:00 committed by GitHub
parent adfc0bebfc
commit cfc341fabd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 33 additions and 11 deletions

View File

@ -78,8 +78,8 @@ criterion = { version = "0.5.1", default-features = false }
dify = { version = "0.7", default-features = false }
document-features = "0.2.10"
glow = "0.16"
glutin = "0.32.0"
glutin-winit = "0.5.0"
glutin = { version = "0.32.0", default-features = false }
glutin-winit = { version = "0.5.0", default-features = false }
home = "0.5.9"
image = { version = "0.25", default-features = false }
kittest = { version = "0.1" }

View File

@ -8,6 +8,8 @@ Changes since the last release can be found at <https://github.com/emilk/egui/co
## 0.30.0 - 2024-12-16 - Android support
NOTE: you now need to enable the `wayland` or `x11` features to get Linux support, including getting it to work on most CI systems.
### ⭐ Added
* Support `ViewportCommand::Screenshot` on web [#5438](https://github.com/emilk/egui/pull/5438) by [@lucasmerlin](https://github.com/lucasmerlin)

View File

@ -35,7 +35,7 @@ default = [
"accesskit",
"default_fonts",
"glow",
"wayland",
"wayland", # Required for Linux support (including CI!)
"web_screen_reader",
"winit/default",
"x11",
@ -72,7 +72,15 @@ persistence = [
]
## Enables wayland support and fixes clipboard issue.
wayland = ["egui-winit/wayland", "egui-wgpu?/wayland", "egui_glow?/wayland"]
##
## If you are compiling for Linux (or want to test on a CI system using Linux), you should enable this feature.
wayland = [
"egui-winit/wayland",
"egui-wgpu?/wayland",
"egui_glow?/wayland",
"glutin?/wayland",
"glutin-winit?/wayland",
]
## Enable screen reader support (requires `ctx.options_mut(|o| o.screen_reader = true);`) on web.
##
@ -98,7 +106,15 @@ web_screen_reader = [
wgpu = ["dep:wgpu", "dep:egui-wgpu", "dep:pollster"]
## Enables compiling for x11.
x11 = ["egui-winit/x11", "egui-wgpu?/x11", "egui_glow?/x11"]
x11 = [
"egui-winit/x11",
"egui-wgpu?/x11",
"egui_glow?/x11",
"glutin?/x11",
"glutin?/glx",
"glutin-winit?/x11",
"glutin-winit?/glx",
]
## If set, eframe will look for the env-var `EFRAME_SCREENSHOT_TO` and write a screenshot to that location, and then quit.
## This is used to generate images for examples.
@ -142,10 +158,14 @@ egui-wgpu = { workspace = true, optional = true, features = [
] } # if wgpu is used, use it with winit
pollster = { workspace = true, optional = true } # needed for wgpu
# we can expose these to user so that they can select which backends they want to enable to avoid compiling useless deps.
# this can be done at the same time we expose x11/wayland features of winit crate.
glutin = { workspace = true, optional = true }
glutin-winit = { workspace = true, optional = true }
glutin = { workspace = true, optional = true, default-features = false, features = [
"egl",
"wgl",
] }
glutin-winit = { workspace = true, optional = true, default-features = false, features = [
"egl",
"wgl",
] }
home = { workspace = true, optional = true }
wgpu = { workspace = true, optional = true, features = [
# Let's enable some backends so that users can use `eframe` out-of-the-box

View File

@ -74,8 +74,8 @@ wasm-bindgen.workspace = true
[dev-dependencies]
glutin.workspace = true # examples/pure_glow
glutin-winit.workspace = true
glutin = { workspace = true, default-features = true } # examples/pure_glow
glutin-winit = { workspace = true, default-features = true }
[[example]]
name = "pure_glow"