# gpui: Fall back to client-side decorations on Wayland if SSD not supported \(\#39313\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/a04b3d80c82ba4aa6321a4c3986e9dbcf78c87fa)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: a04b3d80c82ba4aa6321a4c3986e9dbcf78c87fa

Requested commit: a04b3d80c82ba4aa6321a4c3986e9dbcf78c87fa

Commit: a04b3d80c82ba4aa6321a4c3986e9dbcf78c87fa

Tree: 325c8f74f7ae1071f2b98368b57edd51b90e95f8

Author: Be

Committer: GitHub

## Message

```
gpui: Fall back to client-side decorations on Wayland if SSD not supported (#39313)

It is optional for Wayland servers to support server-side decorations.
In particular, GNOME chooses to not implement SSD
(https://gitlab.gnome.org/GNOME/mutter/-/issues/217). So, even if the
application requests SSD, it must draw client-side decorations unless
the application receives a response from the server confirming the
request for SSD.

Before, when the user requested SSD for Zed, but the Wayland server did
not support it, there were no server-side decorations (window titlebar)
drawn, but Zed did not draw the window minimize, maximize, and close
buttons either. This fixes Zed so it always draws the window control
buttons if the Wayland server does not support SSD.

Before on GNOME Wayland with SSD requested:
<img width="3840" height="2160" alt="image"
src="https://github.com/user-attachments/assets/68a6d853-623d-401f-8e7f-21d4dea00543"
/>

After on GNOME Wayland with SSD requested:
<img width="3840" height="2160" alt="image"
src="https://github.com/user-attachments/assets/b258ae8b-fe0e-4ba2-a541-ef6f2c38f788"
/>


Release Notes:

- Fixed window control buttons not showing in GNOME Wayland when SSD
requested
```

## Parents

- [e76b485de3cb85978d5e5300f004a65b4f7ff968](https://git.cafe/gitcafe/zed/commit/e76b485de3cb85978d5e5300f004a65b4f7ff968?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/a04b3d80c82ba4aa6321a4c3986e9dbcf78c87fa?format=markdown)
