Commit Graph

1270 Commits

Author SHA1 Message Date
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
Viktar Lukashonak e9e5780aae
Calendar scrolling opportunity 2022-08-06 13:55:20 +03:00
Alex 77bea7c182
Merge pull request #1631 from m-braunschweig/filename
mpd: add filename formatter
2022-08-04 10:05:14 +02:00
Alex c2ab2e6d19
Merge pull request #1627 from datMaffin/master
sni: Use the pixmap if for the given icon name an icon could not be found
2022-08-04 10:04:48 +02:00
Mika Braunschweig 11239a4900
mpd: add filename formatter 2022-08-03 20:52:18 +02:00
Marvin Dostal 95b5348c24 sni: change missing icon in theme logging from info to trace 2022-08-03 17:34:34 +02:00
kennypm 15dbe8965e fix Linter error 2022-07-19 22:36:59 -04:00
kennypm decc5bcd68 namespace cleanup 2022-07-19 22:34:35 -04:00
kennypm 92870cab2a namespace cleanup 2022-07-19 22:30:42 -04:00
kennypm 4cb2cc9f21 fix Linter errors 2022-07-19 21:54:36 -04:00
kennypm 02df861829 fix Linter errors 2022-07-19 21:53:32 -04:00
kennypm 23eaffc04b fix Linter errors 2022-07-19 21:49:56 -04:00
kennypm 4cd6024f07 move issue from comment to Issues 2022-07-19 19:36:48 -04:00
kennypm 8b5f42d934 remove unnecessary libprocps dependency 2022-07-19 19:27:39 -04:00
kennypm 318a6e0969 fix segfault when stopping JACK2 server 2022-07-19 01:38:56 -04:00
kennypm c7b09eea11 changed callbacks to use static_cast 2022-07-19 01:38:56 -04:00
kennypm bc8517fd08 fix callbacks 2022-07-19 01:38:56 -04:00
kennypm 9439e4183c fix callbacks 2022-07-19 01:38:56 -04:00
Kenny Phelps-McKeown 8fc8bb40bf Initial commit for Waybar JACK monitoring module
-DSP load
  -xruns
  -connected/disconnected state
  -only tested with Pipewire so far but should work with JACK2 as well

 On branch dsp
 Changes to be committed:
	modified:   include/factory.hpp
	new file:   include/modules/jack.hpp
	modified:   meson.build
	modified:   meson_options.txt
	modified:   src/factory.cpp
	new file:   src/modules/jack.cpp
2022-07-19 01:38:35 -04:00
Alex d906080f26
Merge pull request #1617 from alebastr/fmt-9
fix: adapt to fmt 9.0.0 breaking changes
2022-07-18 10:00:46 +02:00
Marvin Dostal 04d66de866 sni: remove unnecesary parameter 2022-07-17 22:20:24 +02:00
Marvin Dostal 699f732146 sni: Remove unnecessary getIconByName call 2022-07-17 22:15:14 +02:00
Marvin Dostal f437bf96e3 sni: Prefer system icons over pixmap 2022-07-17 22:15:12 +02:00
Marvin Dostal fc9a390977 sni: Use the given pixmap even if there is a name given 2022-07-17 22:14:57 +02:00
Carlos Ortega 48d2759df5 add layout as class to language module 2022-07-17 16:13:32 +01:00
Aleksei Bavshin a44622aa9f
fix: fmt 9.x deprecation warning for implicit enum conversions 2022-07-13 22:36:37 -07:00
Aleksei Bavshin 3117aefdf3
fix: drop conditionals for ancient fmt versions 2022-07-13 22:36:33 -07:00
Aleksei Bavshin 24a8332b62
fix: adapt to fmt 9.0.0 breaking changes 2022-07-13 22:36:32 -07:00
vaxerski 17b60bc737 minor changes 2022-07-01 15:35:25 +02:00
vaxerski c1f92d2a3c added workspaces 2022-07-01 15:16:54 +02:00
vaxerski 72f478c195 added backend and hyprland/window 2022-07-01 12:46:28 +02:00
Viktar Lukashonak 36aa22189b
Last weekday applies Unix fmt 2022-06-24 16:44:06 +03:00
Bao Trinh e57899c0c5
pulseaudio: avoid retaining outdated form factor
when the module fails to get the pulseaudio device form factor, the
module persists the existing value, resulting in the incorrect
format-icon being used to format the label on device changes.

reset the form factor value so that the icon lookup properly falls back
to "default" when missing
2022-06-14 13:57:03 -05:00
Alex 249c0aad73 fix: lint 2022-06-14 09:17:40 +02:00
Bao Trinh 458c03bf95
retain instance name css class for custom modules
When adding a custom module with a name, e.g.:

```jsonc
{
  ...,
  "custom/foo#bar": { },
  ...
}
```

The custom module does not retain the `bar` class as it should, because
all the classes are replaced with the runtime output:

1b4a7b02f4/src/modules/custom.cpp (L141-L147)

Avoid removing the module instance name class so css class behavior is
consistent between all modules.
2022-06-13 16:10:41 -05:00
Alex 1b4a7b02f4
Merge pull request #1575 from cosandr/bandwidth-update
Add total bandwidth formatting options
2022-06-11 11:45:18 +02:00
tiosgz f3a049c6df river/mode: new module
This module shows river's current mapping mode (e.g. normal, locked).
2022-06-01 15:35:08 +00:00
Daan Goossens 6857691679 style(bluetooth): apply project style 2022-05-28 12:58:37 +02:00
Daan Goossens a475be7cf7 feat(bluetooth): add format-icons 2022-05-28 12:35:33 +02:00
Daan Goossens 00c11c64ca fix(bluetooth): tooltip-format-connected-battery 2022-05-28 12:33:47 +02:00
Andrei Costescu 4e2305639b
Add option for displaying total bandwidth 2022-05-28 10:54:10 +02:00
Alex 7ab9a560ae fix: lint 2022-05-23 13:47:14 +02:00
Alex a5299af3c2
Merge pull request #1562 from trevnels/river-window
River Window Module
2022-05-23 13:43:28 +02:00
Alex 4d1aeb7eb8
Merge pull request #1525 from FlexW/feature/icon-heuristics
sway/window: Add heuristics for finding icons
2022-05-23 13:42:26 +02:00
Alex 38a846ae51
Merge pull request #1555 from LukashonakV/ISSUE#1552
Calendar module: localization issue #1552
2022-05-23 13:40:48 +02:00
Alex 03bbc9df64
Merge pull request #1554 from ErikReider/gamemode-module
Gamemode Module
2022-05-23 13:40:09 +02:00
Alex 1e4fe0bee8
Merge pull request #1557 from LukashonakV/ISSUE#1556
Issue#1556. Battery module: a lot of warnings when battery dissapears
2022-05-23 13:39:23 +02:00
Erik Reider f4f2989e85 Added tooltip-format 2022-05-21 12:02:45 +02:00
Erik Reider 8d4c7176f8 Renamed not-running-bide to hide-not-running 2022-05-21 12:02:35 +02:00
Ed Ralston 7abcbe80e5
Prevent segfault in getCpuFrequency
When parseCpuFrequencies returns an empty vector, getCpuFrequency
would attempt to dereference an invalid iterator.

Return early from getCpuFrequency when parseCpuFrequencies returns an
empty vector.

Resolves a segfault when waybar is run within a VM on apple silicon.
2022-05-19 20:01:57 -04:00
trevnels b900c01381 add manpage and make format option work 2022-05-19 15:32:10 -04:00
trevnels e2b676b800 add river/window module 2022-05-19 15:20:04 -04:00
Viktar Lukashonak 7f995507fe
std::filesystem::path is a string representation 2022-05-14 17:10:44 +03:00
Viktar Lukashonak b39a8ede6c
Issue#1556. Battery module: wrong string comparison
1. battery.hpp - added local bool variable. Force to print warnings the
only once in order to warn user about wrong battery configuraion. And
does not bring a mess when the battery is turned off (gamepads, etc.)
2. dir_name is an object which takes a part in comparison. So converted to the string.
2022-05-14 16:56:46 +03:00
Viktar Lukashonak 315ea991bc
Calendar module: localization issue #1552 Linter #60 2022-05-13 23:56:08 +03:00
Viktar Lukashonak bd0f6128d3
Revert "Waybar. Issue#1552. Calendar module, LC_TIME variable"
This reverts commit 7b7ee41e13.
2022-05-13 22:58:38 +03:00
Viktar Lukashonak 5a014305ec
Revert "Issue#1552. Calendar module, LC_TIME variable"
This reverts commit 448b413eca.
2022-05-13 22:58:00 +03:00
Erik Reider 3411236697 Initial implementation 2022-05-13 21:30:45 +02:00
Viktar Lukashonak e615612bf4
Calendar module: localization issue #1552 2022-05-13 18:51:32 +03:00
Viktar Lukashonak 448b413eca
Issue#1552. Calendar module, LC_TIME variable 2022-05-13 12:54:18 +03:00
Viktar Lukashonak 7b7ee41e13
Waybar. Issue#1552. Calendar module, LC_TIME variable 2022-05-12 19:04:45 +03:00
Alex 9bc821bdac
Merge pull request #1551 from loserMcloser/keyboard-state-css-classes
Add classes to individual keyboard state labels
2022-05-12 13:55:32 +02:00
loserMcloser bfcb936d87 Add classes to individual keyboard state labels 2022-05-11 08:08:28 -06:00
Alex 3d023a0421
Merge pull request #1540 from daangoossens22/bluetooth
feat: extend bluetooth module
2022-05-11 09:26:38 +02:00
Daan Goossens e235f48245 feat: hide module if empty 2022-05-07 13:42:27 +02:00
Daan Goossens 3043d42a89 style: apply projects clang-format 2022-05-06 17:01:43 +02:00
Daan Goossens 954bed3f5e refactor: adapter renamed to controller
Since it is also called controller in bluetoothctl
2022-05-06 16:37:48 +02:00
Daan Goossens 13df878bc3 refactor: logic for enumerating devices in tooltip 2022-05-06 16:37:40 +02:00
Alex 4592dd4a6c
Merge pull request #1527 from siikamiika/network-current-iface-bandwidth
network: calculate bandwidth for current interface
2022-05-05 09:44:44 +02:00
Daan Goossens 794610a1ca feat: display all connected devices in tooltip 2022-05-04 19:27:39 +02:00
Alex 7bbf7c99a3 fix: lint 2022-05-04 17:29:08 +02:00
Alex eec0a8255f
Merge pull request #1454 from Psykar/idle_inhibitor_timeout
Add a config to set a timeout for the idle_inhibitor module
2022-05-04 17:27:21 +02:00
Daan Goossens 638b4e6573 feat: extend bluetooth module 2022-05-02 18:11:21 +02:00
Bao Trinh 96746142d2
Backlight: don't reset value when failing to read
Avoids the brightness percentage resetting to 0 on intermittent failures
2022-04-21 22:19:05 -05:00
Bao Trinh 1af7191740
Backlight: avoid crash on getting brightness fails
Reading brightness value for backlight device can fail intermittently
(particularly when using ddcci-driver-linux). Handle this more
gracefully rather than crashing
2022-04-21 22:02:45 -05:00
Alex 89be55b00b
Merge pull request #1510 from towoe/sway-bar-show
Show hidden bar
2022-04-20 05:13:53 +02:00
Alex 23369aa14c
Merge pull request #1500 from RobertMueller2/clock-thread-sleep
Replace sleep_until with sleep_for to prevent clock from getting stuck with system time adjustment
2022-04-20 05:11:49 +02:00
siikamiika 7231c47244 network: calculate bandwidth for current interface 2022-04-18 13:56:30 +03:00
Felix Weilbach 3f123d9c4e sway/window: Add heuristics for finding icons
This adds heuristics for finding the applications icon.
2022-04-18 03:09:25 +02:00
Felix Weilbach fc6f5741b1 sway/window: Allow the user to change the size of the app icon
Fixes #1461
2022-04-17 23:57:57 +02:00
Felix Weilbach 45988b3dbb Sway/window: Only update icon from main thread
If Gtk objects get updated from other threads than the main thread GTK
can get confused. This is a regression of bcadf64031.

Fixes #1464, #1474
2022-04-17 22:55:58 +02:00
Rene D. Obermueller 4e3f91d237 Issue 1226/1497: align updates with times divisible by interval 2022-04-16 14:21:28 +02:00
Rene D. Obermueller e5d05baba3 Issue 1226/1497: Replace sleep_until with sleep_for to prevent clock from getting stuck with system time adjustment 2022-04-16 14:21:28 +02:00
Tobias Wölfel 7763d50691 Add reset behaviour of modifier key
Add an option to change the behaviour of the modifier key to reset the
visibility.
2022-04-15 20:04:58 +02:00
Tobias Wölfel 5a0e42cc76 Limit visibility updates
Prevent visibility updates to occur for inactive modules.
Check active modules and subscribe to only those events.
2022-04-15 20:04:56 +02:00
Tobias Wölfel 1dcd36b06c Show bar on sway mode
Display the bar if the sway mode is not the default mode.
2022-04-15 19:58:50 +02:00
Tobias Wölfel 93f9b3d213 Clear urgency hint with modifier press
If the modifier is pressed and release without another event, the
intended behaviour is to clear an urgency hint and hide the bar again.

Note that if multiple workspaces have the urgency hint set, the bar is
hidden again and an urgent workspace is focused, the bar does not stay
hidden anymore.
2022-04-15 19:55:06 +02:00
Alex 54b1df69a9 fix: lint clock 2022-04-15 14:39:13 +02:00
Alex 73cd156a7a
Merge pull request #1492 from LukashonakV/master
#1315. Add option to display week number on calendar
2022-04-15 14:37:46 +02:00
Tobias Wölfel e3700b924e Show bar if a workspace becomes urgent
Add a second reason to show the bar besides visible by modifier.
Update the visibility based on changes in the workspace urgency.
Check all workspaces for urgency and keep the bar visible if at least
one has an urgency hint.
2022-04-14 19:08:11 +02:00
Tobias Wölfel e8b022c096 Add disabled bluetooth style
Allow to set a different style if the bluetooth adapter is disabled.
2022-04-12 10:31:20 +02:00
Aleksei Bavshin 13fdbc13c3
refactor: change `enum ipc_command_type` to uint32_t
As we always use the enum to compare or initialize uint32_t values, it
would be better to declare it with the right type. This way we could
avoid `-Wnarrowing` warnings or unnecessary type casts.
2022-04-10 12:52:46 -07:00
Louis des Landes 1071b9f7c5 Add a config to set a timeout for the idle_inhibitor module 2022-04-10 22:47:52 +09:30
LukashonakV 6ad1f6b853
Merge branch 'master' into master 2022-04-10 09:54:50 +00:00
Alex a1129c4c87 fix: bsd 2022-04-06 14:55:08 +02:00
Alex f2fcadbf62 refactor: lint 2022-04-06 08:37:19 +02:00
LukashonakV 46f07d24dd
Merge branch 'master' into master 2022-04-05 15:28:55 +00:00
Alex d5b76bd8b5
Merge pull request #1495 from 0cc4m/master
Battery module support for rk817
2022-04-05 16:39:08 +02:00
vaxerski e094480684 Very basic hypr window title module 2022-04-02 21:08:43 +02:00
Viktar Lukashonak 4a457648f9
Waybar. Clock module. Calendar - custom output formats 2022-03-27 11:15:56 +03:00
0cc4m 3a95f8f599 Add battery module fallback for batteries without capacity or with _avg instead of _cur files 2022-03-26 19:42:06 +01:00
Erik Reider a7ed1ed570 Don't call dp.emit() when UPower service active status changes 2022-03-25 17:35:37 +01:00
Erik Reider e0f0931e2d Hide module if UPower service isn't running 2022-03-25 17:27:36 +01:00
Erik Reider 0140606226 Fixed segfault on upower service restart 2022-03-25 16:57:25 +01:00
Viktar Lukashonak 1d2a381b5f
Waybar. Clock module - weeknum fix for the left side 2022-03-25 18:51:59 +03:00
Erik Reider d1d73b5003 Added missing "fulL" and "empty" CSS classes 2022-03-25 14:57:04 +01:00
Erik Reider 2ca4dcac49 Set box widget name to "upower" 2022-03-25 14:52:12 +01:00
Viktar Lukashonak 2d87bcb1ab
https://github.com/Alexays/Waybar/issues/1315. Option to display week number on calendar 2022-03-24 15:41:50 +03:00
Erik Reider 84dc82e1c1 Added tooltip-padding 2022-03-21 13:50:46 +01:00
Erik Reider e06316c80b Only set label text if string doesn't only contain spaces 2022-03-20 00:36:53 +01:00
Erik Reider 7b071567ea Removed goto in update method 2022-03-20 00:36:13 +01:00
Erik Reider 2633ff3fb9 Fixed time_left string not being set properly 2022-03-19 23:10:15 +01:00
Erik Reider 0764e9ad6e Added format and format-alt config properties 2022-03-19 21:15:48 +01:00
Erik Reider c4282cfacc Made tooltip getDeviceIcon return const string 2022-03-19 19:22:21 +01:00
Erik Reider 05effad18b Added CSS status classes 2022-03-19 19:22:00 +01:00
Erik Reider 7fac2afb85 Added custom tooltip with device icon, device name and battery status 2022-03-19 17:09:55 +01:00
Erik Reider 4196e0d5d1 Unref all devices on destruct 2022-03-19 11:35:13 +01:00
Erik Reider 14a2a7027f Moved upower into its own directory 2022-03-19 11:34:34 +01:00
Erik Reider 2b2ac311d5 Fixed not visible when only battery is plugged in 2022-03-19 11:19:39 +01:00
Erik Reider 7345918f84 Added mutex locking to resetDevices 2022-03-19 11:18:51 +01:00
Erik Reider 105f1cefe1 Fixed device unrefed 2022-03-19 10:52:05 +01:00
Erik Reider 175d82858b Merge branch 'upower-module' of github.com:ErikReider/Waybar into upower-module 2022-03-19 10:48:43 +01:00
Erik Reider c8d785071f
Merge branch 'master' into upower-module 2022-03-19 10:48:02 +01:00
Alex 8c6063d181
Merge pull request #1485 from LukashonakV/master
Hide/Unhide temperature module when "format*" is empty.
2022-03-19 10:24:59 +01:00
momokrono fcf93a6c45 feat: added network speed in Bytes 2022-03-18 10:35:19 +01:00
Viktar Lukashonak 6946288053
PR #1485 review 2022-03-17 11:31:06 +03:00
Erik Reider 2a563f54e7 Change name to upower 2022-03-16 15:33:39 +01:00
Viktar Lukashonak 9f337db2d2
Hide/Unhide module when "format*" is empty. 2022-03-16 15:50:00 +03:00
Erik Reider 136b47ce0d Fixed percentage not getting rounded 2022-03-15 23:03:13 +01:00
Erik Reider 6eb187a23e Moved upower.*pp out of the upower directories 2022-03-15 23:00:09 +01:00
Erik Reider 9b9e42fc5f use device variable instead of getting the device from the map 2022-03-15 22:50:11 +01:00
Erik Reider d47073ef13 Reload all devices after wake from suspend 2022-03-15 22:49:40 +01:00
Erik Reider 5396ffb71f Added "icon-size" and "hide-if-empty" config options 2022-03-15 20:22:32 +01:00
Erik Reider 5e9faeb2d0 Now shows the percentage and the correct icon 2022-03-15 20:22:04 +01:00
Erik Reider 4ee81c8dea Added all callbacks 2022-03-15 17:54:06 +01:00
Viktar Lukashonak 37d87be3c1
Add supporting of the gamepads batteries 2022-03-14 17:53:19 +03:00
Viktar Lukashonak 8aee7492d4
Plug/Unplug batteries on hot(useful for gamepads) 2022-03-14 17:12:05 +03:00
Alex 5c1c07a035
Merge pull request #1480 from avdv/xkb-load-exotic-rules
sway/language: Load exotic xkb rules too
2022-03-13 22:32:00 +01:00
Claudio Bley caa24f0647 sway/language: Load exotic xkb rules too 2022-03-13 09:40:32 +01:00
Louis des Landes 8b6bc215cc
Fix freebsd action 2022-03-10 14:48:40 +01:00
Alex 6c7acf18b5
Update network.cpp 2022-03-10 09:53:02 +01:00
Alex b6655e475b
Merge branch 'master' into list_of_times 2022-03-08 09:59:22 +01:00
Alex 56ebb09e5f
Merge pull request #1440 from TheDaemoness/patch-1
Add 1 to songPosition in the MPD module
2022-03-06 14:51:20 +01:00
Alex 35d6da3965
Merge pull request #1292 from FlexW/feature/sway-app-icon
Show application icon when using sway window module
2022-03-06 14:50:41 +01:00
Alex be1d2a02ca
Merge pull request #1422 from technic/fixes
minor string utils methods refactoring
2022-03-06 14:50:02 +01:00
Grant Moyer ebe4424795 Fix remaining posix compatability issues in keyboard_state 2022-02-25 13:28:47 -05:00
Grant Moyer e3f56b8110 Don't use gnu extensions which are too new for debian and ubuntu 2022-02-25 13:13:43 -05:00
Grant Moyer 8f3fbebede Make error messages portable 2022-02-25 12:56:22 -05:00
Grant Moyer a595b61e0f Improve keyboard_state error messages 2022-02-25 12:27:08 -05:00
Jake Stanger 41dea6e46c
Merge branch 'master' into feat/image-module 2022-02-22 23:40:59 +00:00
Brent George 3c18c43b9a limit cpu load figure to 2 points 2022-02-22 16:33:33 -07:00
TheDaemoness ac20428fdf
Add 1 to songPosition in the MPD module 2022-02-18 17:41:33 -08:00
Dorian Rudolph 1a93a6cfa5 fix #1431: audio output does not update on unplug 2022-02-09 14:20:09 +01:00
Alex Maystrenko d4da04a750 move Glib ustring format helper to utils
this formatter is useful for other modules
which want to print Glib exceptions messages
2022-02-05 21:26:48 +01:00
Alex Maystrenko f3819ee954 remove duplicated string manipulation methods 2022-02-05 21:02:58 +01:00
Alex 12caae8fd2
Merge pull request #1410 from ErikReider/reverse-tray
Reverse the tray icon order
2022-02-02 12:56:25 +01:00
gemmelos 6be741afc9
Fix disabled tooltip on clock module
Seems like the tooltip text should only be set if both `if (tooltipEnabled())` and `if (config_["tooltip-format"].isString())` passes.
2022-02-02 12:41:06 +01:00
Erik Reider 941cf47693 Add config option "reverse-direction" 2022-01-28 19:14:46 +01:00
Erik Reider 32d42749f9 use pack_end instead of pack_start 2022-01-28 18:42:52 +01:00
Oto Šťáva f4f1267a71 sway/language: fix segmentation fault for layouts not found in XKBContext 2022-01-25 20:03:19 +01:00
Felix Weilbach bcadf64031 Show application icon when using sway window module
Signed-off-by: Felix Weilbach <felix.weilbach@t-online.de>
2022-01-24 17:37:51 +01:00
Alex 1c08d26af0
Merge branch 'master' into master 2022-01-24 09:23:23 +01:00
Alex c4cc7ae396
Update client.cpp 2022-01-24 09:22:47 +01:00
Alex 65dd245362
Update clock.cpp 2022-01-24 09:21:56 +01:00
Kevin Locke 27df7a9aa7 battery: read status with spaces
According to the [sysfs class power ABI],
/sys/class/power_supply/<supply_name>/status may contain "Not charging".
This is already handled by status_gt() and update() (where ' ' is
converted to '-' for use in config keys) but was not being read due to
skipws.  Read with std::getline() to handle this case.

[sysfs class power ABI]: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-power

Fixes: #1139
Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2022-01-23 18:36:59 -07:00
Jake Stanger a650c7d90c feat: image module
Module which renders an image onto the bar.
2022-01-16 23:55:13 +00:00
nullobsi 3a6e5be59d
Use locale when formatting clock 2022-01-14 10:36:24 -08:00
Alex 9ae99c2621
Merge pull request #1386 from Anakael/pr/anakael/add-swap-flags
[Memory] feat: Add swap flags
2022-01-12 11:08:50 +01:00
Aleksei Bavshin 7f6bef2049
fix(util): make waybar_time formatter compatible with fmt 8.1.0
Stop using private implementation details of the `formatter<std::tm>`.
We never needed anything from the class besides the format specifier,
which is easily obtainable with public API.
2022-01-07 22:34:00 -08:00
Aleksei Bavshin c0d84853ea
refactor(clock): extract waybar_time to util/waybar_time.hpp 2022-01-07 18:09:44 -08:00
mazunki 2301788a81 created a hotfix for libfmt-8.1.0 and above 2022-01-08 01:44:46 +01:00
mazunki d22d6a4522 Merge branch 'master' of github.com:Alexays/Waybar 2022-01-08 01:02:57 +01:00
Johannes Wienke 4a85ec0f59 fix: match sway workspace order with sway one
Ensure that sway workspaces are always displayed in the same order as
used internally by sway. The previous sorting code always sorted
unnumbered workspaces lexicographically. This isn't the order used by
sway internally. Therefore, commands such as "workspace next" might have
jumped arbitrarily in waybar.

This commit reworks the sorting code such that the internal order is
always obeyed. Additionally, numbered persistent workspaces are inserted
at their natural position at the front of the workspace list while
unnumbered ones are appended. This should match the expectations of
workspace ordering known from sway's behavior.

The changes make the configuration property "numeric-first" unnecessary
as this will always be the case now. There's also no reasonable way
around this behavior now. Otherwise, persistent workspaces would jump
around in the visual representation as soon as they become known to
sway.

Fixes #802
2022-01-07 10:26:27 +01:00
bd-g 7b9b10afc6
Merge branch 'master' into master 2021-12-26 20:14:26 -07:00
Alex 8ec321ddaf
Merge pull request #1221 from Anakael/pr/anakael/add-name-to-taskbar
[Taskbar] feat: Add name format replacementf feat: Add app ids mapping (ready for review)
2021-12-23 23:01:21 +01:00
Brent George 13d25d403e add to network module - signalStrengthApp shows what applications can run at current signal strength 2021-12-14 11:37:39 -07:00
Brent George 3218612d3b change frequency to GHz 2021-12-14 11:36:46 -07:00
Brent George 9bc86347be change signal strength to penalize overly strong signals 2021-12-14 11:34:15 -07:00
Alex 9b399ea2bb
Merge pull request #1334 from bd-g/master
Adjust max wifi strength that is possible
2021-12-14 07:43:41 +01:00
Alex 9608e0dabf
Merge pull request #1341 from fhost/fhost/logind
Add logind feature, with its 'inhibitor' module
2021-12-14 07:43:15 +01:00
aashu ad20c0af2d
Merge branch 'master' into master 2021-12-14 10:22:25 +05:30
Alexis Cellier eae65099d0 Add logind feature, with its 'inhibitor' module
The logind feature adds a new inhibitor module which allows to acquire
the inhibitor locks that logind presents.

Signed-off-by: Alexis Cellier <kernelserror@gmail.com>
2021-12-12 17:52:26 +01:00
Brent George 2240c79b1a Adjust max wifi strength that is possible 2021-12-01 18:24:35 -07:00
Sergey Mishin ece86c96d7
Feature Clock: show list of time in other timezones in a tooltip
Introducing new tooltip placeholder: {timezoned_time_list}. It will be replaced with the list of times in different time zones.
I've found it useful to hover the mouse pointer on time and see time in all my timezones at once.
Current timezone excluding from the list, so if you will scroll over the time module and change the active timezone, this timezone will be excluded from the list and the previous active zone will be added.
2021-12-01 17:08:05 +00:00
Alex 9e8a71c4ef
Merge pull request #1277 from dartkron/master
Refactor Clock: generalize multi timezones and single timezone cases
2021-12-01 11:51:35 +01:00
Alex 7069429c03
Merge pull request #1229 from kraftwerk28/sway-language-country-flag
`sway/language` country flag
2021-12-01 11:49:39 +01:00
Alex 05f7727dae
Merge branch 'master' into swaybar-ipc 2021-12-01 11:48:03 +01:00
Patrick Nicolas 9dac851f6d Allow sink in addition to source for pulse icon 2021-11-30 16:31:41 +01:00
Aleksei Bavshin cf5ddb2a5e
fix(swaybar-ipc): avoid unnecessary copy of struct swaybar_config 2021-11-28 11:34:21 -08:00
mazunki bb7b376fa6 removed commented useless runtime errors 2021-11-24 01:37:21 +01:00
kraftwerk28 89afa8e149 Checking if emoji byte doesn't get out of bounds 2021-11-24 02:15:10 +02:00
kraftwerk28 59040c53e4 Move definition to .cpp 2021-11-24 02:15:10 +02:00
kraftwerk28 0472d279e4 Add {flag} format replacement 2021-11-24 02:15:10 +02:00
dmitry 166504256a Merge branch 'master' of https://github.com/Alexays/Waybar into pr/anakael/add-name-to-taskbar 2021-11-23 23:10:49 +03:00
Aleksei Bavshin 2290fe10aa
fix(bar): handle ipc connection errors.
Try to use the default bar id (`bar-0`) if none is set.
2021-11-23 08:46:58 -08:00
Alex 6712cd05a3
Merge branch 'master' into disk 2021-11-23 13:54:17 +01:00
Alex 0a4841371b
Merge branch 'master' into workspace-manager-implementation 2021-11-23 13:52:08 +01:00
Alex c51a973d60
Revert "dont escape essid in tooltip" 2021-11-23 10:10:14 +01:00
Alex 5a5f8c3b9f
Merge pull request #1256 from WuerfelDev/patch-1
dont escape essid in tooltip
2021-11-23 10:04:59 +01:00
Alex b1dc3005b7
Merge pull request #1294 from Anakael/pr/anakael/ignore-by-title
feat: Ignore by title
2021-11-23 10:03:41 +01:00
dmitry 98f7a10a51 Fix sort 2021-11-23 03:18:00 +03:00
dmitry 23991b6543 Finish 2021-11-23 03:10:44 +03:00
Alex 331dfa87da
Merge pull request #1230 from ciarand/if-changes-isolate
Switch network module to read /proc/net/dev
2021-11-22 08:00:54 +01:00
Aleksei Bavshin 6bfb674d1b
fix(swaybar-ipc): better logs 2021-11-21 17:28:47 -08:00
dmitry ef4c6a9ba3 Update to proto. Fix displaying. Rename classes. 2021-11-22 01:12:55 +03:00
dmitry ffeecf626c Update names 2021-11-21 15:01:25 +03:00
Anakael 60c1706273
Update taskbar.cpp 2021-11-19 18:54:37 +03:00
dmitry 15761ef802 Merge branch 'master' of https://github.com/Alexays/Waybar into workspace-manager-implementation 2021-11-16 21:44:50 +03:00
John Fredriksson ad3f46214d river/tags: Add possibility for mouse clicks
Left mouse click - set-focused-tags
Right mouse click - toggle-focused-tags
2021-11-15 22:31:38 +01:00
Alex 9fda6695ea
Merge pull request #1314 from Scrumplex/fix-negative-mpd-vol
Ensure MPD volume is not negative
2021-11-12 09:04:21 +01:00
Sefa Eyeoglu b24f9ea569
Ensure MPD volume is not negative
If the primary output does not support changing volume MPD will report
-1. Ensure that negative volume levels will be represented as 0 instead.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2021-11-11 21:42:05 +01:00
mazunki e10c9dd011 changing want_route_dump to default to true, since we say we have gwaddr support 2021-11-09 19:04:05 +01:00
mazunki b0eab5d793 maybe we shouldn't actually runtime error, but still doing a check 2021-11-09 19:03:15 +01:00
mazunki 17bb5643ae explicitly checking for errors to silence unused variable warnings when writing to fd 2021-11-09 18:38:07 +01:00
Marwin Glaser decb13eef0
mark zfs arc size as free in memory 2021-10-28 19:10:46 +02:00
dmitry 75a6dddea5 Finish 2021-10-20 01:23:00 +03:00
Ashutosh Malviya 08b4a83331 Add reverse scrolling config option for pulseaudio
When natural scrolling is enabled, the behaviour of scrolling on pulseaudio
module is reversed, this commit reverses the direction of scroll variable
if "reverse-scrolling" is set to 1 in config file.
2021-10-15 19:07:25 +05:30
Sergey Mishin c5e4d26320
Fix working without timezone 2021-10-05 10:20:06 +00:00
Sergey Mishin d8bc6c92bb
Fix style and spelling 2021-10-05 09:55:30 +00:00
Sergey Mishin 110c66dd32
Refactor Clock: generalize multi timezones and single timezone cases
After this refactoring:
1. Timezones parses only once on start and the we refer to saved values. All time_zone.isString() checks gone to the constructor.
2. Single timezone case handling as case of multi timezoned logic.
3. Scroll event seems more clear now.
4. Tooltip template parses on start to check if there calendar placeholder or not. To do not calculate calendar_text() if not necessary.
2021-10-03 16:57:55 +00:00
Alex 6eb9606f23
Merge pull request #1274 from RobertMueller2/master
sway/window: include floating_nodes when considering window count for class
2021-10-03 10:27:26 +02:00
Sergey Mishin 174db444d6
Fix Clock crash on empty string in timezones field
Also fixed timezones behavior: now waybar starting with the first timezone in timezones list and falling back to timezone field only if timezones omit or has no elements.
2021-10-03 03:27:54 +00:00
Rene D. Obermueller 9972384597 sway/window: include floating_nodes when considering window count for class 2021-10-02 18:35:38 +02:00
Elyes HAOUAS f18eb71ad7 Fix spelling errors
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2021-10-02 18:13:17 +02:00
Aleksei Bavshin fbedc3d133
fix(tray): fix visibility of Passive items
`show_all` call from `Tray::update` attempts to walk the widget tree and
make every widget visible. Since we control individual tray item
visibility based on `Status` SNI property, we don't want that to happen.

Modify `Tray::update` to control the visibility of a whole tray module
only and ensure that the children of `Item` are still visible when
necessary.
2021-10-02 00:08:45 -07:00
WuerfelDev 8d04da1551
dont escape essid in tooltip
just like https://github.com/Alexays/Waybar/pull/834 but for the network name.
2021-09-21 13:15:36 +02:00
Alex 8534175c59
Merge pull request #1252 from gavinbeatty/fix-sway-language-tabs
sway/language: remove tabs, indent with 2 spaces
2021-09-19 19:08:28 +02:00
Darkclainer 6e5a0bc80a Add cpu usage for every core 2021-09-19 14:02:25 +03:00
Gavin Beatty fe547901fa sway/language: remove tabs, indent with 2 spaces 2021-09-18 15:28:45 -05:00
Alex 67c7302938
Revert "Add CPU usage for every core" 2021-09-18 13:50:16 +02:00
Alex 8489646b66
Merge pull request #1250 from Darkclainer/master
Add CPU usage for every core
2021-09-18 13:48:39 +02:00
Alex 6938921e92
Merge pull request #1239 from mazunki/default-gateway
Added support for {gwaddr} as a variable
2021-09-18 13:47:32 +02:00
mazunki 1c91c71dcd updated original debug message with gateway ip, similar, yet not identical to `ip route` 2021-09-18 02:09:25 +02:00
mazunki 5f083193e4 fixed tab indentation to spaces, removed debug 2021-09-18 01:12:58 +02:00
Darkclainer a51ac59252 Merge remote-tracking branch 'origin/master' 2021-09-17 22:30:31 +03:00
Alex ce9e8aead3
Merge pull request #1222 from mswiger/use_g_memdup2
Use g_memdup2 instead of g_memdup
2021-09-17 20:56:47 +02:00
Darkclainer 4bf577e89b Add CPU usage for every core 2021-09-17 21:18:21 +03:00
Rolf Vidar Mazunki Hoksaas 2c380a53ca added support for the {gwaddr} variable 2021-09-09 20:05:18 +02:00
Matan1x aacd0fcc65 round brightness 2021-09-08 17:12:30 +03:00
Michael Swiger 4f76c9bd43 Only use g_memdup2 for glib >= 2.68 2021-08-29 13:11:04 -07:00
dmitry 94e53c3777 Add swap flags 2021-08-29 16:34:29 +03:00
dmitry 12c42fc6e4 Merge branch 'master' of https://github.com/Alexays/Waybar into pr/anakael/add-name-to-taskbar 2021-08-27 01:43:31 +03:00
Ciaran Downey 5186dd27e6 Use while (getline) instead of a for loop
Also make the comments surrounding the /proc/net/dev parsing clearer and
remove the apparently redundant "is the netdev file still good?" check.
2021-08-26 11:33:52 -07:00
Ciaran Downey 9d9f959769 Switch network module to read /proc/net/dev
This fixes issue #610 by reading bandwidth usage per-interface from
/proc/net/dev instead of globally via /proc/net/netstat. It supports the
same matching logic as elsewhere, so setting interface to '*' should
display the same sum-total bandwidth usage as the previous
implementation.
2021-08-25 15:00:05 -07:00
Tobias Bengfort 7b4b5e55a2 support format-icon for cpu und memory 2021-08-23 07:30:19 +02:00
Michael Swiger cb49650ea4 Use g_memdup2 instead of g_memdup
This fixes a compile warning.

See: https://discourse.gnome.org/t/port-your-module-from-g-memdup-to-g-memdup2-now/5538
2021-08-22 14:46:40 -07:00
dmitry 38afa345dd Finish 2021-08-22 20:18:03 +03:00
Gavin Beatty 9ee701974f
Fix memory leak and data race
- Delete previous Layout before creating next one, and in destructor
- Use stack XKBContext instead of local new+delete
- Lock mutex in update() as it is called from a different thread than onEvent(res)
2021-08-20 10:06:35 -05:00
Alex 8940c3bbe8
Merge pull request #1211 from mswiger/fix_multi_display_tray_icon_scaling
Fix tray icon scaling on multi-display setups
2021-08-20 17:00:41 +02:00
dmitry c058a2d196 Add number to shortDescripton 2021-08-20 01:09:16 +03:00
Isaac Freund 024fd42e27
river/tags: support urgent tags
Upstream river has a concept of urgent views/tags as of commit e59c2a73.
Introduce a new urgent style to expose this in the waybar module.
2021-08-19 15:01:49 +02:00
Michael Swiger 2d80d31527 Fix tray icon scaling on multi-display setups 2021-08-16 23:33:29 -07:00
dmitry a87a967a97 Fix leak 2021-08-17 05:29:35 +03:00
dmitry a57e431437 Add shortDescription 2021-08-17 05:28:41 +03:00
dmitry 61783aafaa save 2021-08-17 04:31:17 +03:00
Michael Swiger 4f6a9b1bc2 Fix incorrect tray icon scaling 2021-07-31 18:01:31 -07:00
Alex 65166109c9
Merge branch 'master' into fix_power_calc 2021-07-25 15:07:01 +02:00
dmitry 68e4457f3a Add tooltip-formay 2021-07-24 17:24:37 +03:00
Alex 445ad22580
Merge branch 'master' into keyboard_state 2021-07-23 15:59:08 +02:00
Grant Moyer 88a5f713ed Prefer keyboard-state over keyboard_state 2021-07-23 09:45:07 -04:00
Alex b47705ac21
Merge branch 'master' into pr/anakael/sway-language-impr 2021-07-23 09:07:43 +02:00
Aleksei Bavshin a5fe6f40b8
feat(tray): handle Status property
On the `Passive` value of `Status` tray items would be hidden unless
`show-passive-items` is set to true.
On the `NeedsAttention` value of `Status` tray items will have a
`.needs-attention` CSS class.
2021-07-22 08:04:06 -07:00
Aleksei Bavshin 245f7f4b11
feat(tray): handle scroll events 2021-07-22 08:04:05 -07:00
Aleksei Bavshin 1418f96e46
feat(tray): fallback to Title for items without ToolTip 2021-07-22 08:04:04 -07:00
Aleksei Bavshin 84a8f79bbe
feat(tray): implement tooltips (text only) for tray items 2021-07-22 08:04:03 -07:00
Aleksei Bavshin 4b6253e810
refactor(tray): infer changed properties from signal name
Comparing two GVariants is too expensive; let's collect the set of
properties updated by each signal and apply them unconditionally.
2021-07-22 08:04:00 -07:00
Aleksei Bavshin 929fc16994
fix(tray): ignore unused WindowId property 2021-07-22 08:01:25 -07:00
Alex 100d4d3499
Merge branch 'master' into pr/anakael/sway-language-impr 2021-07-21 09:40:19 +02:00
Michael Swiger 1440ed29d4 Fix blurry tray icons for HiDPI displays 2021-07-20 22:29:34 -07:00
Grant Moyer 311c5779ea Remove unused variable 2021-07-20 23:03:41 -04:00
Grant Moyer 08e886ebc6 Search for device automatically if none given 2021-07-20 21:09:00 -04:00
Grant Moyer 40e6360722 Update css class when locked/unlocked 2021-07-20 21:09:00 -04:00
Grant Moyer 642e28166b Add more configuaration 2021-07-20 21:09:00 -04:00
Grant Moyer 6dfa31fb17 Basic keyboard state module 2021-07-20 21:09:00 -04:00
Lars Christensen 6f2bfd43bf Fix pulseaudio icon name compilation error 2021-07-20 15:25:05 +02:00
Alex f43f8773c4
Merge pull request #1169 from roosemberth/pa-control-active-sink
pulseaudio: Control currently running sink
2021-07-20 14:01:23 +02:00
Roosembert Palacios 86a43b9042
pulseaudio: Control currently running sink
In a system with multiple sinks, the default sink may not always be
the once currently being used. It is more useful to control the
currently active sink rather than an unused one.

This patch does not make any difference if the system only uses the
default sink.

Signed-off-by: Roosembert Palacios <roosemberth@posteo.ch>
2021-07-20 10:16:53 +02:00
Patrick Nicolas 9c2b5efe7b Support per-device icon in pulseaudio 2021-07-15 09:20:43 +02:00
dmitry 8310700bbb Improve sway/language 2021-07-13 04:33:12 +03:00
John Helmert III 368e4813de
libfmt >=8.0.0 compatibility 2021-06-30 13:12:38 -05:00
Anthony PERARD 194f4c2f18 network: Fix mix use of default and state specific format
Whenever the network module is configured with both "format" and
"format-$state" and when the module use "format-$state" once, it
override the value that was saved from "format".

For example, if both "format" and "format-disconnect" are configured,
and only those, as soon as the module show information about a
disconnected interface, it will keep showing the format for
disconnected, even if the interface is connected again later.

Fix that by always setting a value to default_format_ in update() and
thus use the intended default format when needed.

Fixes #1129
2021-06-08 18:50:32 +01:00
Alex 9e34be7b16
Merge pull request #1126 from tperard/fix-network-auto-detection
Fix network interface auto detection
2021-06-05 18:06:30 +02:00
Anthony PERARD 33617b67f0 network: Fix one case where default route is deleted without notification
When an interface's state is change to "down", all the route
associated with it are deleted without an RTM_DELROUTE event.

So when this happen, reset the module to start looking for a new
external interface / default route.

Fixes #1117
2021-06-05 16:52:04 +01:00
Anthony PERARD efaac20d82 network: Handle ip route priority
When there's a new default route with higher priority, switch to it.
2021-06-05 16:51:54 +01:00
Anthony PERARD ce97df34e6 network: Also clear ifname in clearIface()
Since we reset `ifid_`, clear `ifname_` as well.
2021-06-05 16:51:40 +01:00
Anthony PERARD 23b9923eeb network: Parse whole RTM_NEWROUTE msg before interpreting it
The check to figure out if we have the default route should be after
the for loop that parses the route attributes, to avoid acting on
incomplete information. We are going to use more fields from the
message.
2021-06-05 16:51:35 +01:00
Maxim Baz 999c1b6b81
sway-language: ignore events with empty layout 2021-06-05 15:03:52 +02:00
Amanieu d'Antras 1a98ecf6b0
Merge branch 'master' into fix_power_calc 2021-05-30 11:17:54 +01:00
Anthony PERARD f49a7a1acb network: Update WiFi information when available
The module doesn't update the `essid_` as soon as a WiFi interface is
connected, but that happens at some point later, depending on
"interval" configuration.

Fix that by rerunning the get WiFi information thread when the
`carrier` state changes. Also, we will clear the state related to WiFi
when the connection is drop to avoid stale information.
2021-05-27 19:36:14 +01:00
Anthony PERARD 28dfb0ba41 network: Fix use of carrier information
Some RTM_NEWLINK messages may not have the IFLA_CARRIER information.
This is the case when a WiFi interface report scan result are
available. `carrier` is used regardless of if it is present in the
message or not. This would result in the interface appearing
"disconnected" in waybar when it isn't.

This patch now check that `carrier` is available before using it.

The same thing could potentially happen to `ifname` so check if it's
set before recording it.

Fixes: c1427ff (network: Handle carrier information)
Fixes #388
2021-05-26 19:23:20 +01:00
Anthony PERARD c1427ff807 network: Handle carrier information
IFLA_CARRIER allows to know when a cable is plugged to the Ethernet
card or when the WiFi is connected. If there's no carrier, the
interface will be considered disconnected.
2021-05-15 16:38:00 +01:00
Anthony PERARD 0bb436f949 network: Rework interface auto detection, handle route change events
Last part of the rework of handleEvents(), this time we take the
getExternalInterface() function and add it to the handleEvents()
function. That way, waybar can react immediately when a new "external
interface" is available and doesn't need to probe. Also that avoid to
have two different functions consuming from the same socket and we
don't need to recode some of the functions that are already available
via libnl (to send and receive messages).
2021-05-15 16:38:00 +01:00
Anthony PERARD 0fc7ef6685 network: Rework address lookup to use only events
In order to get the IP address of an interface, we can get the
information out of NEWADDR events without needed to call getifaddrs().
And when now events are expected, we can requests a dump of all
addresses and handle addresses changes the same way via handleEvents()
only.
2021-05-15 16:38:00 +01:00
Anthony PERARD c9bbaa7241 network: Rework initial interface search by using a dump
Instead of using an alternative way to list all links in order to
choose one when an "interface" is in the configuration, we can ask for
a dump of all interface an reuse the handleEvents() function.

This patch also start to rework the handleEvents() function to grab
more information out of each event, like the interface name.
2021-05-15 16:38:00 +01:00
Anthony PERARD 63fdf66ad6 network: Read all available messages on ev_sock_
When more than one message is available to read on the ev_sock_
socket, only the first one is read.

Make some changes to be able to read all the messages available by
setting the socket to non-blocking. This way we can detect when
there's nothing left to read and loop back to wait with epoll.
2021-05-15 16:38:00 +01:00
Anthony PERARD 9357a6cb88 network: Start the module with some text in the label_
Fix modules starting with no text, but not hidding.

Start with some "text" in the module's label_, update() will then
update it. Since the text should be different, update() will be able
to show or hide the event_box_. This is to work around the case where
the module start with no text, but the the event_box_ is shown.
2021-05-15 16:38:00 +01:00