Skip to content

feat(niri/workspaces): add column folding and counter for workspace taskbar#5195

Open
archion wants to merge 1 commit into
Alexays:masterfrom
archion:master
Open

feat(niri/workspaces): add column folding and counter for workspace taskbar#5195
archion wants to merge 1 commit into
Alexays:masterfrom
archion:master

Conversation

@archion

@archion archion commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Description:

This PR introduces a column-based window folding and grouping mechanism for the Niri workspace taskbar.

Motivation:

In Niri's scrolling layout, multiple windows can be vertically stacked within the same column. Previously, the taskbar would flatly render every single window icon, leading to clutter. This change groups windows by their column index, displays the most recently focused window as a "cover", and provides optional counter badges for folded columns.

Key Changes

  • Window Grouping: Grouped taskbar window icons using Niri's native pos_in_scrolling_layout column index.
  • Focus Memory: Implemented a static memory matrix (workspace_memories) to ensure the last-focused window within a folded column remains pinned as the visible "cover" icon.
  • Counter Badge: Added an optional Gtk::Label counter badge next to the cover icon to indicate how many windows are currently stacked in that column.
  • Configuration Toggle: Introduced new configuration options to give users full control over this behavior (including control over format: feat(niri): add workspace-taskbar support #4997 (comment)).

Testing & Compatibility:

  • Backward Compatibility: Tested with existing configurations; no breaking changes detected.

New Configuration Options

Users can now configure these features inside the workspace-taskbar object in Waybar's config:

"workspace-taskbar": {
    "enable": true,
    "icon-size": 28,
    // Toggle column-based folding (defaults to false if omitted)
    "column": true,
    // Toggle folded window counter badges (defaults to true if omitted)
    "count": true,
    // Toggle hide format information for taksbar (defaults to false if omitted)
    "hide-format": false
}
image

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