Alexis Rouillard
71c6c6032b
Merge pull request #4133 from Roc25/persistent-only
...
Add persistent-only setting for hyprland/workspaces
2025-06-22 08:50:33 +01:00
Alex
286cff2e3d
fix: lint
2025-06-22 09:44:35 +02:00
Alexis Rouillard
6206cebd75
Merge pull request #3887 from torstehu/fix-typo
...
Fix typos in function, variable names and in documentation
2025-06-22 08:39:23 +01:00
gred
4f55d7da90
Add persistent-only setting for hyprland/workspaces
2025-05-20 23:00:09 +03:00
Corey Doughty
682492f7a9
This commit fixes #4023
2025-04-10 07:05:45 -04:00
Corey Doughty
633bf9e00f
Hyprland submap allow pango markup.
2025-04-10 06:56:00 -04:00
Austin Horstman
91ef6e51ed
hyprland/workspaces: range find lint cleanup
2025-04-03 23:31:18 -05:00
Austin Horstman
c5bc3bc59a
hyprland/workspaces: fix crash
2025-04-03 23:31:14 -05:00
Matthew White
f7b4451564
fix(hyprland): support additional v2 events
2025-03-04 10:23:19 -07:00
Matt White
17cee0d876
feat(hyprland): support workspacev2
2025-02-26 18:56:11 -07:00
Matt White
0c6ca8321c
feat(hyprland): support destroyworkspacev2
2025-02-26 18:56:11 -07:00
Matt White
26a344b131
feat(hyprland): support createworkspacev2
2025-02-26 18:56:11 -07:00
Alexis Rouillard
fe3dda4c23
Merge pull request #3932 from rokiden/fix-urgent-special
...
hyprland/workspaces: fixed urgent for special workspaces
2025-02-20 09:11:07 +01:00
Alexis Rouillard
0d8d42573b
Merge pull request #3945 from zjeffer/fix/zjeffer/hyprland-ipc
...
Hyprland IPC improvements
2025-02-20 09:10:26 +01:00
zjeffer
bcee548f5e
Fix workspacerules not taking into account defaultName
2025-02-20 00:06:05 +01:00
zjeffer
37c6cd42f5
fix freebsd compilation
2025-02-19 21:15:18 +01:00
zjeffer
a4989cedae
formatting
2025-02-19 21:02:59 +01:00
zjeffer
5b8839ab5c
Hyprland IPC improvements
...
Fixes IPC being blocked at shutdown
2025-02-19 20:45:47 +01:00
Denis Kazimirov
cc94278c4e
hyprland/workspaces: fixed urgent for special workspaces
2025-02-10 18:32:57 +05:00
Alexis Rouillard
c32d5e3883
Merge pull request #3898 from Duckulus/master
...
[hyprland/window] enable tooltip for hyprland window module
2025-02-05 11:44:28 +01:00
Alex
481b01d9af
fix: lint
2025-01-25 09:31:32 +01:00
Duckulus
ba12ca71c0
enable tooltip for hyprland window module
2025-01-22 18:39:50 +01:00
Torstein Husebø
6004316f1a
Fix typos in function, variable names and in documentation
2025-01-16 13:25:19 +01:00
DreamMaoMao
01ae117cfe
fix: hyprland/window get empty ipc json data
2024-12-14 21:02:10 +08:00
Aqa-Ib
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
Christian Fillion
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
Alex
6417782af6
chore: lint
2024-09-13 08:55:14 +02:00
Aleksei Bavshin
1f23b30b56
hyprland/backend: drop unnecessary getaddrinfo call
...
Hyprland hasn't been using TCP sockets for IPC since the first release,
so this getaddrinfo call and its result was never needed.
Additionally, it leaks the `aiRes`, causing test failure under ASan.
2024-08-17 22:32:17 -07:00
Austin Horstman
4295faa7c4
hyprland/backend: throw runtime_error instead of log
...
Allows us to disable modules entirely when socket connection isn't
working. This is similar to how sway handles their socket connections
disabling modules. This supports a single waybar config for multiple
IPCs.
2024-07-16 18:40:47 -05:00
Austin Horstman
b41fcdedff
hyprland/window: fix crash when no return from socket
...
Gracefully handle lack of response from the IPC. If socket isn't
available, we already log the IPC isn't running. We dont need to crash
program just because we couldn't get responses. We can just return an
empty object.
2024-07-15 09:02:27 -05:00
Austin Horstman
702e10649e
modules/hyprland/workspace: ignore empty window-rewrite
...
I'd like to ignore some windows from having icons or empty space taken
on the bar. By filtering out empty repr we can supply rewrite rules that
will ignore them from being processed and showing an empty space or
default icon.
2024-07-03 00:21:49 -05:00
Alexis Rouillard
ff0f408ab8
Merge pull request #3380 from alerque/debug-keyboard-layout
...
Add keyboard debug info to hyprland language module
2024-07-01 09:22:08 +02:00
Austin Horstman
c08660d837
modules/hyprland/backend: handle empty json responses
...
Fixes https://github.com/Alexays/Waybar/issues/3388
2024-06-28 13:18:44 -05:00
Austin Horstman
f6482c36dc
hyprland: clangd cleanup
2024-06-28 13:06:14 -05:00
Caleb Maclennan
4126502fe8
Add debug information for keyboard layout selection
2024-06-23 00:02:48 +03:00
Austin Horstman
f9e693b2a2
modules/hyprland/backend: remove testing log warn
2024-06-15 18:37:25 -05:00
Austin Horstman
bac4d03813
modules/hyprland/workspaces: remove deprecated property
2024-06-15 18:34:45 -05:00
Alex
0bc43c1aa7
fix: lint
2024-06-12 23:08:27 +02:00
Austin Horstman
959422f143
modules/hyprland/backend: protect against crash when XDG_RUNTIME_DIR not set
2024-06-09 10:18:20 -05:00
Austin Horstman
fa2e21dfd5
modules/hyprland/backend: move getSocketFolder to class
2024-06-09 10:18:20 -05:00
Austin Horstman
0055ee6910
modules/hyprland/workspaces: remove unneccesary visibleWorkspaces variable
2024-06-07 13:56:49 -05:00
Alexis Rouillard
9332697ec1
Merge pull request #3064 from alttabber/master
...
Hyprland/Workspaces: Added option to hide non-visible special workspaces
2024-05-29 10:23:26 +02:00
Austin Horstman
24e8766aaa
hyprland/backend: use /tmp
...
Was hardcoded to /tmp in previous versions
2024-05-28 11:00:20 -05:00
alttabber
29e3d8c371
Hide non-visible special workspaces
2024-05-28 17:45:01 +02:00
Austin Horstman
f5bb086460
hyprland/workspaces: sort methods
2024-05-24 14:41:59 -05:00
Austin Horstman
9ba9d57c8c
hyprland/windowcreationpayload: sort methods
2024-05-24 14:30:31 -05:00
Austin Horstman
82ae474002
hyprland/workspace: sort methods
2024-05-24 14:29:03 -05:00
Austin Horstman
56319a4705
hyprland/workspaces: break up implementations
2024-05-24 14:21:31 -05:00
Austin Horstman
d73051e980
hyprland/workspaces: break up doUpdate
2024-05-24 14:21:31 -05:00
Austin Horstman
9fe51af6b0
hyprland/workspaces: break up parseConfig
2024-05-24 14:21:31 -05:00