Commit Graph
1058 Commits
Author SHA1 Message Date
vawvaw 5b595a4dfe hyprland/workspaces: Add enable-bar-scroll option 2026-02-13 20:48:59 +01:00
Sami Liedes a70651ed05 fix: use SafeSignal in ipc 2026-02-12 18:11:30 +01:00
Tobias BroxandClaude Opus 4.6 13469a8847 fix(keyboard-state): fix segfault on device hotplug
The keyboard-state module crashes with SIGSEGV in libinput_device_ref
when a new input device appears in /dev/input/.

Three bugs fixed:

1. Missing NULL check: tryAddDevice() calls libinput_path_add_device()
   which returns NULL on failure, then immediately passes the result to
   libinput_device_ref() without checking.  On laptops, virtual input
   devices (power buttons, lid switch, etc.) appear and disappear in
   /dev/input/ triggering the hotplug handler; if libinput can't open
   one of these, the NULL return causes the segfault.

2. Missing cleanup on device removal: The IN_DELETE handler erased
   devices from the map without calling libinput_path_remove_device(),
   leaving dangling pointers in the libinput context.

3. Thread safety: libinput_devices_ was accessed from 3 threads
   (main/GTK, libinput_thread_, hotplug_thread_) without any mutex.

Fixes #4851

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:57:23 +01:00
BlueManCZ a871d90161 Fix button action handling to consistently use the active player 2026-02-11 12:09:20 +01:00
Hannes Braun f373ebfcbb Fix include of poll.h 2026-02-08 13:32:41 +01:00
anton 3655d73525 Ignore Tray entries by service name and when dbus properties load 2026-02-08 00:44:14 +00:00
szbmrk 2475052326 Merge branch 'master' into feat-hyprland-submap-icon-handling 2026-02-04 12:38:49 +01:00
szbmrk ca0b068ad8 feat(disk)!: handle multiple disks at once 2026-02-04 12:34:32 +01:00
copilot-swe-agent[bot]andAlexays 330c77c87a Fix thread safety in Hyprland modules to prevent corrupted double-linked list crash
- Move GTK operations from IPC thread to GTK main thread in Window module
- Move GTK operations from IPC thread to GTK main thread in WindowCount module
- Move GTK style class operations from IPC thread to GTK main thread in Submap module
- Language and Workspaces modules already safe (only update internal state)

Co-authored-by: Alexays <13947260+Alexays@users.noreply.github.com>
2026-02-04 08:54:36 +00:00
Alex 47fb21a2c1 chore: upgrade to clang-format@21 2026-02-04 09:24:14 +01:00
szbmrk c38024bdec feat(hyprland/submap): add config option to specify different icons for submaps 2026-01-15 00:29:49 +01:00
Benji-clm 7f63a905a1 feat(battery): add option to smooth power for more stable time_remaining estimates 2026-01-09 13:02:28 +00:00
Aksel Lunde Aase 5870c4ba0e feat(clock): Add action to execute external command 2026-01-09 13:26:27 +01:00
Mathis Raguin da4367df2f fix(sway/workspaces): use number when available to avoid parsing issues 2025-12-31 15:40:31 +01:00
Mathis Raguin 0a5da13fbf fix(workspaces/sway): handle workspaces with quotes 2025-12-31 15:28:10 +01:00
Xavier Ruiz e3186abdce fix(cava): handle all output methods in frontend
Default to raw Cava module for non-GLSL output methods.
Fixes "Unknown module" error when no cava_config is specified.
2025-12-27 14:52:28 -05:00
Alexis Rouillard c3d29b1185 Merge branch 'master' into battery-plugging-instant-updates 2025-12-18 19:04:31 +01:00
Alexis Rouillard 11c4e55376 Merge pull request #4591 from rrrnld/fix/multiple-batteries
Improve multiple battery support
2025-12-18 19:02:31 +01:00
Viktar Lukashonak e03119fe94 Factory. cava_frontend 2025-12-09 18:13:45 +03:00
Viktar Lukashonak 3773021546 cavaGLSL 2025-12-07 23:08:55 +03:00
Raphael Kimmig 85a8fca0de feat: allow sorting niri workspaces 2025-12-07 12:18:24 +01:00
Viktar Lukashonak 52f4db1154 Moving GTK dispatcher into frontend 2025-12-05 10:04:52 +03:00
Viktar Lukashonak 13519ca5bf cava. nonsafe thread.= & cava bump 2025-11-26 13:26:32 +03:00
schmop ce1da5a178 Make udev_deleter not linux-only and fix freebsd build 2025-11-01 10:57:18 +01:00
schmop 4e25871655 Reapply "Make battery module update on plugging/unplugging again (refs #2519)"
This reverts commit bb2c67ebad.
2025-10-31 13:43:36 +01:00
arne ca62481dc9 fix: default weighted average to true 2025-10-26 06:44:53 +01:00
guttermonk 26922c7fbc Update idle_inhibitor.hpp 2025-10-17 20:07:28 -05:00
guttermonk 3e2ea1a870 fixed the type declarations 2025-10-17 19:58:43 -05:00
guttermonk d68f168e09 fixed the compilation error 2025-10-17 19:50:38 -05:00
guttermonk 173e7306d0 fix using the ext-idle-notify-v1 protocol 2025-10-17 19:42:53 -05:00
guttermonk c831a352f2 Added signal support and wait-for-activity bool. 2025-10-17 18:11:50 -05:00
hecate cantus 72e6151f5e Merge branch 'Alexays:master' into master 2025-10-16 18:40:58 -07:00
winkelnp 644a357541 [wireplumber] Add support for device.form-factor 2025-10-13 23:27:45 +02:00
Viktar Lukashonak 966da11f3b cava bump & fixing memory leaks 2025-10-12 14:53:49 +03:00
dimti a36a5e89a9 Approach to dry pattern - separate remove/add css-classes logic to methods 2025-10-10 11:57:44 +03:00
dimti bdf501a8a5 make getLayout is not static and set css classes for short name keyboard layout in getLayout method 2025-10-10 11:35:47 +03:00
lilly-lizard 408a87fe89 Merge branch 'master' into river-tags-monitor-focus 2025-10-09 17:16:33 +13:00
Alex 559079e9a6 fix: lint
clang-format / lint (push) Has been cancelled
freebsd / build (push) Has been cancelled
linux / build (c++20, alpine) (push) Has been cancelled
linux / build (c++20, archlinux) (push) Has been cancelled
linux / build (c++20, debian) (push) Has been cancelled
linux / build (c++20, fedora) (push) Has been cancelled
linux / build (c++20, gentoo) (push) Has been cancelled
linux / build (c++20, opensuse) (push) Has been cancelled
Nix-Tests / nix-flake-check (push) Has been cancelled
2025-10-05 10:56:24 +02:00
Alexis Rouillard a16d53b30d Merge branch 'master' into fix/zjeffer/thread-sanitizer-warning 2025-10-05 10:51:47 +02:00
Alexis Rouillard 18a9835b7c Merge pull request #4246 from edeustua/master
feat: Add ISO 8601 calendar to clock module
2025-10-01 14:29:37 +02:00
Alexis Rouillard 9dd75d4f6b Merge pull request #4507 from workflow/niri-language-add-css-classes
feat(niri/language): add CSS classes
2025-10-01 14:27:35 +02:00
Alexis Rouillard 4f16ec16f9 Merge pull request #4395 from pol-rivero/workspace-taskbar-improvements
[hyprland/workspaces] Taskbar improvements
2025-10-01 14:27:13 +02:00
Alexis Rouillard c7a77f2c08 Merge pull request #4390 from aidansunbury/master
Support millisecond precision for script intervals
2025-10-01 14:22:17 +02:00
Alexis Rouillard a15565ac48 Merge pull request #4408 from lfos/fix-hyprland-ipc-destructor
Prevent child zombie process from tearing down Hyprland IPC
2025-10-01 14:21:17 +02:00
Alexis Rouillard 97f1e54b70 Merge pull request #4447 from guttermonk/clock-fix
Clock Module: Independent clock tooltip formatting and fix for blank line at the end of the timezone list
2025-10-01 14:18:28 +02:00
Alexis Rouillard d3b094503e Merge pull request #4493 from LukashonakV/cava_backend
Cava backend. Comminication using signals
2025-10-01 14:16:51 +02:00
Alexis Rouillard fbec045492 Merge pull request #4437 from jp7677/ext-workspaces-remove-dirty-tracking
ext/workspaces: fix appearing of hidden workspaces
2025-10-01 14:16:03 +02:00
Alexis Rouillard 8bb19a9505 Merge pull request #4474 from LordMZTE/river-vacant-startup
fix(river): hide vacant tags on initial startup
2025-10-01 14:14:54 +02:00
Pol Rivero 5f1db15c2e Workspaces containing only ignored windows should be considered empty
This fixes #4479
2025-10-01 08:06:11 +02:00
workflow 862ba2f568 feat(niri/language): add CSS classes 2025-09-29 17:43:23 +03:00