Commit Graph

1270 Commits

Author SHA1 Message Date
Alex 94d6ae9741
Merge pull request #1845 from adamant-pwn/patch-1 2022-11-29 10:47:20 +01:00
Dordovel 7671ccfbc6 added file existence check 2022-11-29 09:00:12 +03:00
Oleksandr Kulkov 459541ed89
Don't search "Keyboard at" from hyprland/language
The current output form of `hyprctl devices` is like this:
```
        Keyboard at 6f80ad70:
                ITE Tech. Inc. ITE Device(8910) Keyboard
                        rules: r "", m "", l "us,ru", v "", o "grp:alt_shift_toggle"
                        active keymap: Russian
                        main: no
```

That is, `Keyboard at` goes _before_ the keyboard name, so looking for `Keyboard at` only makes it skip to the keyboard _after_ the one that the user specified.
2022-11-29 01:11:25 +01:00
encbar5 8db1996ccc Allow calendar_shift_init_ to be negative 2022-11-27 21:24:56 -06:00
Sasha Moak 60fa5e9f67 fix: wireplumber module when used with a bluetooth device
This fixes #1811 by falling back to `node.description` if `node.nick` is
not available. This can happen for bluetooth devices that do not have a
`node.nick`.
2022-11-26 11:35:45 -08:00
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