7b854112ed
workspace taskbars: Allow custom command on window click
2025-01-27 11:46:35 +01:00
b4519c0819
workspace taskbars: Use sigc::mem_fun instead of lambda
2025-01-27 11:46:35 +01:00
e0f3695523
workspace taskbars: Minor fixes
...
- Add missing CSS class to manpage
- Fix rare segfault when address is not found (seems to only happen when compiled for production)
2025-01-27 11:46:35 +01:00
5ee0d1c7fe
workspace taskbars: Fix windows not showing
...
Windows were not being shown or updated unless the window-rewrite config were present.
2025-01-27 11:46:35 +01:00
3948c0d154
workspace taskbars: Focus window on click
2025-01-27 11:46:35 +01:00
53ca5a4883
workspace taskbars: Display windows in a consistent order
...
Use a vector instead of a map for for storing the workspace windows.
This orders the windows by the time they were added to the workspace, instead of sorting by address (which is effectively a random order). The new ordering seems to match the wlr/taskbar module
2025-01-27 11:46:35 +01:00
e1649b001f
workspace taskbars: Fix title not updating
...
Fix another older bug where the title of a window will not be updated after moving it to another monitor.
In onWindowMoved, when moving an orphan window to the display of the current bar, that window should no longer be an orphan.
2025-01-27 11:46:35 +01:00
5e1d6d1cc5
workspace taskbars: Fix title not updating
...
This seems to be an old bug that has been made visible with the new workspace taskbars feature.
Sometimes, when closing a window and re-opening a window of the same program, hyprland reuses the window address. Since m_orphanWindowMap was not being cleaned up on window close, the new window would not be updated properly.
2025-01-27 11:46:35 +01:00
fdb9004048
workspace taskbars: More config options
...
- orientation
- icon-size
- icon-theme
2025-01-27 11:46:35 +01:00
1c07ca0099
workspace taskbars: Add config parsing
...
Use format from config instead of hardcoding
2025-01-27 11:46:35 +01:00
69e2e249a6
Initial implementation of workspace taskbars
...
Add a list of window titles and icons to each workspace (like wlr/taskbar but grouped by workspace).
Only implemented on hyprland for now.
2025-01-27 11:46:35 +01:00
bc2e143ac5
Extract icon loading logic to separate class
2025-01-27 11:46:35 +01:00
481b01d9af
fix: lint
2025-01-25 09:31:32 +01:00
bb2c67ebad
Revert "Make battery module update on plugging/unplugging again (refs #2519 )"
2025-01-25 09:24:48 +01:00
dc64b3542b
Merge pull request #3474 from schmop/battery-plugging-instant-updates
...
Make battery module update on plugging/unplugging again (refs #2519 )
2025-01-25 09:20:02 +01:00
a4241d7008
Merge pull request #3823 from thetwistedlogic/feature/river-hide-vacant
...
Hide vacant tags config option on River
2025-01-12 11:32:45 +01:00
0992bf1b87
Escape tray tooltip text
...
Fix errors when the tooltip set by the tray apps contains markup characters
2025-01-10 16:41:33 +01:00
6a29abb49e
fix: never sleep cava when sleep_timer is 0
2025-01-10 15:27:41 +07:00
5346649fc6
Merge pull request #3827 from pope/master
...
Escape markup characters in dwl/window
2024-12-26 09:37:00 +01:00
6ce881abd5
Merge pull request #3826 from DreamMaoMao/fix-hyprland-window-crash
...
fix: hyprland/window get empty ipc json data
2024-12-26 09:36:33 +01:00
8e276bb3f6
sway: fix "Mapping is not an object" warning
...
Fixes #3763 .
Also a little code simplications while we're at it.
2024-12-17 22:05:16 +00:00
157ea44510
Escape markup characters in dwl/window
...
Without this, markup characters like [&><] will be injected directly
into the Label. Escaping them makes sure that the values will be printed
exactly as they appear in the window title or layout symbol.
Signed-off-by: K. Adam Christensen <pope@shifteleven.com >
2024-12-14 09:06:13 -08:00
01ae117cfe
fix: hyprland/window get empty ipc json data
2024-12-14 21:02:10 +08:00
8e0964ad15
feat: is visible and urgent checks as well
2024-12-12 10:11:11 -04:00
8024df0430
fix: edge case where tags get hidden after all views are killed
...
This fixes an edge case where focused tags would get hidden if all
clients on a tag get killed
2024-12-11 22:50:01 -04:00
43af1b9ea0
feat: implement hide vacant for river
2024-12-11 22:18:00 -04:00
758c14c5d8
Merge pull request #3801 from majutsushi/sway-workspaces-x11-class
...
sway/workspaces: use X11 class for XWayland windows
2024-12-07 09:55:57 +01:00
db943dae98
Let network module handle ipv4 and ipv6 simultaneously
2024-12-05 15:31:40 +01:00
4e05659109
sway/workspaces: use X11 class for XWayland windows
...
When using `window-rewrite`, the `class<>` rule would previously only
match against the `app_id` of a window. However, XWayland windows don't
have an app ID.
This change falls back to checking the `class` window property if there
is no app ID to support matching against XWayland windows.
2024-12-01 12:48:07 +13:00
1e481b7ac0
fix broken clang-format to run pipeline
2024-11-20 00:00:51 +01:00
77b50b4c7a
fix hyprland's grouped window flags
...
Both flags are wrong, because:
- the active group member can be fullscreened.
- technically, a grouped window can be solo as well, because only the active group member is shown, the other members are hidden. Also you can have a group consisting of only one window.
2024-11-06 13:07:09 +00:00
5f260516af
Merge pull request #3674 from PassiHD2004/master
...
Add warning threshold to temperature module
2024-10-25 08:52:44 +02:00
92242f0b9d
hyprland: fix a data race at startup between sockets 1 and 2
...
`Workspaces::*` and `IPC::startIPC` may both call `getSocketFolder` at the same time.
This randomly causes crashes and/or corruption of the socket path.
Typical crash A:
[2024-10-16 07:42:09.987] [info] Hyprland IPC starting
malloc(): unaligned tcache chunk detected
[2024-10-16 07:42:09.987] [error] Hyprland IPC: Unable to connect?
Thread 1 "waybar" received signal SIGABRT, Aborted.
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
(omitted for brievety)
#9 0x00007ffff64ae745 in operator new (sz=sz@entry=296) at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/new_op.cc:50
#10 0x00007ffff65ab1f1 in std::filesystem::__cxx11::path::_List::_Impl::copy (this=0x555555a23350) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++17/fs_path.cc:249
#11 0x00007ffff65ab3bd in std::filesystem::__cxx11::path::_List::_List (this=0x7fffffff9d30, other=<optimized out>) at /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:454
#12 0x00005555556f4ab1 in waybar::modules::hyprland::IPC::getSocket1Reply(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#13 0x00005555556f5e3d in waybar::modules::hyprland::IPC::getSocket1JsonReply(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#14 0x000055555571289c in waybar::modules::hyprland::Workspaces::setCurrentMonitorId() ()
Typical crash B:
[2024-10-16 10:01:15.859] [info] Hyprland IPC starting
[2024-10-16 10:01:15.859] [info] Loading persistent workspaces from Hyprland workspace rules
Thread 8 "waybar" received signal SIGSEGV, Segmentation fault.
(gdb) bt
#0 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy
(__d=0x5555558fbca8 "/", __s=0x2973961a26d35726 <error: Cannot access memory at address 0x2973961a26d35726>, __n=1)
at /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:433
(omitted for brievety)
#15 waybar::modules::hyprland::IPC::getSocketFolder[abi:cxx11](char const*)
(instanceSig=0x7fffffffe604 "4520b30d498daca8079365bdb909a8dea38e8d55_1729051218_1982280648") at ../src/modules/hyprland/backend.cpp:41
#16 0x000055555564230f in waybar::modules::hyprland::IPC::startIPC()::{lambda()#1}::operator()() const ()
at ../src/modules/hyprland/backend.cpp:70
#17 0x00007ffff64e1c34 in std::execute_native_thread_routine (__p=0x5555558119c0) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#18 0x00007ffff62a339d in start_thread (arg=<optimized out>) at pthread_create.c:447
2024-10-17 06:46:07 -04:00
6df26ccba7
feat: add warning threshold to temperature module
...
Signed-off-by: PassiHD <passihd@phoenixts.eu >
2024-10-09 20:22:58 +02:00
d684a6de21
Backlight: Set default to 0 to prevent breaking existing setups
2024-09-25 16:37:21 +02:00
04bda9f443
Backlight: Add minimum brightness
...
As currently it is possible to turn the brightness to zero which may not
be desirable, this patch add a configurable brightness check.
2024-09-25 06:24:03 +02:00
b4e97eb2f4
FreeBSD format fix
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com >
2024-09-23 16:06:50 +03:00
773b1d4806
Default value for cldYearShift_ = 1900/01/01
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com >
2024-09-23 15:51:01 +03:00
21af48fdc9
chore: lint
2024-09-19 17:31:07 +02:00
3462769fc1
Merge branch 'Alexays:master' into master
2024-09-19 14:45:33 +00:00
a3e7031fe2
Fix formatting
2024-09-18 17:30:55 +02:00
254111ff91
Improve error message for mixed arg indexing in format string
2024-09-18 17:28:58 +02:00
83992d29a0
Fix formatting
2024-09-17 00:39:33 +02:00
3bb3c2d23f
fix(custom): stop mixing manual and automatic arg indexing
...
The current documentation for the custom module suggests mixing manual
(`{icon}`) and automatic (`{}`) indexing of format args. Newer versions
of the fmt library seem to not support this anymore (see issue #3605 ).
This commit introduces a name for the `text` output of the script, so
that `{text}` can now be used instead of `{}` in the configuration.
2024-09-17 00:13:23 +02:00
9e8ebe668d
Merge branch 'Alexays:master' into master
2024-09-16 17:11:32 +00:00
0006e4713a
fix(tray): revert ustring formatting changes
...
This reverts commit a4d31ab10d
.
2024-09-14 07:38:41 -07:00
8e2a742042
Merge branch 'Alexays:master' into master
2024-09-13 11:31:22 +00:00
1142979581
chore: lint
2024-09-13 09:43:19 +02:00
8a89706d03
Merge pull request #3551 from YaLTeR/niri
...
Add niri/workspaces, niri/window, niri/language
2024-09-13 09:41:52 +02:00
a4d31ab10d
fix: sni item fmt
2024-09-13 09:40:35 +02:00