Commit Graph
5222 Commits
Author SHA1 Message Date
Alex 9ac3f9b951 clock: make calendar padding portable across FormatStream char types
std::setfill is templated on the fill char type, which must match the
Glib::ustring FormatStream's char type. That type is wchar_t with
libstdc++/glibmm but char with libc++, so no fixed literal (' ' or L' ')
compiles everywhere. The stream's default fill is already a space, so
drop std::setfill entirely; std::setw/std::left/std::right are
char-type-agnostic and keep the exact padding behavior.
2026-07-03 21:41:10 +02:00
Alex 31a3d7e1bb fix(battery): gate Full-as-Plugged behind full-at-plugged option, drop debug output
Reporting a full battery on AC as 'Plugged' is now opt-in via the
'full-at-plugged' config option (default false), so existing format-full /
tooltip-format-full setups keep working. Also documents the option.
2026-07-03 21:40:41 +02:00
Alex 488a75fada fix(wlr/taskbar): gate title shrink/expand behind 'expand' option
Only stretch buttons and ellipsize titles when the new boolean 'expand'
option is enabled and the bar is horizontal. Restores the previous
content-based sizing as the default and avoids truncating every title
to an ellipsis on vertical bars.
2026-07-03 21:39:48 +02:00
Alex 5181f84648 fix(sni): prevent use-after-free and infinite retry in Host proxy retry
Store the retry timeout connection in a Host member and disconnect it in
~Host, so a Host destroyed within the retry window no longer invokes the
timeout callback on freed memory. Cap the retries (MAX_RETRIES) so a
watcher that never reappears no longer spins forever every 200ms; reset
the counter on success and when the watcher name vanishes.
2026-07-03 21:39:36 +02:00
Alex eff483de1f Merge remote-tracking branch 'origin/master' into fix/format-plugged-gt-format-full 2026-07-03 21:39:32 +02:00
Alexis Rouillard 0d3f393ae8 Merge pull request #5088 from cogwheel/cogwheel/fix-untitled
custom_modules: Fix mediaplayer.py handling untitled track
2026-07-03 21:39:13 +02:00
Alex 806f633318 hyprland/workspaces: refresh locally instead of reloading Hyprland config
Replace the getSocket1JsonReply("reload") call in onSpecialWorkspaceActivated
with the module's normal local refresh path: the state update to
m_activeSpecialWorkspaceName is picked up by the update() render (triggered by
the dp.emit() already issued at the end of onEvent), which re-evaluates active
state, icons and CSS classes. This avoids reloading the entire Hyprland config
on every special workspace activation while keeping the special-active icon and
CSS improvements.
2026-07-03 21:38:46 +02:00
Alexis Rouillard f682231bc4 Merge pull request #4744 from Sayrus/sayrus-gh/sway-workspaces-markup
fix(sway/workspaces): escape markup in workspace if enabled
2026-07-03 21:38:22 +02:00
Alex b41e57e35a Merge remote-tracking branch 'origin/master' into fix-wlr-taskbar-title-ellipsize 2026-07-03 21:38:21 +02:00
Alexis Rouillard ed2bafcc51 Merge pull request #4804 from BBaoVanC/fix-appearance-change-css-watching
fix: Watch new CSS files on appearance change
2026-07-03 21:38:13 +02:00
Alex 05dbcb24a0 Merge remote-tracking branch 'origin/master' into fix/sni-host-proxy-retry 2026-07-03 21:38:09 +02:00
Alex 9930c7be8a Merge remote-tracking branch 'origin/master' into hyprland-special-workspaces-multi-monitor 2026-07-03 21:37:55 +02:00
Alex dc017d8fd3 fix(hyprland/workspaces): disconnect hover-check timeout on Workspace destruction
The hover-check Glib::signal_timeout re-arms every 50ms and is not owned by
the Workspace. Since Workspaces are destroyed at runtime, a workspace removed
while its check is armed would let the timeout fire on freed memory (use-after-
free, also touching the destroyed m_button). Add a destructor that calls
stopHoverCheck() to disconnect the source.
2026-07-03 21:32:55 +02:00
Alex 987d5758a6 Merge remote-tracking branch 'origin/master' into fix/hyprland-workspace-taskbar-hover 2026-07-03 21:32:20 +02:00
Alexis Rouillard 544b2e9ba1 Merge branch 'master' into FixFormattingPowerMenuXML 2026-07-03 21:31:01 +02:00
Alexis Rouillard 778ef49efd Merge branch 'master' into sayrus-gh/sway-workspaces-markup 2026-07-03 21:30:59 +02:00
Alexis Rouillard 98e2e34536 Merge branch 'master' into master 2026-07-03 21:30:57 +02:00
Alexis Rouillard 6e24923f6d Merge branch 'master' into patch-1 2026-07-03 21:30:54 +02:00
Alexis Rouillard a02f943d8d Merge branch 'master' into fix-appearance-change-css-watching 2026-07-03 21:30:52 +02:00
Alexis Rouillard 3fdaa8d5f4 Merge branch 'master' into fix-4955 2026-07-03 21:30:49 +02:00
Alexis Rouillard b88ed8aa15 Merge branch 'master' into master 2026-07-03 21:30:46 +02:00
Alexis Rouillard 2f3cae621f Merge branch 'master' into openbsd 2026-07-03 21:30:44 +02:00
Alexis Rouillard 35d0c59bd9 Merge branch 'master' into cogwheel/fix-untitled 2026-07-03 21:30:41 +02:00
Alexis Rouillard 8b5f5b3aea Merge pull request #5155 from Alexays/fix/hyprland-language-keyboard-name-commas
fix(hyprland/language): handle commas in keyboard-name config
2026-07-03 21:23:06 +02:00
Alexis Rouillard 1f2394aa78 Merge pull request #3698 from vpcano/hyprland-language-tooltip
Add tooltip functionality on hyprland/language module
2026-07-03 21:20:16 +02:00
Alexis Rouillard 2ee3817b7a Merge pull request #4383 from stkth/stkth/fix-4241
Fix  bug #4241
2026-07-03 21:18:35 +02:00
Alexis Rouillard 093dbe7392 Merge pull request #2965 from jramrath/hyprland-window_no_title_from_special
hyprland/window: fix title not showing for windows in special workspaces
2026-07-03 21:18:32 +02:00
Alexis Rouillard 62cbfabeb8 Merge pull request #5009 from EvansJahja/charon77/battery_fix
battery: guard _exists = true assignment inside if condition
2026-07-03 21:18:29 +02:00
Alex 6793b97eed fix(hyprland/language): handle commas in keyboard-name config
The active-layout event payload is `KEYBOARDNAME,LAYOUT`, and kbName was
taken as everything before the first comma. Keyboard names reported by
Hyprland can themselves contain commas (e.g. some MSI keyboards), so a
`keyboard-name` configured with a comma never matched the truncated value
and the module stopped updating.

Match the configured keyboard-name as a full prefix (followed by the ','
separator) instead. Layout parsing already handles commas via the
last-comma-before-parenthesis heuristic, so only the keyboard-name filter
needed fixing.

Addresses the keyboard-name case originally reported by @tirsek in #3406.
2026-07-03 21:15:35 +02:00
Alex f158f29acf Merge remote-tracking branch 'origin/master' into hyprland-window_no_title_from_special
# Conflicts:
#	src/modules/hyprland/window.cpp
2026-07-03 21:06:18 +02:00
Alex 16c2ee7041 Merge remote-tracking branch 'origin/master' into charon77/battery_fix
# Conflicts:
#	src/modules/battery.cpp
2026-07-03 21:05:56 +02:00
Alex f739cb7f75 Merge remote-tracking branch 'origin/master' into stkth/fix-4241
# Conflicts:
#	src/modules/systemd_failed_units.cpp
2026-07-03 21:05:32 +02:00
Alex 6de8871882 Merge remote-tracking branch 'origin/master' into hyprland-language-tooltip
# Conflicts:
#	man/waybar-hyprland-language.5.scd
2026-07-03 21:01:53 +02:00
Alexis Rouillard c43f9f25b8 Merge pull request #5039 from mil-ad/fix/sway-language-flag-disappears
fix(sway/language): keep flag visible across hot-plug and unknown layouts
2026-07-03 21:00:52 +02:00
Alexis Rouillard fd81ff299e Merge pull request #4753 from The-Robin-Hood/master
hyprland/workspaces persistent fix and improve cursor handling configuration
2026-07-03 21:00:47 +02:00
Alexis Rouillard 63424a75ae Merge pull request #5064 from Siriusuna/fix/mpd-markup-truncation
fix(mpd): truncate before sanitization and improve tooltip UX
2026-07-03 21:00:03 +02:00
Alexis Rouillard 1143444561 Merge pull request #5061 from buzz/fix/hyprland-workspaces-scroll
fix(hyprland): support custom scroll commands
2026-07-03 20:59:12 +02:00
Alexis Rouillard c8bcbfb057 Merge pull request #5072 from Lege19/master
(Fix) (sway workspace module) persistent workspaces always removed
2026-07-03 20:59:05 +02:00
Alexis Rouillard fce96987e1 Merge pull request #5028 from JeremieRodon/fix/tray-hide-when-empty
fix(tray): hide module when no items are visible
2026-07-03 20:58:33 +02:00
Alexis Rouillard 1058bdf0bd Merge pull request #5062 from buzz/fix/hyprland-workspaces-taskbar-hover
fix(hyprland): replace EventBox with Button for taskbar window items
2026-07-03 20:58:26 +02:00
Alexis Rouillard ae636a1ca8 Merge pull request #4742 from Sayrus/sayrus-gh/sway-workspaces-quotes
fix(sway/workspaces): use number when available to avoid parsing issues
2026-07-03 20:55:14 +02:00
Alexis Rouillard f4648c0fcd Merge pull request #5046 from awused/mpd-duration
fix: mpd specify timer interval in seconds
2026-07-03 20:53:33 +02:00
Alexis Rouillard c77c60e0b6 Merge pull request #5138 from runxiyu/runxiyu
fix(sni): ignore name/pixmap updates for custom icons
2026-07-03 20:52:16 +02:00
Alexis Rouillard 6c6b69b862 Merge pull request #5114 from jaschiu/patch-3
fix(privacy): segfault due to use-after-free from get_children()
2026-07-03 20:52:12 +02:00
Alexis Rouillard 439261f0e3 Merge pull request #5112 from jaschiu/patch-2
fix(niri/workspaces): segfault when setting workspace button markup
2026-07-03 20:52:09 +02:00
Alexis Rouillard 2e0c34af5e Merge branch 'master' into fix/mpd-markup-truncation 2026-07-03 20:45:15 +02:00
Alexis Rouillard 8bedd8443d Merge branch 'master' into fix/sway-language-flag-disappears 2026-07-03 20:45:13 +02:00
Alexis Rouillard dfe2d80496 Merge branch 'master' into fix/tray-hide-when-empty 2026-07-03 20:45:10 +02:00
Alexis Rouillard 279aa67206 Merge branch 'master' into fix/hyprland-workspaces-scroll 2026-07-03 20:45:08 +02:00
Alexis Rouillard 5fce3926e0 Merge branch 'master' into master 2026-07-03 20:45:06 +02:00