diff --git a/modules/volume/widget-old.lua b/modules/volume/widget-old.lua deleted file mode 100755 index f6451df..0000000 --- a/modules/volume/widget-old.lua +++ /dev/null @@ -1,133 +0,0 @@ -local volume = req_rel(..., "util") -local widget = {} - - -widget.icon = wibox.widget { - resize = true, - image = beautiful.icons.volume.mute, - widget = wibox.widget.imagebox -} - -widget.arc = wibox.widget { - { - widget.icon, - top = beautiful.dpi(1), - bottom = beautiful.dpi(1), - layout = wibox.container.margin, - }, - max_value = 1, - thickness = beautiful.dpi(4), - start_angle = 4.71238898, -- 2pi*3/4 - --forced_height = beautiful.dpi(16), - --forced_width = beautiful.dpi(16), - colors = {"#27D4CC", "#00446B"}, - bg = "#FFFFFF30", - paddings = beautiful.dpi(2), - rounded_edge = true, - widget = wibox.container.arcchart -} - -widget.bar = wibox.widget { - max_value = 100, - value = 0, - --forced_height = 20, - forced_width = beautiful.dpi(50), - paddings = 0, - border_width = 0, - color = { - type = "linear", - from = {0, 0}, to = {beautiful.dpi(50), 0}, - stops = { { 0, "#27D4CC" }, { 1, "#00446B" }} - }, - background_color = "#FFFFFF30", - widget = wibox.widget.progressbar, - shape = gears.shape.rounded_bar, -} - - -widget.widget = wibox.widget { - { - { -- Right space - widget = wibox.widget.separator, - color = beautiful.color.transparent, - forced_width = beautiful.dpi(3) - }, - { - widget.arc, - top = beautiful.dpi(2), - bottom = beautiful.dpi(2), - layout = wibox.container.margin, - }, - { -- Left space - widget = wibox.widget.separator, - color = beautiful.color.transparent, - forced_width = beautiful.dpi(3) - }, - layout = wibox.layout.align.horizontal, - }, - layout = wibox.container.background, -} - -widget.widget:connect_signal("mouse::enter", function(result) - widget.widget.bg = beautiful.color.bar.hover_bg - awesome.emit_signal("module::volume:popup_show_stay") -end) - -widget.widget:connect_signal("mouse::leave", function(result) - widget.widget.bg = beautiful.color.transparent - awesome.emit_signal("module::volume:popup_show") -end) - -widget.widget:connect_signal("button::press", - function(_, _, _, button, mods) - - -- Left-click - if (button == 1) then - volume.toggle_mute() - - -- Scroll up - elseif (button == 4) then - volume.volume_up(config.volume.scroll_step) - - -- Scroll down - elseif (button == 5) then - volume.volume_down(config.volume.scroll_step) - end - awesome.emit_signal("module::volume:popup_show_stay") - end -) - -awesome.connect_signal("module::volume:update", - function(status) - if (status.value == false) then - widget.icon.image = beautiful.icons.volume.error - widget.arc.value = 100; - widget.bar.value = 100; - return - end - - widget.arc.value = status.value / 100; - widget.bar.value = status.value; - - - if (status.mute) then - -- Set muted icon - widget.icon.image = beautiful.icons.volume.mute - else - -- Set icon by value - if status.value > 70 then - widget.icon.image = beautiful.icons.volume.high - elseif status.value > 40 then - widget.icon.image = beautiful.icons.volume.medium - elseif status.value > 0 then - widget.icon.image = beautiful.icons.volume.low - elseif status.value == 0 then - widget.icon.image = beautiful.icons.volume.off - end - end - - w.update(); - end -) - -return widget diff --git a/widgets/dotgrid.lua b/widgets/dotgrid.lua index 963ab65..fae5f7c 100644 --- a/widgets/dotgrid.lua +++ b/widgets/dotgrid.lua @@ -33,23 +33,23 @@ function dotgrid:new() end function dots:draw(context, cr, width, height) - local col_size = (height - self.spacing * (self.rows-1)) // self.rows - local row_size = (width - self.spacing * (self.cols-1)) // self.cols + local col_size = math.floor((height - self.spacing * (self.rows-1)) / self.rows) + local row_size = math.floor((width - self.spacing * (self.cols-1)) / self.cols) -- Compute rounding offsets for better centering - local xoffset = ( + local xoffset = math.floor(( width - ( (col_size * self.cols) + (self.spacing * (self.cols - 1)) ) - ) // 2 + ) / 2) - local yoffset = ( + local yoffset = math.floor(( height - ( (row_size * self.rows) + (self.spacing * (self.rows - 1)) ) - ) // 2 + ) / 2) -- How many dots should be on local on = math.floor((self.value / self.max) * (self.rows * self.cols))