Aleksei Bavshin
614b20d073
refactor: move all module includes to factory.cpp
...
None of these includes are required in the header.
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2024-02-22 21:43:50 +03:00
Viktar Lukashonak
ddacc47709
AModule migration
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2024-02-22 21:06:41 +03:00
Aleksei Bavshin
b32abf9966
refactor: merge BarSurface into Bar
...
With only one implementation left, the abstraction is no longer
necessary.
2024-02-19 23:02:47 +03:00
Aleksei Bavshin
2469851865
fix(bar): use std::string for mode names
...
`string_view` leads to UAF when reading custom mode definitions from the
configuration.
2024-02-19 22:47:25 +03:00
Aleksei Bavshin
a6d33db20f
feat: add `module` class to the root elements of the modules
...
Previously, the only way to select all the module labels was with the
following kind of selector:
```css
.modules-left > widget > label,
.modules-center > widget > label,
.modules-right > widget > label {
/* ... */
}
```
(and a matching block for the `box` containers).
Now, this can be expressed as
```css
label.module, box.module {
/* ... */
}
```
2024-02-19 22:26:05 +03:00
Aleksei Bavshin
5a4a1a5595
refactor(bar): use Gtk enums for position and orientation
...
Ensure that the position and the corresponding CSS class on window are
always set.
2024-02-19 22:24:08 +03:00
Aleksei Bavshin
d6d164a27d
feat!: drop RawSurfaceImpl with direct use of wlr-layer-shell
...
BREAKING CHANGE: gtk-layer-shell is now required and unconditionally
used. The corresponding config option is removed.
As a part of preparation for future versions of GTK, remove an ability
to use wlr-layer-shell directly. The APIs it required were dropped in
GTK4, and with the menus/tooltips positioning issue being practically
unsolvable it doesn't make sense to keep maintaining the code.
2024-02-17 22:00:38 +03:00
Alex
d5bc2f3335
Merge remote-tracking branch 'luka/gtk4' into gtk4
2024-01-12 10:06:47 +01:00
Alexis Rouillard
f744d906be
Merge pull request #2820 from oxalica/feat/systemd-failed-units
...
Add module systemd-failed-units to monitor failed systemd units
2024-01-12 09:45:40 +01:00
oxalica
eedd1f8e6a
Add module systemd-failed-units
2024-01-09 18:19:30 +08:00
Brenno Lemos
4339030c9d
feat: fetch clients data when moving workspaces accross monitors
2024-01-08 20:11:39 -03:00
Brenno Lemos
512c6fb127
feat: add orphan windows attribute to workspaces
...
this attribute will keep every window that doesn't have an associated
workspace in the current bar
2024-01-08 18:30:53 -03:00
Viktar Lukashonak
f8eb01def2
Clean code
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2024-01-08 22:48:57 +03:00
Viktar Lukashonak
4a88cb693a
GTK4 base compilation
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2024-01-08 19:03:42 +03:00
yangyingchao
bdd7271da9
Improvements for Hyprland backend
...
1. Fix warnings reported by clang tidy
2. Use unique lock instead of manully lock/unlock on mutex.
The RAII style locking makes sure mutex is unlocked when exceptions are thrown
2024-01-08 09:26:16 +08:00
yangyingchao
a34e3ccc86
Improvements for Hyprland workspace
...
1. Utilize `m_mutex` to safeguard member fields of `hyprland::Workspaces` as they are modified by multiple threads, including the event listener thread and UI thread. This applies to all member fields, not just `m_workspacesToCreate`.
2. Tidy up the create/remove workspace code.
2024-01-08 09:14:36 +08:00
Jo De Boeck
0ea5143493
Pass WAYBAR_OUTPUT_NAME environment variable to custom exec scripts
...
Signed-off-by: Jo De Boeck <deboeck.jo@gmail.com>
2023-12-19 22:54:12 +02:00
Alexis Rouillard
f5370fcff5
Merge pull request #2573 from CromFr/cabi_plugins
...
C ABI plugin system
2023-12-18 14:10:02 +01:00
zjeffer
4d5b715dc4
applied clang-tidy suggestions for hyprland workspaces
2023-12-06 21:58:26 +01:00
czadowanie
2334faa7fd
upower: show-icon config option
2023-11-28 19:39:08 +01:00
Viktar Lukashonak
86a38980e4
c++20. clock chrono API. STL + format
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-11-10 17:57:26 +03:00
Alexis Rouillard
e24adbc3c2
Merge pull request #2612 from ErikReider/privacy-module
...
Add Privacy Module
2023-11-06 09:42:35 +01:00
Erik Reider
6050fa3a43
Added documentation
2023-11-04 15:16:13 +01:00
Erik Reider
ca7c9a68f1
Made creation of privacy modules more modular
2023-11-04 14:05:01 +01:00
Alex
e7c2e90236
Revert "custom: reap zombie processes on termination"
...
This reverts commit 1c1a39f597
.
2023-11-03 14:06:50 +01:00
André Silva
1c1a39f597
custom: reap zombie processes on termination
2023-11-02 01:57:55 +00:00
Viktar Lukashonak
9012cebbf2
Happy Linter
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-10-31 23:31:58 +03:00
Alexis Rouillard
6425bd2fe0
Merge pull request #2623 from LukashonakV/cavaBump
2023-10-31 21:13:52 +01:00
Viktar Lukashonak
e9a66d68b7
Fix debug mode. cava issue
...
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-10-31 20:27:00 +03:00
Erik Reider
49caa4bf31
Add the PrivacyNodeInfo object as pw_proxy data
2023-10-31 11:38:01 +01:00
Erik Reider
c60a8e9836
free pipewire listeners on proxy destruction
2023-10-31 08:52:54 +01:00
Erik Reider
c4226f3745
Readded signal_timeout instead of map to fix indicator being stuck
2023-10-30 18:01:47 +01:00
Erik Reider
d32da917e4
Added tooltips
2023-10-29 00:17:53 +02:00
Erik Reider
46e36c0e68
Simplified the privacy_item hiding/showing logic
2023-10-28 18:30:50 +02:00
Erik Reider
4a4c888d7d
Fixed linter complaining
2023-10-27 00:01:40 +02:00
Erik Reider
e73ea8d608
Fixed cases where the module would be hidden when it should be visible
2023-10-26 23:37:10 +02:00
Erik Reider
f7224d8459
Initial implementation
2023-10-26 23:22:02 +02:00
Crom (Thibaut CHARLES)
02c64f3f1e
Moved all waybar info into a single struct
2023-10-24 20:16:50 +02:00
Crom (Thibaut CHARLES)
d86059016e
Send update dispatcher though FFI
2023-10-24 20:16:50 +02:00
Crom (Thibaut CHARLES)
088ca6b963
Added cffi/* module for third-party advanced modules
2023-10-24 20:16:50 +02:00
Crom (Thibaut CHARLES)
6ae354f564
PoC
2023-10-24 20:16:23 +02:00
Tamino Bauknecht
68dfd6aa3a
scope_guard/modules: Rename scope_guard to ScopeGuard
...
Using pascal case for the class name keeps it more consistent with the
majority of the other class names.
2023-10-24 17:51:38 +02:00
Tamino Bauknecht
dd1de3efbf
Revert "Revert "Fix potential memory leaks""
...
This reverts commit 2d33c20231
and
reapplies various patches for memory leaks.
The reason for the revert was a bug for a maximum duration interval
which caused sleep_for() to cause unpredictable behavior.
2023-10-24 17:51:38 +02:00
Tamino Bauknecht
521dac8086
sleeper_thread: Make sleep_for more robust
...
In the previous fix for a passed max duration, the assumption was made
that at maximum one second will pass between the duration assignment and
the std::condition_variable::sleep_for() call.
This implementation makes the behavior more predictable by using
sleep_until() instead to emulate the sleep_for() behavior.
2023-10-24 17:51:34 +02:00
Tamino Bauknecht
ad7d4eb07d
sleeper_thread: Allow sleep_for with max duration
...
The standard library has the implicit requirement that for
std::condition_variable::sleep_for() the duration must not cause an
overflow if added to the current time.
This commit will reduce the duration accordingly to fit into the
duration type.
2023-10-24 17:44:35 +02:00
Alexis Rouillard
f2085fcd92
Merge pull request #2592 from zjeffer/hyprland/workspaces
...
General cleanup in hyprland/workspaces
2023-10-23 08:45:52 +02:00
Alexis Rouillard
2d33c20231
Revert "Fix potential memory leaks"
2023-10-22 09:44:46 +02:00
zjeffer
dab1493644
cleanup onEvent, dont use try/catch for flow control
2023-10-21 19:33:55 +02:00
zjeffer
2d614c68f5
code review
2023-10-21 18:15:22 +02:00
zjeffer
ed65d9cdbd
General cleanup in hyprland/workspaces
2023-10-21 16:52:23 +02:00