Commit Graph

1265 Commits

Author SHA1 Message Date
Sasha Moak
3730793197 feat: add icon support to the wireplumber module
Adds basic icon support for the wireplumber module.

This can be achieved by using `{icon}` in the `format` config and
pairing it with the `format-icons` config as well.

Example:

```
"wireplumber": {
    "format": "{volume}% {icon}",
    "format-icons": ["", "", ""]
}
```
2022-11-26 10:02:16 -08:00
Alex
d2b4076ac8
Merge pull request #1799 from Keloran/upower-click 2022-11-25 09:04:31 +01:00
Alex
e63e3a0ca9
Update upower.cpp 2022-11-25 09:03:27 +01:00
Alex
80b2b29a77
Merge pull request #1397 from JakeStanger/feat/image-module
Resolves https://github.com/Alexays/Waybar/issues/1191
2022-11-24 20:40:56 +01:00
Simon Plakolb
5e9bbe5c76 modules: Revert button to label 2022-11-24 13:08:16 +01:00
herlev
2c7cb0e9d4 Fix crashes when using named workspaces in Hyprland
The first crash occurs when trying to parse the
ID of a workspace as an uint, since named
workspaces has negative IDs. This is fixed by
using ints for workspace IDs instead of uints.

The second crash occurs when converting a
workspace name that isn't a number to an integer.
This is fixed by wrapping std::stoi in a try
block and only sorting by number, when both names
can successfully be converted to integers.
2022-11-24 02:16:44 +01:00
Alex
ce8ae5bf17
Merge pull request #1748 from lilydjwg/fix-zombies
fixes https://github.com/Alexays/Waybar/issues/1713
2022-11-23 21:31:47 +01:00
Keloran
3acd31c3e9
syntax issue 2022-11-21 09:48:41 +00:00
Keloran
456e06c4b5
exact opposite, lol 2022-11-21 09:46:57 +00:00
Keloran
a2751cfcd6
alt text readded 2022-11-18 14:25:16 +00:00
Keloran
00a2ebf00d
added onclick to upower 2022-11-18 13:09:38 +00:00
Sasha Moak
c2f98d07ef feat: wireplumber support
Adds basic support for showing volume via wireplumber. Allows specifying
the node-id or falling back to the default Audio/Sink node id if node-id
is not set. If tooltip on hover is enabled, will show `{node_name}` by
default otherwise `tooltip-format`.

Format replacements:

`{volume}` - Volume in percentage
`{node_name}` - The node's nickname (`node.nick` property)
2022-11-16 23:23:07 -08:00
Maximilian Schmidt
8c24e26f0e
Recognize outputs with 'bluez' in monitor name as bluetooth class 2022-11-16 19:01:12 +01:00
Dordovel
1111763251 added path settings 2022-11-16 08:04:18 +03:00
Dordovel
769858fbb4 fix call parent event handle, added commang to open user folder 2022-11-15 16:15:26 +03:00
Dordovel
49afb87e34
Merge branch 'Alexays:master' into master 2022-11-13 16:17:04 +03:00
Frederic Grabowski
c0b3e9ee35 normalize capacity by number of batteries 2022-11-12 22:39:53 +01:00
Dordovel
454ba610f4 clicking on the user label opens the default file manager 2022-11-11 15:15:12 +03:00
Jef Steelant
9f0a14c22b make linter happy 2022-11-10 09:19:49 +01:00
Jef Steelant
8f4f67f69f Do not crash when a monitor is removed 2022-11-09 09:34:19 +01:00
Baltazár Radics
d02e23c759 feat(backlight): hide if the display is powered off 2022-11-07 13:57:21 +01:00
Kelsey Judson
253222d31c Make backlight module respect format-<state> config 2022-11-07 21:06:16 +13:00
Sefa Eyeoglu
cf5877073a
fix: don't escape mpd label twice
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-11-05 20:23:00 +01:00
Eric L
6477e539d0 Battery: Plugged status has higher priority 2022-11-04 20:01:53 +00:00
Alex
df36ac3408
Revert "Escape text in custom module" 2022-11-02 05:59:50 +01:00
Alex
ebdf575d45 fix: lint 2022-10-28 14:44:48 +02:00
Alex
a4d27ea806 fix: checking router id in handleEvent function 2022-10-28 14:44:04 +02:00
Alex
a10266ceee fix: add power to tooltip format 2022-10-28 14:35:18 +02:00
lilydjwg
31137c30fb fix custom module leaves zombie processes behind when bars are removed
fixes #1713.
2022-10-27 18:12:14 +08:00
Alex
2fec1d4907 fix: typo 2022-10-27 09:14:07 +02:00
Alex
be28ee3d7e fix(#1707): hide module when no controller found 2022-10-27 09:00:31 +02:00
Alex
2d7e21ed7d fix: lint 2022-10-26 17:26:15 +02:00
Alex
930a3e168b
Merge pull request #1747 from bi4k8/taskbar-task-reorder 2022-10-26 17:25:55 +02:00
bi4k8
ff61e7bf4e taskbar: implement drag-and-drop task reordering 2022-10-25 19:39:23 +00:00
Quantenzitrone
64849f52c9 fixed memory module not rounding numbers 2022-10-22 02:31:14 +02:00
Erik Reider
1ceaff27c2 Fixed gamemode module segfaulting when disconnecting monitor 2022-10-20 12:38:52 +02:00
Alex
e8e8ccb6cf
Merge pull request #1661 from asas1asas200/zeng-feat-improve_keyboard 2022-10-20 10:50:35 +02:00
Alex
a24f2d72a7
Merge pull request #1730 from herlev/hyprland-window-rewrite 2022-10-20 10:48:57 +02:00
herlev
e1045381fe Fix linter 2022-10-19 13:30:28 +02:00
herlev
e660a3634d Fix linter 2022-10-19 13:29:05 +02:00
herlev
54e04b5a30 Refactor rewriteTitle 2022-10-19 13:25:08 +02:00
Simon Plakolb
662a250705 Fix battery indicator crash on linux
A pre-processor flag was misspelled and is now corrected.
2022-10-19 13:15:21 +02:00
herlev
f72c1a54d3
Merge branch 'Alexays:master' into hyprland-window-rewrite 2022-10-19 12:18:22 +02:00
Alex
6b221133c2
Merge pull request #1703 from lbartoletti/freebsd_battery 2022-10-19 09:08:47 +02:00
Alex
d01fda6fae
Merge pull request #1721 from herlev/sort-workspaces-by-number 2022-10-19 09:08:03 +02:00
Loïc Bartoletti
692b90c995 fix build 2022-10-19 08:36:15 +02:00
Loïc Bartoletti
72a2ada82c remove clang-format lines 2022-10-18 19:30:43 +02:00
Loïc Bartoletti
6156a62294 fix time_remaining. FreeBSD sysctl returns minutes and not hours 2022-10-18 19:30:43 +02:00
Loïc Bartoletti
d4d35e2f89 apply clang-format 2022-10-18 19:30:43 +02:00
Loïc Bartoletti
a58988ea9d Battery: replace #else by #elif defined(__linux__)
Cannot use #else here when inotify_init1() is hidden behind #if defined(__Linux__).

Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
2022-10-18 19:30:43 +02:00
Loïc Bartoletti
0ada5ac8b0 Battery::getAdapterStatus: better code format 2022-10-18 19:30:41 +02:00
Loïc Bartoletti
1421163df3 remove useless include <sys/types.h> 2022-10-18 19:30:23 +02:00
Loïc Bartoletti
9d5f0e45c0 Add test if there is battery 2022-10-18 19:30:23 +02:00
Loïc Bartoletti
45e44e03bd Apply jbeich suggestion for if defined(__linux__) 2022-10-18 19:30:21 +02:00
Loïc Bartoletti
830c5cd5d0 FreeBSD: Add support to battery
This commit aims to propose a FreeBSD to gain battery support using sysctl on hw.acpi.battery.*
2022-10-18 19:30:04 +02:00
ItsDrike
90f206f92a
Fix crash on quickly switching workspaces
The hyprland/window widget had an assertion ensuring that the output
from hyprctl matched the currently selected workspace id. However this
assertion fails if workspaces are switched too quickly, causing the
selected workspace to differ in id from the one in hyprctl, failing this
assertion which then crashes the entire program.

This fix simply changes this assertion into an if statement, and if a
mismatch is found, empty string is returned as the window name.
2022-10-18 18:36:00 +02:00
herlev
97ae2ff343 Add rewrite option to hyprland/window 2022-10-18 13:18:43 +02:00
herlev
cb842d9d50
Merge branch 'Alexays:master' into sort-workspaces-by-number 2022-10-18 12:19:00 +02:00
Alex
6e73c58e60 fix: lint 2022-10-18 09:01:45 +02:00
Alex
209225e381
Merge pull request #1701 from Dordovel/master 2022-10-18 09:01:00 +02:00
Alex
7746328daa
Merge pull request #1667 from asas1asas200/zeng-feat-sway_scratchpad 2022-10-18 09:00:31 +02:00
Alex
c7d475ee86
Merge pull request #1728 from lilydjwg/fixpa 2022-10-18 08:45:45 +02:00
Dordovel
4ed13df092
Merge branch 'Alexays:master' into master 2022-10-17 19:00:21 +03:00
herlev
33c3ab35a8 Fix linter error (formatting) 2022-10-17 10:13:37 +02:00
herlev
4dfea72db0
Merge branch 'Alexays:master' into sort-workspaces-by-number 2022-10-17 10:01:12 +02:00
Alex
504132dc55
Merge pull request #1719 from herlev/master 2022-10-17 09:53:05 +02:00
herlev
56ec72c31c
Merge branch 'master' into master 2022-10-17 09:44:17 +02:00
Loïc Bartoletti
27c6c96b37
Merge branch 'master' into freebsd_temperature_use_thermal-zone_config 2022-10-17 09:34:06 +02:00
Alex
8551c4bbe3 fix: lint 2022-10-17 09:19:00 +02:00
Alex
2abeba2b52
Merge pull request #1679 from tomcharnock/master 2022-10-17 09:10:54 +02:00
Alex
bfa3adcfd6
Merge pull request #1120 from pinselimo/use_gtk_button_v2 2022-10-17 09:09:12 +02:00
Alex
2db6fc8b1b
Merge pull request #1687 from sespiros/fix-custom-module-markup 2022-10-17 09:08:01 +02:00
Alex
c2dd296d31
Merge pull request #1704 from gunslingerfry/master 2022-10-17 09:07:26 +02:00
Alex
5b0c5ea9ce
Merge pull request #1720 from IanManske/inhibitor-default-state 2022-10-17 09:06:26 +02:00
Alex
c7bb0ae0af
Merge pull request #1636 from IsaacWoods/master 2022-10-17 09:05:03 +02:00
Mika Braunschweig
f86dff60e6
utils: add sanitize_str to encode '&' etc.
gtk requires some chars (<>&"') to be encoded for them to render
properly. `sanitize_str` sanitizes raw strings that have such chars and
returns a properly encoded string
2022-10-17 00:31:19 +02:00
lilydjwg
35254ee834 pulseaudio: disconnect on destruction 2022-10-16 15:24:17 +08:00
herlev
9a0013cb10 Add option to wlr/workspaces to sort workspaces by number 2022-10-15 01:44:58 +02:00
Ian Manske
cca5227210 Add config value for inhibitor default state. 2022-10-13 21:47:57 -04:00
herlev
cf9d98a0be remove <optional> dependency 2022-10-13 23:49:41 +02:00
herlev
015409acaf Allow hyprland/window to show active window on a per monitor basis 2022-10-13 23:41:56 +02:00
Simon Plakolb
2b735f44bc modules: Set tooltip on button
Mouse-over tooltips set on the label only appear once the mouse hovers
over exactly the label. Other apps (e.g. firefox) show the tooltip once
the pointer hovers the button. Not solely its label. With this commit we
get the same behaviour.
2022-10-12 10:25:30 +02:00
Simon Plakolb
8fa5d9b838 modules: Set style-context on button
Fixes issue where the class parameters in style.css would have no
effect.

The CSS now references the GtkButton instead of the GtkLabel. Removing
all style-classes from the custom module GtkButton however removes
any properties set via style.css. Thus, the default classes 'flat' and
'text-button' are added on every update of these modules.
2022-10-12 10:25:30 +02:00
Simon Plakolb
b8322c4b4b button: Add AButton class
The AButton class is designed as full a substitute to ALabel. The
GtkButton attribute 'button_' is initialized with a label. This
label can the be referenced by the subsequent inheritors of AButton
instead of the GtkLabel attribute 'label_' of ALabel.
For convenience a GtkLabel* 'label_' attribute is added to AButton.

If the button cannot be clicked it is disabled, effectively acting
like its label predecessor.

GtkButton seems to catch one-click mouse events regardless of the
flags set on it. Therefore, 'signal_pressed' is connected to a
function creating a fake GdkEventButton* and calling 'handleToggle'
(for details on this possible bug in GTK see:
https://stackoverflow.com/questions/45334911 )

In accordance with other GtkButtons (i.e. the sway/workspace ones)
set_relief(Gtk::RELIEF_NONE) is called on the 'button_' instance.
2022-10-12 10:25:29 +02:00
Dordovel
07050cf354
Merge branch 'Alexays:master' into master 2022-10-04 15:37:36 +03:00
Loïc Bartoletti
ddf3e11240 remove clang-format lines 2022-10-04 11:28:32 +02:00
Loïc Bartoletti
1ca660460a apply clang-format 2022-10-04 08:03:54 +02:00
Loïc Bartoletti
0898236586 remove useless include <sys/types.h> 2022-10-04 07:37:05 +02:00
Loïc Bartoletti
c3e91cd228 [FreeBSD] Use thermal-zone
The zone was hardcoded in #1702.
This commit allows to use the "thermal-zone"
variable.

Follow up #1702
2022-10-04 07:29:16 +02:00
Matthew Fry
c500c7d9a1 Fixed pulseaudio max-volume configuration. Fixed issue where volume stepping would cause the max volume to go above the max and never reach 0. 2022-09-30 15:25:12 -06:00
Loïc Bartoletti
024777a5bc FreeBSD: Add support to temperature
This commit aims to propose a FreeBSD to gain temperature support using
sysctl on hw.acpi.thermal.tz0.temperature.
2022-09-30 21:12:28 +02:00
Dordovel
9758833027 added user module 2022-09-30 14:33:23 +03:00
Spyros Seimenis
9e03bb61c7 Escape text in custom module 2022-09-16 01:19:44 +03:00
Alex
d1700bf202
Revert "added checking router id in handleEvent function, because module does…" 2022-09-15 15:47:14 +02:00
User
52e9f624be added checking router id in handleEvent function, because module doesn't update state 2022-09-15 14:03:32 +03:00
Tom Charnock
e75eafcb34 Merge branch 'master' of https://github.com/tomcharnock/Waybar 2022-09-09 07:19:12 +00:00
Isaac Woods
faf8954712 Add config option to ignore Pulseaudio Sinks
Fixes #1347
2022-09-09 00:51:25 +01:00
Arthur Eigenbrot
6b83360e76 Add "{m}" battery format-time option for zero-pad minutes 2022-09-07 08:53:07 -06:00
Alex
ac193ae669
Merge pull request #1646 from LukashonakV/ISSUE#1545
Issue#1545. Calendar scrolling opportunity
2022-09-07 09:16:59 +02:00
Alex
38d2815425
Merge pull request #1678 from asas1asas200/zeng-feat-idle_inhibitor_tooltip
feat(idle-inhibitor): add tooltip format
2022-09-05 17:52:27 +02:00
Tom Charnock
0306c97173 Merge branch 'master' of https://github.com/Alexays/Waybar 2022-09-05 09:54:04 +02:00
Alex
8a82cdff16
Merge pull request #1659 from TheRealLorenz/master
Add 'max-volume' option to pulseaudio
2022-09-05 09:13:01 +02:00
Alex
29bdff5314
Merge pull request #1657 from vaxerski/hyprlandLanguage
Added a basic hyprland/language module
2022-09-05 09:12:17 +02:00
Tom Charnock
912d7f8588 Making calculations uint64_t 2022-09-03 18:08:26 +02:00
Tom Charnock
5647146ac0 Added Discharging clause and corrected typo 2022-09-03 17:52:11 +02:00
Tom Charnock
af2a3f8bda Added alternative calculations for time remaining 2022-09-03 16:06:13 +02:00
asas1asas200
55e83f90d1 feat(idle-inhibitor): add tooltip format 2022-09-03 19:21:32 +08:00
Tom Charnock
0d94853613 Added alternative variable calculations 2022-09-02 15:37:23 +02:00
Tom Charnock
120c68e014 Updated logic in battery module 2022-09-02 11:42:46 +02:00
Alex
4deb6d812d
Merge pull request #1653 from kennypm/dsp
add JACK module
2022-09-02 08:12:57 +02:00
asas1asas200
d2ff116c92 feat(sway/scratchpad): add some configs
Add some configs for displaying.
Remove draft codes.
2022-08-31 16:27:25 +08:00
asas1asas200
e3342467fc feat(sway/scratchpad): add basic counter 2022-08-31 16:27:25 +08:00
asas1asas200
4a929240df style(lint): fix some files lint 2022-08-31 15:51:50 +08:00
Alex
33d13af6d1
Merge pull request #1670 from akliuxingyuan/master 2022-08-30 20:43:51 +02:00
akliuxingyuan
0d27949f0a scale icons for HiDPI monitor 2022-08-30 23:13:38 +08:00
asas1asas200
f6322d2dd1 fix(network): dont escape essid in tooltip
Like #1256 , but escape by calling `set_tooltip_markup()`, because the
label text uses `set_markup()`.
2022-08-30 23:05:34 +08:00
Alexander Courtis
5f2dd99e6d #1591 river escape window and mode 2022-08-29 16:22:08 +10:00
asas1asas200
8b03e38594 fix(keyboard): correct device-path config behavior 2022-08-24 14:08:34 +08:00
asas1asas200
5944989a8a doc(keyboard): add deprecated warning 2022-08-24 02:41:12 +08:00
asas1asas200
dcd75b3b40 feat(keybaord): enable hotplug support
Use inotify listening devices path changes to implement hotplug support.
The new hotplug thread is also an event loop, so the interval value has
no effect.
The evdev is now open on demand.

Fix libinput_interface object life-time.
2022-08-23 23:30:16 +08:00
ViktarL
17f91391b6
Merge branch 'Alexays:master' into ISSUE#1545 2022-08-23 09:00:08 +00:00
asas1asas200
061f4550f4 feat(keyboard): improve keyboard response time
Use libinput event for keyboard state updates.
The state will update when CAPS_LOCK, NUM_LOCK or SCROLL_LOCK has been
released,
`interval` will have no effect after this change.
2022-08-22 22:49:59 +08:00
asas1asas200
51670f0506 Fix typo 2022-08-21 12:35:33 +08:00
TheRealLorenz
4e930ba50a Add 'max-volume' option to pulseaudio. Fixes #1607 2022-08-20 22:21:57 +02:00
ViktarL
8839a86afe
Merge branch 'Alexays:master' into ISSUE#1545 2022-08-19 13:52:52 +00:00
kennypm
59e57ab9a0 man page and adjust default format 2022-08-18 17:05:04 -04:00
vaxerski
39c170bf10 remove one comment that I forgot to 2022-08-18 19:13:24 +02:00
vaxerski
ed6467e785 fix linter 2022-08-18 19:02:46 +02:00
vaxerski
43c3ca1d38 added the thing i was talking about 2022-08-18 18:59:34 +02:00
vaxerski
8881b9a6ef fix linter the most 2022-08-18 18:06:34 +02:00
vaxerski
e8942feefc fix linter more 2022-08-18 18:05:40 +02:00
vaxerski
a23d58e900 fix linter 2022-08-18 18:04:39 +02:00
vaxerski
16d5619f3b added a basic hyprland/language module 2022-08-18 18:00:27 +02:00
Alex
bcee4e15d3 fix: lint files 2022-08-18 15:22:25 +02:00
Alex
b7bd06ad8f
Update window.cpp 2022-08-18 15:21:50 +02:00
Alex
e50c246601
Merge pull request #1651 from TheRealLorenz/master
Feature: sway/window can show 'shell' parameter
2022-08-18 15:21:09 +02:00
Alex
848ae1f818
Merge pull request #1656 from vaxerski/hyprland
Added a Hyprland backend and a Window module
2022-08-18 15:15:45 +02:00
Vaxry
8dc78e4e40
Revert "init man documentation" 2022-08-18 14:54:20 +02:00
Vaxry
e662b8c624
Merge pull request #2 from NotAShelf/master
init man documentation
2022-08-18 14:53:15 +02:00
vaxerski
e2e59a52df make the linter happy 2022-08-17 22:03:49 +02:00
vaxerski
123ed36739 remove workspaces module as its buggy and unnecessary 2022-08-17 21:58:33 +02:00
vaxerski
c64058c947 stabilize window module 2022-08-17 21:54:23 +02:00
kennypm
56d46e62c1 add samplerate callback since pipewire supports dynamic samplerate changes 2022-08-12 11:30:12 -04:00
kennypm
4336f10b29 Merge branch 'dsp' of https://github.com/kennypm/Waybar into dsp 2022-08-11 17:26:45 -04:00
kennypm
a7979a3e56 add locks and refactor for clarity 2022-08-11 17:26:27 -04:00
kennypm
bfed2114e4 jack_client_close working properly now 2022-08-11 15:49:24 -04:00
Kenny Phelps-McKeown
f65a372855
Merge branch 'Alexays:master' into dsp 2022-08-11 07:46:20 +00:00
TheRealLorenz
5b1cd65e20 Fix: better formatting 2022-08-10 10:41:18 +02:00
TheRealLorenz
99ed2bb7fa Feature: sway/window can show 'shell' parameter 2022-08-10 10:34:51 +02:00
kennypm
ddd5b4e157 refactor 2022-08-07 15:29:42 -04:00