Commit Graph

1713 Commits

Author SHA1 Message Date
MisterPine 31683d9e2a
Implemented AAppIconLabel for sway/window 2023-07-10 22:55:46 +02:00
MisterPine 00e143d47e
Introducce AAppIconLabel class
Implemented for hyprland
2023-07-10 22:50:58 +02:00
MisterPine 6e9ba3fc01
Fix spacing if icon is false 2023-07-10 22:26:02 +02:00
MisterPine a373f6b654
Icon working 2023-07-10 22:02:03 +02:00
Alexis Rouillard 91bd28d410
Merge pull request #2294 from Mr-Pine/hyprland-window-data
`hyprland/window` expose more data
2023-07-09 10:18:26 +02:00
Maëlys Bras de fer 56f956ff90
clock: handle timezone changes (again) 2023-07-09 01:44:39 +02:00
MisterPine f97c1c7136
remove getWindowData 2023-07-08 23:22:29 +02:00
MisterPine 9ee883ee1b
No dashes is format arg name 2023-07-08 23:11:11 +02:00
MisterPine 2ae13c4092
consitent naming 2023-07-08 22:40:16 +02:00
MisterPine c5f1771375
Use already existing `queryActiveWorkspace()` 2023-07-08 22:40:16 +02:00
MisterPine c4bace504c
Separate query and struct 2023-07-08 22:40:16 +02:00
sigboe d774de6c46 fix, default to true, sway/workspaces: warp-on-scroll 2023-07-08 21:32:19 +02:00
Calvin Chu e2bfa5e019
hyprland/window: fix no info with separate-outputs=true 2023-07-06 11:01:24 +10:00
Jan Beich 1fb2b8efd5 fix(util): don't abort modules from SleeperThread after 3c9cbc99d7
[warning] module sway/workspaces: Disabling module "sway/workspaces", Unable to connect to the SYSTEM Bus!...
[warning] module sway/mode: Disabling module "sway/mode", Unable to connect to the SYSTEM Bus!...
[warning] module sway/scratchpad: Disabling module "sway/scratchpad", Unable to connect to the SYSTEM Bus!...
[warning] module custom/media: Disabling module "custom/media", Unable to connect to the SYSTEM Bus!...
[warning] module sway/window: Disabling module "sway/window", Unable to connect to the SYSTEM Bus!...
[warning] module cpu: Disabling module "cpu", Unable to connect to the SYSTEM Bus!...
[warning] module memory: Disabling module "memory", Unable to connect to the SYSTEM Bus!...
[warning] module temperature: Disabling module "temperature", Unable to connect to the SYSTEM Bus!...
[warning] module sway/language: Disabling module "sway/language", Unable to connect to the SYSTEM Bus!...
[warning] module battery: Disabling module "battery", Unable to connect to the SYSTEM Bus!...
[warning] module battery#bat2: Disabling module "battery#bat2", Unable to connect to the SYSTEM Bus!...
2023-07-05 17:47:24 +00:00
Alexis Rouillard 3299d4a25c
Merge pull request #2270 from gardenappl/hypr-backend
hyprland/window: Add .hidden CSS class, account for hidden & fullscreen windows
2023-07-05 08:14:49 +02:00
gardenapple e125bbeb4d
hyprland/window: properly check visibility for .floating class 2023-07-05 03:43:03 +03:00
Alexis Rouillard 5ef6636237
Merge pull request #2265 from tengyifei/master
Partially revert 3af1853260 to fix use-after-free
2023-07-04 22:59:45 +02:00
Alex fc632f50ec fix: lint 2023-07-04 22:52:24 +02:00
Alexis Rouillard 0d1016d4d2
Merge pull request #2203 from rodrgz/mprisImprovement
mpris: dynamic tag ordering and separator customization
2023-07-04 22:44:21 +02:00
Alexis Rouillard 12725f4418
Merge pull request #2220 from sigboe/warp-on-scroll-toggle
sway/workspaces: setting to not warp to window when scrolling
2023-07-04 22:42:53 +02:00
Alexis Rouillard 14fa9cf7b7
Merge pull request #2128 from Alan-Kuan/image-tooltip
Image tooltip
2023-07-04 22:40:04 +02:00
Alex 6c196b8f8d fix: lint 2023-07-04 22:35:27 +02:00
Alexis Rouillard d2eb8eb9fc
Merge pull request #2175 from maqrrr/start_hidden
Add a new start_hidden flag
2023-07-04 22:33:33 +02:00
Alexis Rouillard 65f73d3e95
Merge pull request #2269 from Arcus92/master
wlr/taskbar: add support for rewrite rules
2023-07-04 22:31:37 +02:00
Alexis Rouillard 265b4edb2e
Merge pull request #2276 from skligys/fix_mpris_ui_spamming
Stop MPRIS module from updating every ~20ms
2023-07-04 22:29:48 +02:00
zjeffer 7ef80d563b Formatting fixes 2023-07-04 19:48:04 +02:00
zjeffer d3be9a7363 Fix rare segfault when destroying workspace 2023-07-04 19:40:43 +02:00
Alexis Rouillard bb61461aad
Merge pull request #2278 from Anakael/pr/anakael/hyprland-workspaces 2023-07-04 08:02:45 +02:00
dmitry f26a125d15 format 2023-07-04 01:26:16 +03:00
dmitry de626dcbbc format 2023-07-04 01:24:34 +03:00
dmitry c9b963e82b fix segfault 2023-07-04 01:17:26 +03:00
André Aparício a1cd0acac5 Fix random segfault on GTK icon functions
The segfaults were happening on GTK icon theme functions, which are
called via the C++ interface functions such as Gtk::IconTheme::has_icon.

There are multiple modules and threads using this functions on the default
icon theme by calling Gtk::IconTheme::get_default(), which returns the same
object for all callers, and was causing concurrent access to the same internal
data structures on the GTK lib. Even a seemingly read-only function such as
has_icon can cause writes due to the internal icon cache being updated.

To avoid this issues, a program wide global mutex must be used to ensure
a single thread is accessing the default icon theme instance.

This commit implements wrappers for the existing IconTheme function calls,
ensuring the global lock is held while calling the underling GTK functions.
2023-07-03 22:32:24 +01:00
Skirmantas Kligys c2f9d889f4 Stop MPRIS module from updating every ~20ms as onPlayerMetadata(), onPlayerPlay()
callbacks get triggered without regard for update interval.
2023-07-03 13:52:57 -07:00
gardenapple cdece498c1
hyprland/window: .solo class accounts for hidden & fullscreen windows 2023-07-02 20:58:42 +03:00
David Schulte c55cd82b39 wlr/taskbar: add support for rewrite rules 2023-07-02 12:23:36 +02:00
Alexis Rouillard 91588fb8bb
Merge pull request #2212 from evyatark2/wpscroll
wireplumber: Support for scrolling
2023-07-02 11:46:56 +02:00
Alexis Rouillard 6b9600fecd
Merge pull request #2267 from korylprince/reverse-scrolling
Don't apply reverse scrolling to mice wheels
2023-07-02 11:45:44 +02:00
zjeffer f6a62e258e fixes for hyprland/workspaces 2023-07-01 18:53:17 +02:00
Kory Prince 1ba05d1ffa add reverse-mouse-scrolling to configure mouse wheel reverse scrolling 2023-07-01 10:35:37 -05:00
Kory Prince 7a01143359 ignore reverse-scrolling from mouse wheel 2023-07-01 10:33:55 -05:00
Kory Prince 35496f461f fix regression from #2232: reverse-scrolling was not applied to
GTK_SCROLL_SMOOTH events
2023-07-01 10:33:55 -05:00
Alex b9cd0287f4 fix: typo 2023-07-01 11:12:46 +02:00
Alex 9d741f89e2 fix: lint 2023-07-01 11:12:14 +02:00
Alex cc4370f1b2 fix: build 2023-07-01 11:08:31 +02:00
Alexis Rouillard 85854c71d6
Merge pull request #2219 from xytovl/wake_threads_on_resume
Wake all sleeping threads when leaving suspend
2023-07-01 11:02:13 +02:00
Alexis Rouillard 15fe85d18d
Merge pull request #2264 from Anakael/pr/anakael/hyprland-workspaces
feat: hyprland/workspaces
2023-07-01 10:55:24 +02:00
zjeffer 25c2aaabcb Fixed build warnings 2023-07-01 10:12:24 +02:00
Yifei Teng cd49eef229 Partially revert 3af1853260 to fix use-after-free
After upgrading to the latest release of Waybar the bar will crash
whenever I close the laptop lid. After some debugging I believe it is
because the watching added by watch_name is not being correctly canceled
using unwatch_name. After the Tray object and Host object are destroyed,
additional callbacks will become use-after-free.

Looks like commit 3af1853260 removed the
unwatch_name. I'm not sure why it did that, but it seemed dangerous.

Additionally, bus_name_id_ is created by own_name. According to that
function's documentation, the correct inverse operation is unown_name.
2023-06-30 23:25:24 -07:00
dmitry 4f9fbbfa54 fix format 2023-07-01 02:25:15 +03:00
dmitry 887c44bf68 finish MVP 2023-07-01 00:18:57 +03:00
dmitry 33236c222f save 2023-06-28 02:52:01 +03:00
Alexis Rouillard 4116490535
Merge pull request #2256 from luttermann/master
Add output port (display) of workspace to template function of sway/workspace
2023-06-27 13:50:54 +02:00
dmitry afc489869a fix format 2023-06-27 00:18:49 +03:00
dmitry ce4da59f34 finish 2023-06-27 00:07:40 +03:00
Lasse Luttermann 43434254e0 Add output port of workspace to template 2023-06-26 11:01:50 +02:00
Erik Rodriguez 66ce74d29b
mpris: Rename dynamic-priority to dynamic-importance-order keeping backward compatibility 2023-06-22 02:13:44 -03:00
Erik Rodriguez 77a8420aaf
mpris: Add dynamic-order and dynamic-separator
This commit allows better handling of ordering and exclusion of the tags in Dynamics tags.
It also becomes possible to choose the separator between the tags.
2023-06-22 02:13:34 -03:00
Alexis Rouillard b0f89f2bc1
Merge pull request #2241 from yangyingchao/master
support multiple items in hwmon-path of temperature module
2023-06-20 13:22:36 +02:00
Alexis Rouillard 7cda2dfd1a
Merge pull request #2245 from gardenappl/main
hyprland/window: Add CSS customization similar to sway/window
2023-06-20 13:22:12 +02:00
gardenapple b163b21ace
More robust Hyprland backend 2023-06-20 13:36:48 +03:00
gardenapple 30c4f08773
hyprland/window: Correct application of .solo class 2023-06-20 03:54:02 +03:00
gardenapple fd7c2a2012
hyprland/language: Show language on startup 2023-06-20 00:43:33 +03:00
gardenapple 4f14ce3285
hyprland/window: add .floating and .fullscreen CSS classes 2023-06-20 00:42:19 +03:00
gardenapple e233022d1a
hyprland/window: Rework, add .empty, .solo and .<app_id> CSS classes 2023-06-19 23:44:20 +03:00
yangyingchao e403c3b71b support multiple items in hwmon-path of temperature module
So user can share configuration file among different machines with different hardware
configurations.
2023-06-17 11:33:14 +08:00
Alexis Rouillard d367b7e1d6
Merge pull request #2229 from LukashonakV/Upower_nativePath
Upower native-path filter
2023-06-16 15:38:58 +02:00
Alexis Rouillard 038644f8d9
Merge pull request #2238 from LukashonakV/ISSUE#2204
Issue#2204
2023-06-16 15:38:20 +02:00
Viktar Lukashonak 4d8515930f
Use local TZ, when user sets blank TZ in config
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-13 23:32:28 +03:00
Kristóf Marussy 5bfdbf116d
sway/window: app_id on unfocused workspaces
If the unfocused workspace has a single window, use window-specific
styling when offscreen-css is enabled.
2023-06-13 01:52:13 +02:00
Alex 83f3c2321e
Merge pull request #2231 from RobertMueller2/appid-fix
sway/window: fix appid style not cleared
2023-06-12 15:40:56 +02:00
Robert Günzler 0f8c156f24
Lift reverse-scrolling option into AModule
The option is generally useful when scrolling is used, when configuring
input devices to use "natural scroll direction".
Both backlight and pulseaudio were using different implementations, this
unifies and documents them.

Signed-off-by: Robert Günzler <r@gnzler.io>
2023-06-12 14:08:18 +09:00
Rene D. Obermueller fff4509723 sway/window: fix appid style not cleared (#2227)
Probably a rebase error during development of #1419. The code block now
removed was not supposed to be there anymore.
2023-06-11 08:41:20 +02:00
Viktar Lukashonak 17af49d421
Upower native-path filter
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-09 18:22:24 +03:00
dmitry 62f4125927 change order 2023-06-08 23:31:14 +03:00
sigboe a67e692d4a sway: warp-on-scroll toggle 2023-06-07 15:49:11 +02:00
Patrick Nicolas 3c9cbc99d7 Wake all sleeping threads when leaving suspend
std::condition_variable::wait_for does not count time spent in sleep
mode, resulting in longer than expected waits.
2023-06-07 10:17:42 +02:00
Alex c5379fa52d
Merge pull request #2218 from LukashonakV/Wdeprecated
deprecated: implicit capture of 'this' via '[=]'
2023-06-06 22:56:27 +02:00
Viktar Lukashonak 6bf5b15c13
deprecated: implicit capture of 'this' via '[=]'
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-06 23:31:12 +03:00
Viktar Lukashonak a9779c2aa2
Happy Linter
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-06 23:06:11 +03:00
Viktar Lukashonak 3af1853260
Tray module cause error g_bus_unwatch_name()
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-06 23:02:36 +03:00
Viktar Lukashonak 87023c39f8
Small performance fixies
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-06-06 13:58:05 +03:00
Evyatar Stalinsky e397f568b7 Round volume instead of truncating it 2023-06-06 11:42:31 +03:00
Evyatar Stalinsky d22fd3bbd1 Use a minimum step as provided by wireplubmer; Default step to 1 2023-06-06 11:42:02 +03:00
Evyatar Stalinsky 75990c2867 Fix linting 2023-06-05 22:23:46 +03:00
Evyatar Stalinsky 88a1a702b4 wireplumber: Support for scrolling 2023-06-05 22:03:46 +03:00
Alex 24407dbf4a
Merge pull request #2196 from calvinchd/hyprland-window-empty-css
[hyprland/window] Add css class for empty window name
2023-06-05 16:48:59 +02:00
Matias-Hall ff6f727631 river/window: Add tooltip. 2023-06-05 18:29:19 +08:00
dejor d2787cc2d8 fix: typo to avoid null pointer 2023-06-04 12:45:33 +02:00
Calvin Chu 17a56aa4f7
hyprland/window: use empty() for empty window name check 2023-06-03 12:29:36 +10:00
Calvin Chu a3912436be
hyprland/window: add css class for empty label 2023-06-01 21:38:27 +10:00
Alex 097cbc0c53 fix: lint 2023-05-29 09:24:33 +02:00
David Delarosa ebba529682 Apply clang-format 2023-05-25 01:29:28 +03:00
David Delarosa b97b0ae605 Fix linter complains 2023-05-25 01:25:55 +03:00
David Delarosa 7e9bfc504c Update to new ipc version 2023-05-25 00:27:50 +03:00
Lukas Fleischer 75eacb95ef Fix SEGFAULT in battery module
In waybar::modules::Battery::~Battery(), store a copy of the batteries_
iterator before calling erase(), as erase() invalidates the iterator.

Prior to this change, disconnecting outputs resulted in a SEGFAULT when
using the battery module; e.g.,

    [debug] Received SIGCHLD in signalThread
    [debug] Cmd exited with code 0
    [debug] Received SIGCHLD in signalThread
    [debug] Cmd exited with code 0
    [debug] Received SIGCHLD in signalThread
    [debug] Cmd exited with code 0
    [debug] Output removed: AU Optronics 0x2336
    [info] Bar configured (width: 1280, height: 25) for output: eDP-1
    [info] Bar configured (width: 1280, height: 25) for output: eDP-1
    zsh: segmentation fault (core dumped)  ./build/waybar -l trace

Signed-off-by: Lukas Fleischer <lfleischer@lfos.de>
2023-05-22 10:16:30 -04:00
cptpcrd 6163be687d Open network module eventfd as close-on-exec
Ensures that it is not leaked to child processes.
2023-05-21 12:13:17 -04:00
maqrrr 339bea1213 Add a new start_hidden bool 2023-05-15 07:01:00 -04:00
Finlay Davidson 4bc30e040f mpris: Hide label if empty 2023-05-10 13:43:43 +02:00
theRealCarneiro 5df43be11f add persistent format-icon 2023-05-05 08:52:37 -03:00
MonstrousOgre c04485a5d0 separate css class for empty workspaces 2023-05-05 00:09:32 +05:30
Viktar Lukashonak 8c83af75a1
happy linter
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-04-28 15:38:34 +03:00
Paymon 3da3732cc9 network: detect if link is p2p and use local addr
without this we endup with peer's addr

Signed-off-by: Paymon MARANDI <darwinskernel@gmail.com>
2023-04-26 13:52:17 -04:00
Enes Hecan f00602058c Fix misinterpreting return value of getaddrinfo call which caused an early return for Hyprland language 2023-04-23 13:31:02 +02:00
Bruce Blore bad6cfae6f Added option to calculate battery percentage as total_energy * 100 / total_energy_full 2023-04-22 23:43:04 -07:00
Alan-Kuan 6a17139423
feat: tooltip for image module 2023-04-21 16:38:21 +08:00
Alex a9a2223469 fix: lint 2023-04-17 09:09:13 +02:00
Alex 0b4c1cb877
Merge pull request #1950 from tleydxdy/shironeko 2023-04-17 09:06:43 +02:00
Alex 5e5569bb10
Merge pull request #1858 from uncomfyhalomacro/replace-gethostbyname-getaddrinfo 2023-04-17 09:05:35 +02:00
Alex ede1d25440 fix: lint 2023-04-17 09:01:14 +02:00
Alex 8be889c5aa
Merge pull request #2103 from xdavidel/dwl-module
Add DWL tags module
2023-04-17 09:01:00 +02:00
Alex b1e3347fca
Merge pull request #2089 from MonstrousOgre/master 2023-04-17 08:59:22 +02:00
Alex da2163ae41
Merge pull request #2092 from chayleaf/mpris-fix-non-dynamic-tag-escapes 2023-04-17 08:58:40 +02:00
Alex 1d7d1a8fe8
Merge pull request #2108 from yeheng282/backlight-fix 2023-04-17 08:58:03 +02:00
Alex 7d20034067
Merge pull request #2095 from alex-courtis/2094-pulseaudio-states 2023-04-17 08:56:26 +02:00
Alex 8aafe817bf
Merge pull request #2102 from LukashonakV/Cava 2023-04-16 18:06:53 +02:00
Viktar Lukashonak a5607b66ca
Cava module
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-04-15 02:36:15 +03:00
David Delarosa 4dff1b91fe
Merge branch 'Alexays:master' into dwl-module 2023-04-13 17:18:27 +03:00
David Delarosa 1368ba64b5 Fix segfault in destructor 2023-04-13 17:16:37 +03:00
Viktar Lukashonak 6de3b58d6a
ISSUE#2073
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-04-13 17:16:03 +03:00
David Delarosa 731eaeb0be Addapt to DWL new tag system
- tagscount is being used instead of tag array
2023-04-13 03:58:57 +03:00
yeheng282 022c9abad4 backlight: support tooltip 2023-04-11 21:01:02 +08:00
skylar779 3b2dfeec01
Made use of node_id_
Checking against names for volume changes seems a bit weird to me and
also didn't really work, so I've made use of node_id_ to check against
this instead and also fixed an issue, where the volume update would
refuse to do its thing despite it being the same id that was used on launch.
2023-04-11 10:51:25 +02:00
David Delarosa 60cdf10e64 Add DWL tags module 2023-04-11 04:50:21 +03:00
Alexander Courtis 51f0fc6b72 #2094 pulseaudio apply states 2023-04-07 14:19:45 +10:00
MonstrousOgre 6f3a27905d preventing persistent_workspaces and all-outputs from being used together 2023-04-06 12:14:44 +05:30
chayleaf 659fea07ee mpris: fix non-dynamic tags not being html escaped 2023-04-06 13:24:28 +07:00
chayleaf cb82326b22 mpris: fix css class application
apply styles to label rather than event_box (fixes play/pause state and
per-player selectors)
2023-04-06 04:50:32 +07:00
MonstrousOgre 33c4964187 replacing spdlog::info with spdlog::debug 2023-04-06 00:34:52 +05:30
Alex 3d980f92a3 fix: build 2023-04-03 10:59:29 +02:00
Alex 626a1f58be fix: build 2023-04-03 10:51:36 +02:00
Alex 1445dc4151 fix: lint 2023-04-03 10:06:01 +02:00
Alex a6084ea7e6
Merge pull request #2068 from TheRealLorenz/master 2023-04-03 09:44:04 +02:00
Alex 60467ad7f2
Merge pull request #2064 from en3wton/hyprland-language-format-replacements 2023-04-03 09:43:28 +02:00
Alex ef99b0226c
Merge pull request #1932 from ldelossa/wlr-taskbar-sort-app-id 2023-04-03 09:42:19 +02:00
Alex 60e0584d16 fix: lint 2023-04-03 09:41:24 +02:00
Alex ba6faa7859
Merge pull request #2011 from chayleaf/improve-mpris 2023-04-03 09:40:01 +02:00
Alex 02b3c125a1 fix: init optional to null 2023-04-03 09:38:12 +02:00
Maxim Andreev ffeef7f40f modules/clock: fix calendar shift in months with 31 days 2023-03-31 20:07:59 +03:00
chayleaf 0cfd1c7094 mpris: don't put ellipsis after whitespace 2023-03-31 19:54:44 +07:00
chayleaf e5524d5059 mpris: switch base class from AModule to ALabel 2023-03-31 19:54:39 +07:00
chayleaf 774d8880cd mpris: fix potentially invalid seconds count on >1h media 2023-03-31 19:54:39 +07:00
chayleaf a301b8c4cd mpris: update docs 2023-03-31 19:54:27 +07:00
chayleaf 5383f7bd56 mpris: add unicode support; add position tag 2023-03-31 19:54:20 +07:00
chayleaf a53c97f7f6 mpris: add tooltip and length limits 2023-03-31 19:53:53 +07:00
lilydjwg 918de59988 custom module: free memory returned by libc's getline 2023-03-29 21:18:13 +08:00
TheRealLorenz f557697e92 Rewrite entire label in sway/window module
Closes #1742
2023-03-25 17:37:49 +01:00
TheRealLorenz 63525ec956 Rename function name 2023-03-25 17:33:01 +01:00
MonstrousOgre 5791a6abc6 Reading persistent workspaces 2023-03-24 23:11:47 +05:30
en3wton bbcfb5e138 remove use of new on Layout 2023-03-21 19:30:35 +00:00
en3wton 4ab4ff790e add more format replacements for hyprland/language 2023-03-19 15:12:11 +00:00