https://bugs.kde.org/show_bug.cgi?id=343690

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #65 from [email protected] ---
Window Tabbing on Wayland — The CSD Excuse Doesn't Hold

This is a response to Bug 343690, closed as RESOLVED INTENTIONAL with the
stated reason: "The prevalence of CSDs makes this impossible to do well."

The CSD Argument Is a Non-Answer

KWin already has the ability to force server-side decorations on any window.
It's in System Settings → Window Management → Window Rules → "Titlebar and
Frame." Chrome, VS Code, Firefox, Steam, and virtually every non-GNOME
application either uses SSD by default or allows re-enabling it. The only
holdouts are GNOME apps that nobody is trying to tab.

For windows that refuse SSD, the fallback is trivial: render a tab bar above
the client area. This is how Stardock Groupy has worked on Windows for a
decade. It's how the KWin tiling system handles CSD windows today — it doesn't
refuse to tile them, it just works around the decoration gap. The same approach
applies to tabbing.

COSMIC Already Did It

System76's COSMIC desktop shipped window tabbing on Wayland in 2024. Their
compositor is open-source (GPL), written in Rust, and their implementation is
available for reference at https://github.com/pop-os/cosmic-comp. The feature
works across SSD and CSD windows. If a brand-new compositor written from
scratch in Rust can do it, KWin — with 25+ years of C++ experience and a larger
development team — can do it.

11 Years of Demand

This bug was filed in February 2015. It has 64 comments, 49 watchers, and 4
duplicates. The most recent substantive comment was October 2025 — people are
still asking. The "INTENTIONAL" closure in 2023 didn't stop demand because the
stated reason doesn't match technical reality.

What "Done Well" Actually Looks Like

No one is asking for pixel-perfect CSD integration. A working implementation
needs three things:

1. A tab bar rendered by the compositor above the window content area
2. Keyboard shortcuts for tab switching, detaching, and reordering
3. Window Rules integration for auto-tabbing specific applications

SSD windows get clean tab bars. CSD windows get a tab bar above their
client-side decorations. It won't look perfect on GNOME Calculator, but nobody
is tabbing GNOME Calculator. The applications people actually want to tab —
terminals, editors, file managers, browsers — all support SSD.

Next Steps

If KWin maintainers stand by the closure, please provide a technical write-up
of what specifically makes this impossible on Wayland, referencing the protocol
limitation. The COSMIC team clearly didn't hit whatever this limitation is. If
it's a resourcing issue — not enough developer time — say so. The community has
proven for 11 years that the demand exists. Acknowledging "we don't have the
bandwidth" is more honest than "CSDs make it impossible," which is demonstrably
false.

There is a community KWin script attempting to implement this at
https://github.com/Aziroshin/kwin-window-tabbing. If it's architecturally
impossible via the scripting API, documenting why would help the community
understand the blocker instead of repeatedly filing duplicates of this
11-year-old report.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to