Files
vencord-wayland-keybinds/assets/readme/hero.svg
T
Evandro Fonseca Junior a3a9149184 WaylandKeybinds: reliable Discord global keybinds on GNOME Wayland
Vencord plugin for the Discord desktop app. Toggles fire on key press,
push-to-talk infers releases GNOME drops (re-registration probe), and
GNOME's trigger descriptions are matched correctly. Includes basis-path
tests, a patch checker against the live Discord bundle, the design spec
and the README assets.
2026-11-02 00:51:25 -03:00

42 lines
6.0 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="360" viewBox="0 0 1200 360" role="img" aria-labelledby="title desc">
<title id="title">WaylandKeybinds</title>
<desc id="desc">Vencord plugin that keeps Discord's global mute, deafen and push-to-talk shortcuts working on GNOME Wayland. Keycaps Ctrl + Shift + F10; a GNOME lane shows a press, key repeats and a release that never arrives; a Discord lane shows the mute toggled in 11 ms.</desc>
<rect width="1200" height="360" rx="24" fill="#0E0F12"/>
<g id="title-block">
<text x="64" y="78" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="18" letter-spacing="2" fill="#8B9099">VENCORD PLUGIN · GNOME WAYLAND</text>
<text x="61" y="152" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="64" font-weight="700" fill="#F2EFE9">WaylandKeybinds</text>
<text x="64" y="204" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="27" fill="#C9C6BF">Global mute, deafen and push-to-talk</text>
<text x="64" y="240" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="27" fill="#C9C6BF">that keep working when GNOME</text>
<text x="64" y="276" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="27" fill="#C9C6BF">drops the key release.</text>
<text x="64" y="318" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="18" fill="#8B9099">renderer-only · no new dependencies · GPL-3.0</text>
</g>
<line x1="676" y1="56" x2="676" y2="304" stroke="#2A2D34" stroke-width="2"/>
<g id="keycaps">
<g transform="translate(716 58)"><rect width="104" height="62" rx="12" fill="#1C1E24" stroke="#3A3E47" stroke-width="2"/><rect x="6" y="5" width="92" height="44" rx="9" fill="#272A32"/><text x="52.0" y="35" text-anchor="middle" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="22" font-weight="600" fill="#F2EFE9">Ctrl</text></g>
<text x="838" y="96" text-anchor="middle" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="22" fill="#8B9099">+</text>
<g transform="translate(856 58)"><rect width="116" height="62" rx="12" fill="#1C1E24" stroke="#3A3E47" stroke-width="2"/><rect x="6" y="5" width="104" height="44" rx="9" fill="#272A32"/><text x="58.0" y="35" text-anchor="middle" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="22" font-weight="600" fill="#F2EFE9">Shift</text></g>
<text x="990" y="96" text-anchor="middle" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="22" fill="#8B9099">+</text>
<g transform="translate(1008 58)"><rect width="92" height="62" rx="12" fill="#1C1E24" stroke="#3A3E47" stroke-width="2"/><rect x="6" y="5" width="80" height="44" rx="9" fill="#272A32"/><text x="46.0" y="35" text-anchor="middle" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', sans-serif" font-size="22" font-weight="600" fill="#F2EFE9">F10</text></g>
</g>
<g id="gnome-lane">
<text x="716" y="174" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="18" letter-spacing="1" fill="#8B9099">GNOME</text>
<line x1="716" y1="196" x2="1136" y2="196" stroke="#2A2D34" stroke-width="2"/>
<circle cx="740" cy="196" r="8" fill="#7BD88F"/>
<line x1="800" y1="188" x2="800" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="810" y1="188" x2="810" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="820" y1="188" x2="820" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="830" y1="188" x2="830" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="840" y1="188" x2="840" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="850" y1="188" x2="850" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="860" y1="188" x2="860" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="870" y1="188" x2="870" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="880" y1="188" x2="880" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="890" y1="188" x2="890" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="900" y1="188" x2="900" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="910" y1="188" x2="910" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="920" y1="188" x2="920" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="930" y1="188" x2="930" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="940" y1="188" x2="940" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="950" y1="188" x2="950" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="960" y1="188" x2="960" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="970" y1="188" x2="970" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="980" y1="188" x2="980" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="990" y1="188" x2="990" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="1000" y1="188" x2="1000" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="1010" y1="188" x2="1010" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="1020" y1="188" x2="1020" y2="204" stroke="#8B9099" stroke-width="2"/><line x1="1030" y1="188" x2="1030" y2="204" stroke="#8B9099" stroke-width="2"/>
<path d="M1060 186 L1080 206 M1080 186 L1060 206" stroke="#FF7A6B" stroke-width="3" stroke-linecap="round"/>
<text x="1136" y="232" text-anchor="end" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="18" fill="#FF7A6B">release never arrives</text>
</g>
<line x1="740" y1="206" x2="740" y2="268" stroke="#3A3E47" stroke-width="2" stroke-dasharray="4 5"/>
<g id="discord-lane">
<text x="760" y="268" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="18" letter-spacing="1" fill="#8B9099">DISCORD + PLUGIN</text>
<circle cx="740" cy="290" r="8" fill="#7BD88F"/>
<text x="760" y="297" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="20" fill="#7BD88F">mute toggled · 11 ms</text>
</g>
</svg>