Commit Graph
19 Commits
Author SHA1 Message Date
AlexandClaude Opus 4.8 f72f84e011 fix: backward-compat + bug fixes and man-page build fix for 0.16.0
Post-0.15.0 review of the 0.15.0..HEAD range surfaced regressions and
bugs. This restores backward compatibility for existing configs/CSS,
fixes confirmed defects, and repairs the scdoc man-page build break on
master. Pango-markup tooltips are intentional and were kept.

Backward-compat restorations:
- AModule: honor legacy numeric Gdk::CursorType cursor values (int overload)
- memory: correct GiB divisor (was ~2.3% low); round bare {} placeholders
- wireplumber: scale max-volume into the linear domain so the cap works again
- idle_inhibitor: gate right/middle-click deactivate & scroll on dynamic-timeouts;
  accept both dynamic-timeout(s); widen timeout to double (no fractional truncation)
- custom: keep #custom-<name>.<class> CSS selectors working (classes on box_)
- image: don't wordexp-split a single path; fall back to the literal path
- niri/window: restore hide-when-empty (new show-empty opt-in); escape tooltip
- wlr/taskbar: plain-text tooltip when markup is disabled

Bug fixes:
- tray: fix use-after-free in onAdd; guard the watcher retry timeout
- hyprland: clamp max-windows iterator (OOB); drop duplicate language tooltip block
- niri/window: supply {col}/{max_col} args in the empty branch (fmt::format_error)
- mpris: escape {dynamic}/{player} tooltip; fix dangling player; albumArtist source
- mango: fix use-after-free race (dispatch under callback_mutex_)
- mpd: contain throwing checkErrors in noexcept idle paths (no std::terminate/UAF)
- keyboard_state: always render every lock label, with guarded defaults
- bluetooth: bound GATT ReadValue timeout, opt-in + services-resolved gating,
  preserve authoritative Battery1 percentage
- wireplumber: fix WpDevice reference leak / NULL handling
- battery, clock, dwl, wayfire, graph, custom_graph, transform, river: assorted
  crash/logic fixes

Man page / build:
- niri-workspaces: fix scdoc "indented by an amount greater than 1"
  (workspace-taskbar sub-options were mis-indented; breaks man-page build)
- document new show-empty (niri/window); correct network {txBitrate}/{rxBitrate}

Not compiled locally (no gtkmm on this host); C++ build relies on CI.
Man pages validated with scdoc 1.11.4.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 02:14:13 +02:00
sewaustav 9cd09c2569 feat(niri): add workspace-taskbar support
Adds a per-workspace app-icon taskbar (Workspace class) to the
niri/workspaces module. Rebased onto master: integrated with the
existing window-rewrite feature so the {windows} and {total} format
replacements continue to work alongside the new taskbar.
2026-07-04 01:50:16 +02:00
Abhijeet 9e10a9aec9 feat(niri/workspaces): add window icons via window-rewrite
Adds format-window-separator, window-rewrite and window-rewrite-default
options plus the {windows} format replacement to the niri/workspaces
module (rebased onto master; coexists with ignore-workspaces).
2026-07-04 01:42:23 +02:00
Alex 35dd0af208 Merge remote-tracking branch 'origin/master' into pr-4001
# Conflicts:
#	man/waybar-niri-workspaces.5.scd
#	src/modules/niri/workspaces.cpp
2026-07-04 00:54:50 +02:00
Alex 9f3e5c09a3 Merge remote-tracking branch 'origin/master' into pr-4537
# Conflicts:
#	include/modules/niri/workspaces.hpp
#	src/modules/niri/workspaces.cpp
2026-07-04 00:40:14 +02:00
Alexis Rouillard e921e255d1 Merge pull request #5110 from archion/master
feat(niri/workspaces): add {total} format token to workspaces
2026-07-04 00:27:31 +02:00
Alex 5c1dd9e9f1 Merge remote-tracking branch 'origin/master' into pr-5110 2026-07-03 23:56:28 +02:00
Alex b9d5b3b4a2 Merge remote-tracking branch 'origin/master' into pr-5041
# Conflicts:
#	src/modules/niri/workspaces.cpp
2026-07-03 23:50:53 +02:00
Alex 1afb1a5229 docs(man): document options implemented but missing from man pages
Sync man pages with the code for options that were read but undocumented:
- sway/workspaces: ignore-workspaces
- niri/workspaces: sort-by-number, hide-empty
- wayfire/workspaces: disable-scroll, enable-bar-scroll
- river/tags: set-tags, toggle-tags
- hyprland/workspaces: persistent-workspaces (formalized)
- hyprland/window: fallback, tooltip-format
- cpu: format-<state>, tooltip-format, tooltip-format-<state>
- pulseaudio/slider: ignored-sinks
- hyprland/niri/mango language: format-<lang>-<variant> (+ hyprland tooltip variant)
2026-07-03 23:35:12 +02:00
Zuodong Yu f7b9d8c123 modules/niri: add {total} format token to workspaces 2026-06-07 17:35:37 +08:00
Jack Barnes 51becf2fbc feat(niri/workspaces): Add enable-bar-scroll option 2026-05-16 13:03:53 +08:00
Raphael Kimmig 85a8fca0de feat: allow sorting niri workspaces 2025-12-07 12:18:24 +01:00
Thomas Crha e1d4967d8e feat(niri/worspaces): add ignore-workspaces configuration option 2025-10-09 18:03:24 +11:00
Alexis Rouillard 630f85dcb1 Merge branch 'master' into niri-workspace-urgency 2025-06-22 08:57:49 +01:00
Illia Ostapyshyn 19d2430516 niri/workspaces: Add empty icon 2025-05-19 23:01:19 +02:00
Duncan Overbruck 47e0f42523 niri: add support for urgency indicators to workspaces 2025-05-14 20:33:11 +02:00
hansi 9556bdabda feat: add display-condition configuration option 2025-03-24 11:47:29 +04:00
Lars Niesen f9acc1fed9 Add stretching of modules and modules-center toggling
This Patch allows the stretching of modules-{left,center,right} as well
add a "expand" flag to AModule. This allows one module to consume the
leftover space.
To allow the left or right modules to fully consume the center, the
changes also include a way to remove the center box (center_)
altogether.
2024-11-20 00:00:27 +01:00
Ivan Molodetskikh 46e7ed35de Add niri/workspaces, niri/window, niri/language 2024-09-13 10:34:55 +03:00