From 83376adcfa67d16f073e883f116116dd0efb7a0a Mon Sep 17 00:00:00 2001 From: streetturtle Date: Sat, 22 Feb 2020 13:19:01 -0500 Subject: [PATCH] [battery-widget] make path to the icons customizable (#102) --- battery-widget/README.md | 24 ++++++++++++++++++++---- battery-widget/battery.lua | 10 +++++----- battery-widget/spaceman.jpg | Bin 0 -> 16738 bytes 3 files changed, 25 insertions(+), 9 deletions(-) create mode 100644 battery-widget/spaceman.jpg diff --git a/battery-widget/README.md b/battery-widget/README.md index 710f8b2..d5eb233 100644 --- a/battery-widget/README.md +++ b/battery-widget/README.md @@ -21,16 +21,32 @@ It is possible to customize widget by providing a table with all or some of the | Name | Default | Description | |---|---|---| -| `font` | Font | Play 8 | +| `font` | Play 8 | Fond | +| `path_to_icons` | `/usr/share/icons/Arc/status/symbolic/` | Path to the folder with icons* | | `show_current_level`| false | Show current charge level | -| `margin_right`|0| the right margin of the widget| -| `margin_left`|0| the left margin of the widget| +| `margin_right`|0| The right margin of the widget| +| `margin_left`|0| The left margin of the widget| | `notification` | `false` | Display a notification on mouseover | | `notification_position` | `top_right` | The notification position | | `warning_msg_title` | _Huston, we have a problem_ | Title of the warning popup | | `warning_msg_text` | _Battery is dying_ | Text of the warning popup | | `warning_msg_position` | `bottom_right` | Position of the warning popup | -| `warning_msg_icon` | ~/.config/awesome/awesome-wm-widgets/batteryarc-widget/spaceman.jpg | Icon of the warning popup | +| `warning_msg_icon` | ~/.config/awesome/awesome-wm-widgets/battery-widget/spaceman.jpg | Icon of the warning popup | + +*Note: the widget expects following icons be present in the folder: + + - battery-caution-charging-symbolic.svg + - battery-empty-charging-symbolic.svg + - battery-full-charged-symbolic.svg + - battery-full-symbolic.svg + - battery-good-symbolic.svg + - battery-low-symbolic.svg + - battery-caution-symbolic.svg + - battery-empty-symbolic.svg + - battery-full-charging-symbolic.svg + - battery-good-charging-symbolic.svg + - battery-low-charging-symbolic.svg + - battery-missing-symbolic.svg ## Installation diff --git a/battery-widget/battery.lua b/battery-widget/battery.lua index ae7f9e7..b1a322c 100644 --- a/battery-widget/battery.lua +++ b/battery-widget/battery.lua @@ -19,7 +19,6 @@ local dpi = require('beautiful').xresources.apply_dpi -- Battery 0: Discharging, 75%, 01:51:38 remaining -- Battery 0: Charging, 53%, 00:57:43 until charged -local PATH_TO_ICONS = "/usr/share/icons/Arc/status/symbolic/" local HOME = os.getenv("HOME") local battery_widget = {} @@ -27,6 +26,7 @@ local function worker(args) local args = args or {} local font = args.font or 'Play 8' + local path_to_icons = args.path_to_icons or "/usr/share/icons/Arc/status/symbolic/" local show_current_level = args.show_current_level or false local margin_left = args.margin_left or 0 local margin_right = args.margin_right or 0 @@ -39,10 +39,10 @@ local function worker(args) local warning_msg_position = args.warning_msg_position or 'bottom_right' local warning_msg_icon = args.warning_msg_icon or HOME .. '/.config/awesome/awesome-wm-widgets/batteryarc-widget/spaceman.jpg' - if not gfs.dir_readable(PATH_TO_ICONS) then + if not gfs.dir_readable(path_to_icons) then naughty.notify{ title = "Battery Widget", - text = "Folder with icons doesn't exist: " .. PATH_TO_ICONS, + text = "Folder with icons doesn't exist: " .. path_to_icons, preset = naughty.config.presets.critical } end @@ -75,7 +75,7 @@ local function worker(args) notification = naughty.notify{ text = stdout, title = "Battery status", - icon = PATH_TO_ICONS .. batteryType .. ".svg", + icon = path_to_icons .. batteryType .. ".svg", icon_size = dpi(16), position = position, timeout = 5, hover_timeout = 0.5, @@ -167,7 +167,7 @@ local function worker(args) batteryType = string.format(batteryType, '') end - widget.icon:set_image(PATH_TO_ICONS .. batteryType .. ".svg") + widget.icon:set_image(path_to_icons .. batteryType .. ".svg") -- Update popup text -- battery_popup.text = string.gsub(stdout, "\n$", "") diff --git a/battery-widget/spaceman.jpg b/battery-widget/spaceman.jpg new file mode 100644 index 0000000000000000000000000000000000000000..73ddaf3757a16476b4a5de7bac8d5956f740a355 GIT binary patch literal 16738 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 Jcoq0s`#