We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 4845

Summary: implement client-side decorations (CSD) for Wayland
Product: SDL Reporter: David Heidelberg (okias) <david>
Component: videoAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED DUPLICATE QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2 CC: icculus, Rauch.Christian
Version: 2.0.13   
Hardware: x86_64   
OS: Linux   
Bug Depends on:    
Bug Blocks: 3948    

Description David Heidelberg (okias) 2019-10-23 18:09:42 UTC
Feature request to implement CSD, to be able switch default from X11 protocol to Wayland on linux-systems.
Comment 1 Ryan C. Gordon 2019-10-23 18:42:26 UTC
As I said before, we won’t get to this for 2.0.12, but let’s use this bug as a place to collect info in the meantime.

As I see it, we don’t need world-class CSD, especially not to start with. At a minimum, we need a basic title bar with a close button, that lets you move the window by dragging, and maybe some means to resize the window (but this last point is often less crucial for SDL apps).

Extra credit for a minimize and maximize button, but I don’t know what Wayland protocols look like for those that aren’t Gnome or KDE specific. If this is going to need magic specific to each desktop environment, we should avoid adding it. A close button (besides being the most useful decoration) can just be wired to an SDL event and not need any DE integration.

Ideally, whatever we build is “good enough” and doesn’t become a massive reimplementation of a complete desktop environment. Building something users can take for granted is certainly going to be non-trivial.

There is a proposal for a CSD library, that lets things like SDL just use GTK’s decorations without being “real” GTK apps, but that is just starting.

Wayland server-side decorations are available as a protocol on KDE, and SDL already supports these. Between this and the future CSD library, SDL will have good integration, so we’re just looking for something very basic here.
Comment 2 Christian Rauch 2020-10-31 14:17:12 UTC
What about the proposed client-side decorations in https://bugzilla.libsdl.org/show_bug.cgi?id=5194 ?
Comment 3 Ryan C. Gordon 2020-11-18 15:46:40 UTC
Going to mark this as a duplicate of Bug #5194 so we focus discussion over there.

--ryan.

*** This bug has been marked as a duplicate of bug 5194 ***