summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--experiments/volume/widgets/icon-and-text-widget.lua26
-rw-r--r--experiments/volume/widgets/icon-widget.lua26
2 files changed, 35 insertions, 17 deletions
diff --git a/experiments/volume/widgets/icon-and-text-widget.lua b/experiments/volume/widgets/icon-and-text-widget.lua
index 5ea626b..5517f11 100644
--- a/experiments/volume/widgets/icon-and-text-widget.lua
+++ b/experiments/volume/widgets/icon-and-text-widget.lua
@@ -21,21 +21,31 @@ function widget.get_widget()
widget = wibox.widget.textbox
},
layout = wibox.layout.fixed.horizontal,
+ is_muted = true,
set_volume_level = function(self, new_value)
self:get_children_by_id('txt')[1]:set_text(new_value)
- local new_value_num = tonumber(new_value)
local volume_icon_name = ''
- if (new_value_num >= 0 and new_value_num < 33) then
- volume_icon_name="audio-volume-low-symbolic"
- elseif (new_value_num < 66) then
- volume_icon_name="audio-volume-medium-symbolic"
+ if self.is_muted then
+ volume_icon_name = 'audio-volume-muted-symbolic.svg'
else
- volume_icon_name="audio-volume-high-symbolic"
+ local new_value_num = tonumber(new_value)
+ if (new_value_num >= 0 and new_value_num < 33) then
+ volume_icon_name="audio-volume-low-symbolic"
+ elseif (new_value_num < 66) then
+ volume_icon_name="audio-volume-medium-symbolic"
+ else
+ volume_icon_name="audio-volume-high-symbolic"
+ end
end
self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. volume_icon_name .. '.svg')
end,
- mute = function(self) self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. 'audio-volume-muted-symbolic.svg') end,
- unmute = function() end,
+ mute = function(self)
+ self.is_muted = true
+ self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. 'audio-volume-muted-symbolic.svg')
+ end,
+ unmute = function(self)
+ self.is_muted = false
+ end,
}
diff --git a/experiments/volume/widgets/icon-widget.lua b/experiments/volume/widgets/icon-widget.lua
index 6725e6d..2a20dde 100644
--- a/experiments/volume/widgets/icon-widget.lua
+++ b/experiments/volume/widgets/icon-widget.lua
@@ -15,21 +15,29 @@ function widget.get_widget()
valign = 'center',
layout = wibox.container.place,
set_volume_level = function(self, new_value)
- local new_value_num = tonumber(new_value)
local volume_icon_name = ''
- if (new_value_num >= 0 and new_value_num < 33) then
- volume_icon_name="audio-volume-low-symbolic"
- elseif (new_value_num < 66) then
- volume_icon_name="audio-volume-medium-symbolic"
+ if self.is_muted then
+ volume_icon_name = 'audio-volume-muted-symbolic.svg'
else
- volume_icon_name="audio-volume-high-symbolic"
+ local new_value_num = tonumber(new_value)
+ if (new_value_num >= 0 and new_value_num < 33) then
+ volume_icon_name="audio-volume-low-symbolic"
+ elseif (new_value_num < 66) then
+ volume_icon_name="audio-volume-medium-symbolic"
+ else
+ volume_icon_name="audio-volume-high-symbolic"
+ end
end
self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. volume_icon_name .. '.svg')
end,
- mute = function(self) self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. 'audio-volume-muted-symbolic.svg') end,
- unmute = function() end,
+ mute = function(self)
+ self.is_muted = true
+ self:get_children_by_id('icon')[1]:set_image(WIDGET_DIR .. 'audio-volume-muted-symbolic.svg')
+ end,
+ unmute = function(self)
+ self.is_muted = false
+ end
}
-
end
return widget \ No newline at end of file