Skip to content

Use one cooperative KWin control slot across ListenFree headers - #2

Merged
SuceV587 merged 3 commits into
mainfrom
codex/flatpak-kwin-controls
Nov 10, 2026
Merged

SuceV587 merged 3 commits into
mainfrom
codex/flatpak-kwin-controls

Conversation

@SuceV587

@SuceV587 SuceV587 commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

ListenFree’s normal and now-playing headers drew private traffic lights and never registered control positions with KWin. Both headers now share one optional native protocol slot for their surface. Only client button children hide after acknowledgement; the geometry target stays opaque, and unsupported desktops retain functional controls. The green button means maximize/restore, matching the protocol; F11 and the separate player fullscreen action remain available.

Validation at 34d7be5a6ce595cf86571a6749e48bf88ef112d9:

  • Both push/PR native CI builds passed, including installer regressions and the new single-slot/header-switch regression. The first fixture-visibility failure was corrected and rerun successfully.
  • The exact installed CI candidate was run in the designated Ubuntu 26.04 VM under isolated KWin, with an empty profile and network disabled. Both home and nowplaying captures required actual compositor takeover and exited successfully. Protocol inspection found exactly one control object per window. Paired client/compositor screenshots were inspected locally.
  • Native review exports now reject missing protocol/takeover when LISTENFREE_REVIEW_REQUIRE_COMPOSITOR_CONTROLS=1 is set.

This repository currently publishes source releases, not Flatpak bundles. Native acceptance does not claim that a Flatpak is available. Existing application data and real accounts were not accessed.

@SuceV587
SuceV587 marked this pull request as ready for review November 10, 2026 17:43
@SuceV587
SuceV587 merged commit 52c2571 into main Nov 10, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant