winit: Adwaita decorations without the title text, which drops ttf-parser

8304b4a · Gabriel Morell · 2026-10-23 15:13

2 files +15 -38
Message
{commit_body(@commit)}

Files changed

modified Cargo.lock
+2 −35
@@ -2,22 +2,6 @@
2 2 # It is not intended for manual editing.
3 3 version = 4
4 4
5 −[[package]]
6 −name = "ab_glyph"
7 −version = "0.2.32"
8 −source = "registry+https://github.com/rust-lang/crates.io-index"
9 −checksum = "01c0457472c38ea5bd1c3b5ada5e368271cb550be7a4ca4a0b4634e9913f6cc2"
10 −dependencies = [
11 − "ab_glyph_rasterizer",
12 − "owned_ttf_parser",
13 −]
14 −
15 −[[package]]
16 −name = "ab_glyph_rasterizer"
17 −version = "0.1.10"
18 −source = "registry+https://github.com/rust-lang/crates.io-index"
19 −checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618"
20 −
21 5 [[package]]
22 6 name = "accesskit"
23 7 version = "0.25.1"
@@ -2825,16 +2809,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2825 2809 checksum = "7d8fae84b431384b68627d0f9b3b1245fcf9f46f6c0e3dc902e9dce64edd1967"
2826 2810 dependencies = [
2827 2811 "libc",
2828 − "windows-sys 0.48.0",
2829 −]
2830 −
2831 −[[package]]
2832 −name = "owned_ttf_parser"
2833 −version = "0.25.1"
2834 −source = "registry+https://github.com/rust-lang/crates.io-index"
2835 −checksum = "36820e9051aca1014ddc75770aab4d68bc1e9e632f0f5627c4086bc216fb583b"
2836 −dependencies = [
2837 − "ttf-parser",
2812 + "windows-sys 0.61.2",
2838 2813 ]
2839 2814
2840 2815 [[package]]
@@ -3450,9 +3425,7 @@ version = "0.10.1"
3450 3425 source = "registry+https://github.com/rust-lang/crates.io-index"
3451 3426 checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec"
3452 3427 dependencies = [
3453 − "ab_glyph",
3454 3428 "log",
3455 − "memmap2",
3456 3429 "smithay-client-toolkit 0.19.2",
3457 3430 "tiny-skia",
3458 3431 ]
@@ -4167,12 +4140,6 @@ version = "0.2.5"
4167 4140 source = "registry+https://github.com/rust-lang/crates.io-index"
4168 4141 checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
4169 4142
4170 −[[package]]
4171 −name = "ttf-parser"
4172 −version = "0.25.1"
4173 −source = "registry+https://github.com/rust-lang/crates.io-index"
4174 −checksum = "d2df906b07856748fa3f6e0ad0cbaa047052d4a7dd609e231c4f72cee8c36f31"
4175 −
4176 4143 [[package]]
4177 4144 name = "tungstenite"
4178 4145 version = "0.24.0"
@@ -4741,7 +4708,7 @@ version = "0.1.11"
4741 4708 source = "registry+https://github.com/rust-lang/crates.io-index"
4742 4709 checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
4743 4710 dependencies = [
4744 − "windows-sys 0.48.0",
4711 + "windows-sys 0.61.2",
4745 4712 ]
4746 4713
4747 4714 [[package]]
modified Cargo.toml
+13 −3
@@ -43,9 +43,19 @@ eframe = { version = "0.37.0", default-features = false, features = [
43 43 "web_screen_reader",
44 44 "x11",
45 45 ] }
46 −# eframe's default features turn on winit's, and a dependency can't name
47 −# a feature of its dependency, so winit is listed here to keep them.
48 −winit = "0.30.13"
46 +# winit's default features, as eframe's defaults turn on, except that the
47 +# Wayland client-side decorations (what GNOME draws koco's frame with)
48 +# are Adwaita's without the title text: drawing the title is what pulls
49 +# in ab_glyph and the unmaintained ttf-parser (RUSTSEC-2026-0192).
50 +# `wayland-csd-adwaita-crossfont` would draw it with fontconfig and
51 +# FreeType instead, at the cost of building against both.
52 +winit = { version = "0.30.13", default-features = false, features = [
53 + "rwh_06",
54 + "x11",
55 + "wayland",
56 + "wayland-dlopen",
57 + "wayland-csd-adwaita-notitle",
58 +] }
49 59 egui = "0.37.0"
50 60 egui_material_icons = "0.9.0"
51 61 log = "0.4"

Parents: e22af51