Tamino Bauknecht
a0b63d6b1e
modules: use scope_exit for deletion to make code more robust
2023-10-21 11:51:18 +02:00
Tamino Bauknecht
89e85db790
ALabel: make use of std::chrono::max() instead of magic number
2023-10-21 11:50:38 +02:00
Tamino Bauknecht
a73669be6a
modules/upower: use smart pointer to avoid memory leak
2023-10-21 11:50:28 +02:00
Alexis Rouillard
eefd6e8336
Merge pull request #2578 from Syndelis/fix/hyprland-windows-disappearing
2023-10-20 10:24:56 +02:00
Davide Galassi
6829ed1bb4
Different interfaces have different index
2023-10-20 08:25:28 +02:00
Brenno Lemos
7d5577a2ed
feat: create persistent workspaces after regular ones at init
...
feat: avoid recreating duplicate workspaces
2023-10-19 21:29:38 -03:00
Brenno Lemos
a41225c4e0
Revert "fix: fill persistent workspaces' windows at init"
...
This reverts commit e14a3b8687
.
2023-10-19 21:23:00 -03:00
Brenno Lemos
a0d2d95b41
chore: remove unused function
2023-10-19 21:21:55 -03:00
Brenno Lemos
e14a3b8687
fix: fill persistent workspaces' windows at init
2023-10-19 21:19:08 -03:00
Brenno Lemos
846842be80
feat: emit dispatcher when any window is created during update
2023-10-19 10:45:00 -03:00
Brenno Lemos
e845db84ad
feat: avoid recreating workspaces
2023-10-18 19:11:49 -03:00
Brenno Lemos
193040c41e
feat: attempt to move windows out of the create window payload before taking them from workspaces
2023-10-18 19:11:49 -03:00
Alex
871f9a1269
fix: revert clock
2023-10-18 08:45:56 +02:00
Alex
5319cb6e10
fix: upower hidded on start
2023-10-17 20:12:24 +02:00
Alex
208928ded5
fix: lint
2023-10-17 19:29:06 +02:00
Alexis Rouillard
4d7eb3bd15
Merge pull request #2515 from chrisjshore/clock_fix
...
fix clock to work with fmt 10.x
2023-10-17 19:25:58 +02:00
Alexis Rouillard
6b73e2aa58
Merge pull request #2114 from mmhat/split-cpu-module
...
Split cpu module
2023-10-17 19:25:29 +02:00
Brenno Lemos
6ddd283d0f
fix: special workspaces weren't registering windows because of the special qualifier prefix
2023-10-16 20:48:52 -03:00
Brenno Lemos
e70a67d958
chore: lint
...
chore: swap push_back to emplace_back
2023-10-16 19:14:50 -03:00
Brenno Lemos
67c0c9a66c
fix: delay window creation to await for hyprland to create a workspace
2023-10-16 19:07:00 -03:00
Brenno Lemos
ecbcf242d5
feat: allow unmuting by moving the pulseaudio slider
2023-10-15 17:52:12 -03:00
Brenno Lemos
fd3710d869
chore: suppress compiler warning
2023-10-15 17:52:12 -03:00
Brenno Lemos
11d7ca1d73
feat: backlight slider
2023-10-15 17:52:12 -03:00
Brenno Lemos
c3779dd16e
refactor: move backlight backend out of backlight module
2023-10-15 17:52:12 -03:00
Brenno Lemos
442a4b0da0
feat: pulseaudio slider module
2023-10-15 17:52:12 -03:00
Brenno Lemos
c9e129cda2
feat: allow setting volume directly
2023-10-15 17:52:12 -03:00
Brenno Lemos
64d7fae03a
refactor: move pulseaudio handling to separate class
2023-10-15 17:52:12 -03:00
Alexis Rouillard
44d8245605
Merge pull request #2560 from akshettrj/mpris-click-fix
2023-10-15 21:26:33 +02:00
Alexis Rouillard
93daf089b5
Merge pull request #2574 from Syndelis/feat/group-drawers
2023-10-15 21:26:04 +02:00
Alexis Rouillard
7645ae1907
Merge pull request #2563 from Syndelis/feat/hyprland-window-rename-by-title
2023-10-15 21:21:32 +02:00
Alexis Rouillard
3d496c2200
Merge pull request #2554 from mutoroglin/cava-hide-on-silence
2023-10-15 21:19:17 +02:00
Brenno Lemos
05b97e9ec2
fix: add hover handler to every element in the group drawer
2023-10-14 22:13:01 -03:00
Brenno Lemos
5a380da3bb
chore: remove redundant else statement
2023-10-14 18:39:42 -03:00
Brenno Lemos
5e44cb6ba2
refactor: move signal handler adding into separate method
...
fix: typo in handleMouseHover method name
2023-10-14 18:30:27 -03:00
Brenno Lemos
fad858782c
feat: improve drawer configuration
2023-10-14 18:24:50 -03:00
Brenno Lemos
5246ab15cb
feat: add drawer bool option to group
2023-10-14 17:17:52 -03:00
Brenno Lemos
bbb7fb0c82
refactor: don't use a group's box directly in bar
2023-10-14 13:23:11 -03:00
Brenno Lemos
ee652677a6
feat: ignore windows with empty classes or titles (if any rule uses title)
2023-10-11 11:40:49 -03:00
Brenno Lemos
c995bafa7a
feat: add option to ignore workspaces based on regex
2023-10-11 10:59:33 -03:00
Brenno Lemos
f8340d88be
chore: lint unrelated file
...
this file was edited in #2558 but not linted
2023-10-09 15:26:07 -03:00
Brenno Lemos
f9a7ecf3a9
feat: optimize cache usage when window titles aren't involved
2023-10-09 14:49:38 -03:00
Brenno Lemos
fad43d4b16
feat: listen to windowtitle IPC event condiationally to update window rules
2023-10-09 14:42:53 -03:00
Brenno Lemos
8d057e6f96
refactor: separate regex rule matching and caching in separate class
2023-10-09 13:53:00 -03:00
Akshett Rai Jindal
1af02e0a67
fix(modules/mpris): fix on-*-click typos
...
In all other places, the norm is to use `on-click-(middle|right)` but in
the mpris module, `on-(middle|right)-click` was being used which caused
clicks to malfunction if set to some custom commands
2023-10-09 11:48:49 +05:30
SWarrener
c16e791cdc
Adding options to allow disk outputs to always be in a specific unit
2023-10-08 16:24:50 +01:00
Christopher Shore
fbd62e0071
Merge branch 'Alexays:master' into clock_fix
2023-10-07 18:39:56 -04:00
Joerg Weislogel
1eb0777799
add function to cava module to hide on silence
2023-10-07 12:50:24 +02:00
Alexis Rouillard
58e506a675
Merge pull request #2529 from Syndelis/feat/hyprland-window-workspaces
...
Feature: Hyprland dynamic window names on workspaces
2023-10-02 19:17:42 +02:00
Brenno Lemos
1b98a04c93
chore: lint unrelated files so the CI passes
2023-10-02 12:33:28 -03:00
Alexis Rouillard
4c0347d9f2
Merge pull request #2540 from Syndelis/fix/hyprland-special-workspaces
2023-09-25 22:33:36 +02:00
Brenno Lemos
9a3238c20b
chore: avoid the creation and deletion of doubled-special workspaces
...
see hyprwm/Hyprland#3424 for more info
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-25 17:13:26 -03:00
Brenno Lemos
6e48b236a1
fix: workspace special wasn't removed
...
fixes #2505
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-25 17:12:51 -03:00
woojiq
d37954322a
fix(hyprland): use workspace `name` as default icon
...
Wlr and Sway modules use the workspace `name` as the default icon if no icon is provided. This adds the same behavior for the `hyprland/workspace` module.
Closes https://github.com/Alexays/Waybar/issues/2533
2023-09-23 21:55:18 +03:00
Brenno Lemos
258ab8b147
refactor: take window representation directly from old workspace on movewindow event
2023-09-22 21:12:42 -03:00
Brenno Lemos
adbc9d95de
feat: optional default icon for 0-match classes
...
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-22 19:16:59 -03:00
Brenno Lemos
fbe544984c
fix: ipc vs json window addr format mismatch
...
feat: ignore empty windows
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-22 19:16:56 -03:00
Brenno Lemos
b9d5912a4f
feat: rewrite window classes
...
feat: cache window class rewrite resolution
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-22 19:16:53 -03:00
Brenno Lemos
3e2761e81f
feat: dynamically assign windows to workspaces
...
Co-authored-by: Gabriel Fox <Inbox@GabrielFox.Dev>
2023-09-22 19:12:50 -03:00
Alexis Rouillard
6997b34a81
Merge pull request #2517 from an-prata/master
...
Lighter Weight Signal-Based Custom Modules
2023-09-21 23:48:22 +02:00
Alexis Rouillard
5960e8f1ee
Merge pull request #2518 from idm1try/fix-bl-asahi
...
fix(backlight): wrong percentage numbers for device apple-panel-bl
2023-09-21 23:47:23 +02:00
idm1try
81ffeebfb1
fix: style
...
Co-authored-by: Alexis Rouillard <alexisr245@gmail.com>
2023-09-21 09:03:13 +05:00
idm1try
388c024298
fix(backlight): wrong percentage numbers for device apple-panel-bl
2023-09-19 18:50:39 +05:00
Alexis Rouillard
9b8adc1951
Merge pull request #2494 from KanuX-14/battery_fix
...
Fix battery not showing for some devices
2023-09-19 13:33:35 +02:00
Evan Overman
bf371f70d1
add `waitingWorker()` to `Custom`
2023-09-18 14:56:14 -07:00
Christopher Shore
14820e5d18
fix clock to work with fmt 10.x
2023-09-17 16:32:19 -04:00
Mann mit Hut
80a34eec81
Fixed formatting again
2023-09-13 23:25:39 +02:00
Mann mit Hut
d5203e5b37
Fixed cpu module: Provide stub implementation for parseCpuFrequencies
2023-09-13 23:12:35 +02:00
Mann mit Hut
91b6629103
Fixed format errors
2023-09-13 21:59:42 +02:00
Mann mit Hut
93d66a9258
Moved cpu/common.cpp to cpu.cpp
2023-09-13 21:56:37 +02:00
Mann mit Hut
8d7341da6e
cpu module: Reuse getLoad of load module
2023-09-13 21:56:37 +02:00
Mann mit Hut
d1602e383c
cpu module: Reuse getCpuUsage of cpu_usage module
2023-09-13 21:56:36 +02:00
Mann mit Hut
c45f6681b3
cpu module: Reuse getCpuFrequency of cpu_frequency module
2023-09-13 21:56:35 +02:00
Mann mit Hut
dce6a98f38
Added changes made to the cpu module
2023-09-13 21:56:34 +02:00
Mann mit Hut
982ffde002
Use labels instead of buttons
2023-09-13 21:56:33 +02:00
Mann mit Hut
888adb57ec
Introduce cpu_usage module
2023-09-13 21:56:32 +02:00
Mann mit Hut
c36fe3a004
Introduce cpu_frequency module
2023-09-13 21:56:31 +02:00
Mann mit Hut
729564cc27
Introduced separate load module
...
The module provides the three system load averages. This is an
improvement compared what you can do with the cpu module: cpu
only provides the one minute sample and the state of the cpu module is
derived from the cpu usage which messes up the formating of the load
average. Also, at least on modern Linux systems, the load of a system
takes much more than the cpu utilization into account and it should
therefore live in a separate module.
2023-09-13 21:56:30 +02:00
Roberto Previdi
69736d68aa
Update workspaces.cpp
...
Fix unchecked string to int conversion of workspace name (which can be a string)
Closes #2501
2023-09-13 18:20:13 +02:00
Alexis Rouillard
fc67558717
Merge branch 'master' into darkmode
2023-09-11 09:25:45 +02:00
Alexis Rouillard
196b400abf
Merge pull request #2468 from khaneliman/persistent-rename
...
deprecate persistent_workspaces in favor of persistent-workspaces
2023-09-11 09:22:07 +02:00
KanuX-14
1ff4464b2f
Use adapter status if battery status is inexistent
2023-09-10 15:16:43 -03:00
KanuX-14
60611e9c2b
Fix battery not showing for some devices
...
Adds 'bat-compatibility' boolean checking from configuration file.
2023-09-10 14:41:40 -03:00
Austin Horstman
79cf33b9f1
refactor: enumparser create implementation file
2023-09-09 17:59:40 -05:00
Austin Horstman
3ae2fe3272
refactor: PR review cleanup
2023-09-09 12:08:30 -05:00
Austin Horstman
2b8c92e8fd
refactor: enum utility allow overriding
2023-09-09 11:18:12 -05:00
Austin Horstman
8ea2626de8
refactor: sort-by enum hyprland
2023-09-09 10:04:48 -05:00
Austin Horstman
cbc12e5443
feat: hyprland workspaces add sort-by
2023-09-08 22:49:15 -05:00
Austin Horstman
587bd0cd62
refactor: cleanup hyprland workspaces constructor
2023-09-08 22:24:05 -05:00
Austin Horstman
2837b72064
fix: rename workspace active fix
2023-09-08 14:11:02 -05:00
zjeffer
6c3565c520
Add urgent icon
...
Fixes #2476
2023-09-07 19:33:56 +02:00
Calvin Lee
9bb2c01a44
clean up client.cpp
2023-09-07 13:43:59 +00:00
Calvin Lee
09873f0ed9
search for dark or light mode stylesheet
...
summary:
-------
This commit adds xdg-desktop-portal support to waybar. If a portal
supporting `org.freedesktop.portal.Settings` exists, then it will be
queried for the current colorscheme. This colorscheme will then be used
to prefer a `style-light.css` or `style-dark.css` over the basic
`style.css`.
technical details:
-----------------
Appearance is provided by several libraries, such as libhandy (mobile)
and libadwaita. However, waybar links to neither of these libraries. As
the amount of code required to communicate with xdg-desktop portal as a
client is rather minimal, I believe doing so is better than linking to
an additional library.
The Gio library for communicating with dbus is rather messy, Instead of
the `Portal` class containing a `Gio::Dbus::Proxy`, it extends it which
simplifies signal handling.
`Portal` then exposes its own signal, which can be listened to by waybar
to update CSS.
For a reference implementation, please see another one of my projects:
https://github.com/4e554c4c/darkman.nvim/blob/main/portal.go
test plan:
---------
If no desktop portal which provides `Settings` exists, then waybar
continues with the log line
```
[2023-09-06 14:14:37.754] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
```
Furthermore, if `style-light.css` or `style-dark.css` do not exist, then
`style.css` will still be searched for.
Waybar has been tested with both light and dark startup. E.g. if the
appearance is dark on startup the log lines
```
[2023-09-06 14:27:45.379] [info] Discovered appearance 'dark'
[2023-09-06 14:27:45.379] [debug] Try expanding: $XDG_CONFIG_HOME/waybar/style-dark.css
[2023-09-06 14:27:45.379] [debug] Found config file: $XDG_CONFIG_HOME/waybar/style-dark.css
[2023-09-06 14:27:45.379] [info] Using CSS file /home/pounce/.config/waybar/style-dark.css
```
will be observed.
If the color then changes to light during the operation of waybar, it
will change css files:
```
[2023-09-06 14:28:17.173] [info] Received new appearance 'dark'
[2023-09-06 14:28:17.173] [debug] Try expanding: $XDG_CONFIG_HOME/waybar/style-light.css
[2023-09-06 14:28:17.173] [debug] Found config file: $XDG_CONFIG_HOME/waybar/style-light.css
[2023-09-06 14:28:17.173] [info] Using CSS file /home/pounce/.config/waybar/style-light.css
```
Finally, tested resetting waybar and toggling style (works, and style is
only changed once).
fixes : Alexays/Waybar#1973
2023-09-06 15:19:56 +00:00
khaneliman
c9e1899594
refactor: deprecate instead of remove persistent_workspaces
2023-09-05 16:02:45 -05:00
khaneliman
b405dc436c
refactor!: wlr persistent workspaces config rename
2023-09-05 16:02:22 -05:00
khaneliman
4a6c1269fb
refactor!: sway persistent workspaces config name rename
2023-09-05 16:02:21 -05:00
khaneliman
44ac6b8044
refactor!: hyprland persistent workspaces config option name standardization
2023-09-05 16:02:19 -05:00
zjeffer
04b39ea64e
hyprland/workspaces: implement 'active_only' option and visible class
2023-09-05 18:22:54 +02:00
Maxim Baz
9c49f46b01
hyprland/workspaces: react on renameworkspace event
2023-09-05 17:13:25 +02:00
xercesblue
d40ccd0da8
modules/hyprland: Fix segfault when attempting to set_urgent on a missing workspace
2023-09-04 16:57:00 -07:00
Alexis Rouillard
6f66af9ab9
Merge pull request #2134 from bruceblore/battery-weighted-percentage
...
Display battery percentage as weighted average of battery levels
2023-09-04 22:01:40 +02:00