summaryrefslogtreecommitdiff
path: root/volumearc-widget
diff options
context:
space:
mode:
Diffstat (limited to 'volumearc-widget')
-rw-r--r--volumearc-widget/README.md7
-rw-r--r--volumearc-widget/volumearc.lua5
2 files changed, 9 insertions, 3 deletions
diff --git a/volumearc-widget/README.md b/volumearc-widget/README.md
index 5fc0a5b..8f13bbf 100644
--- a/volumearc-widget/README.md
+++ b/volumearc-widget/README.md
@@ -25,6 +25,7 @@ It is possible to customize widget by providing a table with all or some of the
| `inc_volume_cmd` | `amixer -D pulse sset Master 5%+` | Increase volume level |
| `dec_volume_cmd` | `amixer -D pulse sset Master 5%-` | Decrease volume level |
| `tog_volume_cmd` | `amixer -D pulse sset Master toggle` | Mute / unmute |
+| `button_press` | `function(_, _, _, button) <sane default logic> end` | Overwrite the 'button\_press' signal for this widget |
### Example:
@@ -33,7 +34,11 @@ volumearc_widget({
main_color = '#af13f7',
mute_color = '#ff0000',
thickness = 5,
- height = 25
+ height = 25,
+ button_press = function(_, _, _, button) -- Overwrites the button press behaviour to open pavucontrol when clicked
+ if (button == 1) then awful.spawn('pavucontrol --tab=3', false)
+ end
+ end
})
```
diff --git a/volumearc-widget/volumearc.lua b/volumearc-widget/volumearc.lua
index eb2ff68..c582c10 100644
--- a/volumearc-widget/volumearc.lua
+++ b/volumearc-widget/volumearc.lua
@@ -69,7 +69,7 @@ local function worker(args)
or { main_color }
end
- volumearc:connect_signal("button::press", function(_, _, _, button)
+ local button_press = args.button_press or function(_, _, _, button)
if (button == 4) then awful.spawn(inc_volume_cmd, false)
elseif (button == 5) then awful.spawn(dec_volume_cmd, false)
elseif (button == 1) then awful.spawn(tog_volume_cmd, false)
@@ -78,7 +78,8 @@ local function worker(args)
spawn.easy_async(get_volume_cmd, function(stdout, stderr, exitreason, exitcode)
update_graphic(volumearc, stdout, stderr, exitreason, exitcode)
end)
- end)
+ end
+ volumearc:connect_signal("button::press", button_press)
watch(get_volume_cmd, 1, update_graphic, volumearc)