moved to personal fennel config for awesome and added qutebrowser
This commit is contained in:
parent
403cb92b7d
commit
688748f8a6
502 changed files with 8576 additions and 9597 deletions
65
awes2/widget/notif-center/build-notifbox/empty-notifbox.lua
Normal file
65
awes2/widget/notif-center/build-notifbox/empty-notifbox.lua
Normal file
|
@ -0,0 +1,65 @@
|
|||
-- This returns the "Wow, such empty." message.
|
||||
|
||||
local wibox = require('wibox')
|
||||
|
||||
local dpi = require('beautiful').xresources.apply_dpi
|
||||
|
||||
local config_dir = require('gears').filesystem.get_configuration_dir()
|
||||
local widget_icon_dir = config_dir .. 'widget/notif-center/icons/'
|
||||
|
||||
local empty_notifbox = wibox.widget {
|
||||
{
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
spacing = dpi(5),
|
||||
{
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.horizontal,
|
||||
nil,
|
||||
{
|
||||
image = widget_icon_dir .. 'empty-notification' .. '.svg',
|
||||
resize = true,
|
||||
forced_height = dpi(35),
|
||||
forced_width = dpi(35),
|
||||
widget = wibox.widget.imagebox,
|
||||
},
|
||||
nil
|
||||
},
|
||||
{
|
||||
text = 'Wow, such empty.',
|
||||
font = 'SF Pro Text Bold 14',
|
||||
align = 'center',
|
||||
valign = 'center',
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
text = 'Come back later.',
|
||||
font = 'SF Pro Text Regular 10',
|
||||
align = 'center',
|
||||
valign = 'center',
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
},
|
||||
margins = dpi(20),
|
||||
widget = wibox.container.margin
|
||||
|
||||
}
|
||||
|
||||
|
||||
local separator_for_empty_msg = wibox.widget
|
||||
{
|
||||
orientation = 'vertical',
|
||||
opacity = 0.0,
|
||||
widget = wibox.widget.separator
|
||||
}
|
||||
|
||||
-- Make empty_notifbox center
|
||||
local centered_empty_notifbox = wibox.widget {
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.vertical,
|
||||
separator_for_empty_msg,
|
||||
empty_notifbox,
|
||||
separator_for_empty_msg
|
||||
}
|
||||
|
||||
return centered_empty_notifbox
|
||||
|
80
awes2/widget/notif-center/build-notifbox/init.lua
Normal file
80
awes2/widget/notif-center/build-notifbox/init.lua
Normal file
|
@ -0,0 +1,80 @@
|
|||
local wibox = require('wibox')
|
||||
local awful = require('awful')
|
||||
local gears = require('gears')
|
||||
local naughty = require('naughty')
|
||||
local beautiful = require('beautiful')
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
|
||||
local config_dir = gears.filesystem.get_configuration_dir()
|
||||
local widget_icon_dir = config_dir .. 'widget/notif-center/icons/'
|
||||
|
||||
local empty_notifbox = require('widget.notif-center.build-notifbox.empty-notifbox')
|
||||
local notifbox_scroller = require('widget.notif-center.build-notifbox.notifbox-scroller')
|
||||
|
||||
local notif_core = {}
|
||||
|
||||
notif_core.remove_notifbox_empty = true
|
||||
|
||||
notif_core.notifbox_layout = wibox.widget {
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
spacing = dpi(5),
|
||||
empty_notifbox
|
||||
}
|
||||
|
||||
notifbox_scroller(notif_core.notifbox_layout)
|
||||
|
||||
notif_core.reset_notifbox_layout = function()
|
||||
notif_core.notifbox_layout:reset()
|
||||
notif_core.notifbox_layout:insert(1, empty_notifbox)
|
||||
notif_core.remove_notifbox_empty = true
|
||||
end
|
||||
|
||||
local notifbox_add = function(n, notif_icon, notifbox_color)
|
||||
if #notif_core.notifbox_layout.children == 1 and notif_core.remove_notifbox_empty then
|
||||
notif_core.notifbox_layout:reset(notif_core.notifbox_layout)
|
||||
notif_core.remove_notifbox_empty = false
|
||||
end
|
||||
|
||||
local notifbox_box = require('widget.notif-center.build-notifbox.notifbox-builder')
|
||||
notif_core.notifbox_layout:insert(
|
||||
1,
|
||||
notifbox_box(
|
||||
n,
|
||||
notif_icon,
|
||||
n.title,
|
||||
n.message,
|
||||
n.app_name,
|
||||
notifbox_color
|
||||
)
|
||||
)
|
||||
end
|
||||
|
||||
local notifbox_add_expired = function(n, notif_icon, notifbox_color)
|
||||
n:connect_signal(
|
||||
'destroyed',
|
||||
function(self, reason, keep_visble)
|
||||
if reason == 1 then
|
||||
notifbox_add(n, notif_icon, notifbox_color)
|
||||
end
|
||||
end
|
||||
)
|
||||
end
|
||||
|
||||
naughty.connect_signal(
|
||||
"request::display",
|
||||
function(n)
|
||||
local notifbox_color = beautiful.groups_bg
|
||||
if n.urgency == 'critical' then
|
||||
notifbox_color = n.bg .. '66'
|
||||
end
|
||||
|
||||
local notif_icon = n.icon or n.app_icon
|
||||
if not notif_icon then
|
||||
notif_icon = widget_icon_dir .. 'new-notif' .. '.svg'
|
||||
end
|
||||
|
||||
notifbox_add_expired(n, notif_icon, notifbox_color)
|
||||
end
|
||||
)
|
||||
|
||||
return notif_core
|
177
awes2/widget/notif-center/build-notifbox/notifbox-builder.lua
Normal file
177
awes2/widget/notif-center/build-notifbox/notifbox-builder.lua
Normal file
|
@ -0,0 +1,177 @@
|
|||
local wibox = require('wibox')
|
||||
local awful = require('awful')
|
||||
local gears = require('gears')
|
||||
local beautiful = require('beautiful')
|
||||
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
|
||||
local builder = require('widget.notif-center.build-notifbox.notifbox-ui-elements')
|
||||
local notifbox_core = require('widget.notif-center.build-notifbox')
|
||||
|
||||
local notifbox_layout = notifbox_core.notifbox_layout
|
||||
local remove_notifbox_empty = notifbox_core.remove_notifbox_empty
|
||||
local reset_notifbox_layout = notifbox_core.reset_notifbox_layout
|
||||
|
||||
local return_date_time = function(format)
|
||||
return os.date(format)
|
||||
end
|
||||
|
||||
local parse_to_seconds = function(time)
|
||||
local hourInSec = tonumber(string.sub(time, 1, 2)) * 3600
|
||||
local minInSec = tonumber(string.sub(time, 4, 5)) * 60
|
||||
local getSec = tonumber(string.sub(time, 7, 8))
|
||||
return (hourInSec + minInSec + getSec)
|
||||
end
|
||||
|
||||
notifbox_box = function(notif, icon, title, message, app, bgcolor)
|
||||
|
||||
local time_of_pop = return_date_time('%H:%M:%S')
|
||||
local exact_time = return_date_time('%I:%M %p')
|
||||
local exact_date_time = return_date_time('%b %d, %I:%M %p')
|
||||
|
||||
local notifbox_timepop = wibox.widget {
|
||||
id = 'time_pop',
|
||||
markup = nil,
|
||||
font = 'SF Pro Text Regular 10',
|
||||
align = 'left',
|
||||
valign = 'center',
|
||||
visible = true,
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
|
||||
local notifbox_dismiss = builder.notifbox_dismiss()
|
||||
|
||||
local time_of_popup = gears.timer {
|
||||
timeout = 60,
|
||||
call_now = true,
|
||||
autostart = true,
|
||||
callback = function()
|
||||
|
||||
local time_difference = nil
|
||||
|
||||
time_difference = parse_to_seconds(return_date_time('%H:%M:%S')) - parse_to_seconds(time_of_pop)
|
||||
time_difference = tonumber(time_difference)
|
||||
|
||||
if time_difference < 60 then
|
||||
notifbox_timepop:set_markup('now')
|
||||
|
||||
elseif time_difference >= 60 and time_difference < 3600 then
|
||||
local time_in_minutes = math.floor(time_difference / 60)
|
||||
notifbox_timepop:set_markup(time_in_minutes .. 'm ago')
|
||||
|
||||
elseif time_difference >= 3600 and time_difference < 86400 then
|
||||
notifbox_timepop:set_markup(exact_time)
|
||||
|
||||
elseif time_difference >= 86400 then
|
||||
notifbox_timepop:set_markup(exact_date_time)
|
||||
return false
|
||||
|
||||
end
|
||||
|
||||
collectgarbage('collect')
|
||||
end
|
||||
}
|
||||
|
||||
local notifbox_template = wibox.widget {
|
||||
id = 'notifbox_template',
|
||||
expand = 'none',
|
||||
{
|
||||
{
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
spacing = dpi(5),
|
||||
{
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.horizontal,
|
||||
{
|
||||
layout = wibox.layout.fixed.horizontal,
|
||||
spacing = dpi(5),
|
||||
builder.notifbox_icon(icon),
|
||||
builder.notifbox_appname(app),
|
||||
},
|
||||
nil,
|
||||
{
|
||||
notifbox_timepop,
|
||||
notifbox_dismiss,
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
},
|
||||
{
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
spacing = dpi(5),
|
||||
{
|
||||
builder.notifbox_title(title),
|
||||
builder.notifbox_message(message),
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
builder.notifbox_actions(notif),
|
||||
},
|
||||
|
||||
},
|
||||
margins = dpi(10),
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
bg = bgcolor,
|
||||
shape = function(cr, width, height)
|
||||
gears.shape.partially_rounded_rect(cr, width, height, true, true, true, true, beautiful.groups_radius)
|
||||
end,
|
||||
widget = wibox.container.background,
|
||||
}
|
||||
|
||||
-- Put the generated template to a container
|
||||
local notifbox = wibox.widget {
|
||||
notifbox_template,
|
||||
shape = function(cr, width, height)
|
||||
gears.shape.partially_rounded_rect(cr, width, height, true, true, true, true, beautiful.groups_radius)
|
||||
end,
|
||||
widget = wibox.container.background
|
||||
}
|
||||
|
||||
-- Delete notification box
|
||||
local notifbox_delete = function()
|
||||
notifbox_layout:remove_widgets(notifbox, true)
|
||||
end
|
||||
|
||||
-- Delete notifbox on LMB
|
||||
notifbox:buttons(
|
||||
awful.util.table.join(
|
||||
awful.button(
|
||||
{},
|
||||
1,
|
||||
function()
|
||||
if #notifbox_layout.children == 1 then
|
||||
reset_notifbox_layout()
|
||||
else
|
||||
notifbox_delete()
|
||||
end
|
||||
collectgarbage('collect')
|
||||
end
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
-- Add hover, and mouse leave events
|
||||
notifbox_template:connect_signal(
|
||||
"mouse::enter",
|
||||
function()
|
||||
notifbox.bg = beautiful.groups_bg
|
||||
notifbox_timepop.visible = false
|
||||
notifbox_dismiss.visible = true
|
||||
end
|
||||
)
|
||||
|
||||
notifbox_template:connect_signal(
|
||||
"mouse::leave",
|
||||
function()
|
||||
notifbox.bg = beautiful.tranparent
|
||||
notifbox_timepop.visible = true
|
||||
notifbox_dismiss.visible = false
|
||||
end
|
||||
)
|
||||
|
||||
collectgarbage('collect')
|
||||
|
||||
return notifbox
|
||||
end
|
||||
|
||||
|
||||
return notifbox_box
|
|
@ -0,0 +1,33 @@
|
|||
local wibox = require('wibox')
|
||||
local awful = require('awful')
|
||||
local naughty = require('naughty')
|
||||
|
||||
local find_widget_in_wibox = function(wb, widget)
|
||||
local function find_widget_in_hierarchy(h, widget)
|
||||
if h:get_widget() == widget then
|
||||
return h
|
||||
end
|
||||
local result
|
||||
|
||||
for _, ch in ipairs(h:get_children()) do
|
||||
result = result or find_widget_in_hierarchy(ch, widget)
|
||||
end
|
||||
return result
|
||||
end
|
||||
local h = wb._drawable._widget_hierarchy
|
||||
return h and find_widget_in_hierarchy(h, widget)
|
||||
end
|
||||
|
||||
|
||||
local focused = awful.screen.focused()
|
||||
local h = find_widget_in_wibox(focused.top_panel, focused.music)
|
||||
local x, y, width, height = h:get_matrix_to_device():transform_rectangle(0, 0, h:get_size())
|
||||
-- local geo = focused.mywibox:geometry()
|
||||
|
||||
|
||||
-- x, y = x + geo.x, y + geo.y
|
||||
|
||||
-- print(string.format("The widget is inside of the rectangle (%d, %d, %d, %d) on the screen", x, y, width, height)
|
||||
|
||||
|
||||
naughty.notification({message=tostring(height)})
|
|
@ -0,0 +1,37 @@
|
|||
local awful = require('awful')
|
||||
local gears = require('gears')
|
||||
|
||||
local add_button_event = function(widget)
|
||||
|
||||
widget:buttons(
|
||||
gears.table.join(
|
||||
awful.button(
|
||||
{},
|
||||
4,
|
||||
nil,
|
||||
function()
|
||||
if #widget.children == 1 then
|
||||
return
|
||||
end
|
||||
widget:insert(1, widget.children[#widget.children])
|
||||
widget:remove(#widget.children)
|
||||
end
|
||||
),
|
||||
awful.button(
|
||||
{},
|
||||
5,
|
||||
nil,
|
||||
function()
|
||||
if #widget.children == 1 then
|
||||
return
|
||||
end
|
||||
widget:insert(#widget.children + 1, widget.children[1])
|
||||
widget:remove(1)
|
||||
end
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
end
|
||||
|
||||
return add_button_event
|
|
@ -0,0 +1,136 @@
|
|||
local wibox = require('wibox')
|
||||
local beautiful = require('beautiful')
|
||||
local naughty = require('naughty')
|
||||
local gears = require('gears')
|
||||
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
|
||||
local config_dir = gears.filesystem.get_configuration_dir()
|
||||
local widget_icon_dir = config_dir .. 'widget/notif-center/icons/'
|
||||
|
||||
local clickable_container = require('widget.clickable-container')
|
||||
|
||||
local ui_noti_builder = {}
|
||||
|
||||
-- Notification icon container
|
||||
ui_noti_builder.notifbox_icon = function(ico_image)
|
||||
local noti_icon = wibox.widget {
|
||||
{
|
||||
id = 'icon',
|
||||
resize = true,
|
||||
forced_height = dpi(25),
|
||||
forced_width = dpi(25),
|
||||
widget = wibox.widget.imagebox
|
||||
},
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
noti_icon.icon:set_image(ico_image)
|
||||
return noti_icon
|
||||
end
|
||||
|
||||
-- Notification title container
|
||||
ui_noti_builder.notifbox_title = function(title)
|
||||
return wibox.widget {
|
||||
markup = title,
|
||||
font = 'SF Pro Text Bold 12',
|
||||
align = 'left',
|
||||
valign = 'center',
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
end
|
||||
|
||||
-- Notification message container
|
||||
ui_noti_builder.notifbox_message = function(msg)
|
||||
return wibox.widget {
|
||||
markup = msg,
|
||||
font = 'SF Pro Text Regular 11',
|
||||
align = 'left',
|
||||
valign = 'center',
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
end
|
||||
|
||||
-- Notification app name container
|
||||
ui_noti_builder.notifbox_appname = function(app)
|
||||
return wibox.widget {
|
||||
markup = app,
|
||||
font = 'SF Pro Text Bold 12',
|
||||
align = 'left',
|
||||
valign = 'center',
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
end
|
||||
|
||||
-- Notification actions container
|
||||
ui_noti_builder.notifbox_actions = function(n)
|
||||
actions_template = wibox.widget {
|
||||
notification = n,
|
||||
base_layout = wibox.widget {
|
||||
spacing = dpi(0),
|
||||
layout = wibox.layout.flex.horizontal
|
||||
},
|
||||
widget_template = {
|
||||
{
|
||||
{
|
||||
{
|
||||
{
|
||||
id = 'text_role',
|
||||
font = 'SF Pro Text Regular 10',
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
widget = wibox.container.place
|
||||
},
|
||||
widget = clickable_container
|
||||
},
|
||||
bg = beautiful.groups_bg,
|
||||
shape = gears.shape.rounded_rect,
|
||||
forced_height = 30,
|
||||
widget = wibox.container.background
|
||||
},
|
||||
margins = 4,
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
style = { underline_normal = false, underline_selected = true },
|
||||
widget = naughty.list.actions,
|
||||
}
|
||||
|
||||
return actions_template
|
||||
end
|
||||
|
||||
|
||||
-- Notification dismiss button
|
||||
ui_noti_builder.notifbox_dismiss = function()
|
||||
|
||||
local dismiss_imagebox = wibox.widget {
|
||||
{
|
||||
id = 'dismiss_icon',
|
||||
image = widget_icon_dir .. 'delete.svg',
|
||||
resize = true,
|
||||
forced_height = dpi(5),
|
||||
widget = wibox.widget.imagebox
|
||||
},
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
|
||||
local dismiss_button = wibox.widget {
|
||||
{
|
||||
dismiss_imagebox,
|
||||
margins = dpi(5),
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
widget = clickable_container
|
||||
}
|
||||
|
||||
local notifbox_dismiss = wibox.widget {
|
||||
dismiss_button,
|
||||
visible = false,
|
||||
bg = beautiful.groups_title_bg,
|
||||
shape = gears.shape.circle,
|
||||
widget = wibox.container.background
|
||||
}
|
||||
|
||||
return notifbox_dismiss
|
||||
end
|
||||
|
||||
|
||||
return ui_noti_builder
|
61
awes2/widget/notif-center/clear-all/init.lua
Normal file
61
awes2/widget/notif-center/clear-all/init.lua
Normal file
|
@ -0,0 +1,61 @@
|
|||
local awful = require('awful')
|
||||
local wibox = require('wibox')
|
||||
local gears = require('gears')
|
||||
local beautiful = require('beautiful')
|
||||
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
local clickable_container = require('widget.clickable-container')
|
||||
|
||||
local config_dir = gears.filesystem.get_configuration_dir()
|
||||
local widget_icon_dir = config_dir .. 'widget/notif-center/icons/'
|
||||
|
||||
local notifbox_core = require('widget.notif-center.build-notifbox')
|
||||
local reset_notifbox_layout = notifbox_core.reset_notifbox_layout
|
||||
|
||||
local clear_all_imagebox = wibox.widget {
|
||||
{
|
||||
image = widget_icon_dir .. 'clear_all.svg',
|
||||
resize = true,
|
||||
forced_height = dpi(20),
|
||||
forced_width = dpi(20),
|
||||
widget = wibox.widget.imagebox,
|
||||
},
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
|
||||
local clear_all_button = wibox.widget {
|
||||
{
|
||||
clear_all_imagebox,
|
||||
margins = dpi(7),
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
widget = clickable_container
|
||||
}
|
||||
|
||||
clear_all_button:buttons(
|
||||
gears.table.join(
|
||||
awful.button(
|
||||
{},
|
||||
1,
|
||||
nil,
|
||||
function()
|
||||
reset_notifbox_layout()
|
||||
end
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
local clear_all_button_wrapped = wibox.widget {
|
||||
nil,
|
||||
{
|
||||
clear_all_button,
|
||||
bg = beautiful.groups_bg,
|
||||
shape = gears.shape.circle,
|
||||
widget = wibox.container.background
|
||||
},
|
||||
nil,
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.vertical
|
||||
}
|
||||
|
||||
return clear_all_button_wrapped
|
1
awes2/widget/notif-center/dont-disturb/disturb_status
Normal file
1
awes2/widget/notif-center/dont-disturb/disturb_status
Normal file
|
@ -0,0 +1 @@
|
|||
false
|
122
awes2/widget/notif-center/dont-disturb/init.lua
Normal file
122
awes2/widget/notif-center/dont-disturb/init.lua
Normal file
|
@ -0,0 +1,122 @@
|
|||
local awful = require('awful')
|
||||
local naughty = require('naughty')
|
||||
local wibox = require('wibox')
|
||||
local gears = require('gears')
|
||||
local beautiful = require('beautiful')
|
||||
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
local clickable_container = require('widget.clickable-container')
|
||||
|
||||
local config_dir = gears.filesystem.get_configuration_dir()
|
||||
|
||||
local widget_dir = config_dir .. 'widget/notif-center/dont-disturb/'
|
||||
local widget_icon_dir = config_dir .. 'widget/notif-center/icons/'
|
||||
|
||||
_G.dont_disturb = false
|
||||
|
||||
local dont_disturb_imagebox = wibox.widget {
|
||||
{
|
||||
id = 'icon',
|
||||
image = widget_icon_dir .. 'dont-disturb-mode.svg',
|
||||
resize = true,
|
||||
forced_height = dpi(20),
|
||||
forced_width = dpi(20),
|
||||
widget = wibox.widget.imagebox,
|
||||
},
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
}
|
||||
|
||||
local function update_icon()
|
||||
|
||||
local widget_icon_name = nil
|
||||
local dd_icon = dont_disturb_imagebox.icon
|
||||
|
||||
if dont_disturb then
|
||||
widget_icon_name = 'toggled-on'
|
||||
dd_icon:set_image(widget_icon_dir .. 'dont-disturb-mode.svg')
|
||||
else
|
||||
widget_icon_name = 'toggled-off'
|
||||
dd_icon:set_image(widget_icon_dir .. 'notify-mode.svg')
|
||||
end
|
||||
end
|
||||
|
||||
local check_disturb_status = function()
|
||||
|
||||
awful.spawn.easy_async_with_shell(
|
||||
"cat " .. widget_dir .. "disturb_status",
|
||||
function(stdout)
|
||||
|
||||
local status = stdout
|
||||
|
||||
if status:match("true") then
|
||||
dont_disturb = true
|
||||
elseif status:match("false") then
|
||||
dont_disturb = false
|
||||
else
|
||||
dont_disturb = false
|
||||
awful.spawn.with_shell("echo 'false' > " .. widget_dir .. "disturb_status")
|
||||
end
|
||||
|
||||
update_icon()
|
||||
end
|
||||
)
|
||||
end
|
||||
|
||||
check_disturb_status()
|
||||
|
||||
local toggle_disturb = function()
|
||||
if dont_disturb then
|
||||
dont_disturb = false
|
||||
else
|
||||
dont_disturb = true
|
||||
end
|
||||
awful.spawn.with_shell("echo " .. tostring(dont_disturb) .. " > " .. widget_dir .. "disturb_status")
|
||||
update_icon()
|
||||
end
|
||||
|
||||
local dont_disturb_button = wibox.widget {
|
||||
{
|
||||
dont_disturb_imagebox,
|
||||
margins = dpi(7),
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
widget = clickable_container
|
||||
}
|
||||
|
||||
dont_disturb_button:buttons(
|
||||
gears.table.join(
|
||||
awful.button(
|
||||
{},
|
||||
1,
|
||||
nil,
|
||||
function()
|
||||
toggle_disturb()
|
||||
end
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
local dont_disturb_wrapped = wibox.widget {
|
||||
nil,
|
||||
{
|
||||
dont_disturb_button,
|
||||
bg = beautiful.groups_bg,
|
||||
shape = gears.shape.circle,
|
||||
widget = wibox.container.background
|
||||
},
|
||||
nil,
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.vertical
|
||||
}
|
||||
|
||||
-- Create a notification sound
|
||||
naughty.connect_signal(
|
||||
"request::display",
|
||||
function(n)
|
||||
if not dont_disturb then
|
||||
awful.spawn.with_shell('canberra-gtk-play -i message')
|
||||
end
|
||||
end
|
||||
)
|
||||
|
||||
return dont_disturb_wrapped
|
91
awes2/widget/notif-center/icons/clear_all.svg
Normal file
91
awes2/widget/notif-center/icons/clear_all.svg
Normal file
|
@ -0,0 +1,91 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
width="240"
|
||||
height="240"
|
||||
viewBox="0 0 240 240"
|
||||
sodipodi:docname="clear_all.svg"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14">
|
||||
<metadata
|
||||
id="metadata8">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs6" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1321"
|
||||
inkscape:window-height="740"
|
||||
id="namedview4"
|
||||
showgrid="false"
|
||||
inkscape:pagecheckerboard="true"
|
||||
inkscape:zoom="1.1346154"
|
||||
inkscape:cx="-63.016949"
|
||||
inkscape:cy="104"
|
||||
inkscape:window-x="45"
|
||||
inkscape:window-y="28"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg2" />
|
||||
<image
|
||||
width="200"
|
||||
height="200"
|
||||
preserveAspectRatio="none"
|
||||
style="image-rendering:optimizeQuality"
|
||||
xlink:href="data:image/png;base64,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
|
||||
AElFTkSuQmCC
|
||||
"
|
||||
id="image10"
|
||||
x="20"
|
||||
y="20" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
1
awes2/widget/notif-center/icons/delete.svg
Normal file
1
awes2/widget/notif-center/icons/delete.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="240" height="240" viewBox="0 0 24 24"><path fill="#ffffff" d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>
|
After Width: | Height: | Size: 421 B |
64
awes2/widget/notif-center/icons/dont-disturb-mode.svg
Normal file
64
awes2/widget/notif-center/icons/dont-disturb-mode.svg
Normal file
|
@ -0,0 +1,64 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
height="512px"
|
||||
viewBox="-12 0 448 448.04455"
|
||||
width="512px"
|
||||
version="1.1"
|
||||
id="svg6"
|
||||
sodipodi:docname="dont-disturb-mode.svg"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14">
|
||||
<metadata
|
||||
id="metadata12">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#252525"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1321"
|
||||
inkscape:window-height="738"
|
||||
id="namedview8"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.4609375"
|
||||
inkscape:cx="264.67797"
|
||||
inkscape:cy="247.32203"
|
||||
inkscape:window-x="45"
|
||||
inkscape:window-y="30"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg6" />
|
||||
<g
|
||||
id="g4"
|
||||
transform="matrix(0.71799041,0,0,0.71799041,59.727137,63.17728)">
|
||||
<path
|
||||
d="m 224.02344,448.03125 c 85.71484,0.90234 164.01172,-48.48828 200.11718,-126.23047 -22.72265,9.91406 -47.33203,14.76953 -72.11718,14.23047 -97.15625,-0.10938 -175.89063,-78.84375 -176,-176 C 176.99609,94.3125 213.25781,34.199219 270.93359,2.679688 255.37891,0.699219 239.70312,-0.1875 224.02344,0.03125 c -123.71485,0 -224.0000025,100.28906 -224.0000025,224 0,123.71484 100.2851525,224 224.0000025,224 z m 0,0"
|
||||
data-original="#000000"
|
||||
class="active-path"
|
||||
data-old_color="#000000"
|
||||
style="fill:#ffffff"
|
||||
data-darkreader-inline-fill=""
|
||||
id="path2"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
1
awes2/widget/notif-center/icons/empty-notification.svg
Normal file
1
awes2/widget/notif-center/icons/empty-notification.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg height="512pt" viewBox="-17 0 511 512" width="512pt" xmlns="http://www.w3.org/2000/svg"><path d="m227.148438 446.128906c0 35.339844-27.96875 64.269532-62.9375 65.800782-.972657.050781-1.949219.070312-2.929688.070312-36.332031 0-65.882812-29.550781-65.882812-65.871094zm0 0" fill="#ff9a00"/><path d="m227.148438 446.128906c0 35.339844-27.96875 64.269532-62.9375 65.800782v-65.800782zm0 0" fill="#e67500"/><path d="m372.617188 150.859375h-84.328126l42.714844-76.324219h-35.386718v-30h86.554687l-42.714844 76.324219h33.160157zm0 0" fill="#6d76e7"/><path d="m468.285156 90.816406h-76.429687l34.035156-60.816406h-22.273437v-30h73.441406l-34.035156 60.816406h25.261718zm0 0" fill="#6d76e7"/><path d="m327.910156 450.921875-163.699218.238281-163.589844.238282-.109375-72.949219-.011719-7.167969 2.339844-3.679688c.109375-.179687 4.5-7.230468 10.171875-19.152343 9.238281-19.378907 21.878906-51.640625 25.007812-88.078125 7.058594-82.152344 52.902344-129.320313 125.769531-129.429688h.421876c38.738281.039063 69.640624 13.1875 91.867187 39.078125 18.871094 22 30.582031 53.109375 33.863281 89.96875 3.269532 36.710938 16.167969 69.140625 25.480469 88.460938 5.609375 11.628906 9.917969 18.511719 10.027344 18.679687l2.332031 3.671875.007812 4.359375.011719 3.289063zm0 0" fill="#ffdb2d"/><path d="m327.910156 450.921875-163.699218.238281v-320.21875c38.738281.039063 69.640624 13.1875 91.867187 39.078125 18.871094 22 30.582031 53.109375 33.863281 89.96875 3.269532 36.710938 16.167969 69.140625 25.480469 88.460938 5.609375 11.628906 9.917969 18.511719 10.027344 18.679687l2.332031 3.671875.007812 4.359375.011719 3.289063zm0 0" fill="#ffaa20"/><path d="m327.800781 378.449219h-327.289062l-.011719-7.167969 2.339844-3.679688c.109375-.179687 4.5-7.230468 10.171875-19.152343h302.410156c5.609375 11.628906 9.917969 18.511719 10.027344 18.679687l2.332031 3.671875.007812 4.359375zm0 0" fill="#fff5cb"/><path d="m327.800781 378.449219h-163.589843v-30h151.210937c5.609375 11.628906 9.917969 18.511719 10.027344 18.679687l2.332031 3.671875.007812 4.359375zm0 0" fill="#ffdba9"/></svg>
|
After Width: | Height: | Size: 2 KiB |
15
awes2/widget/notif-center/icons/new-notif.svg
Normal file
15
awes2/widget/notif-center/icons/new-notif.svg
Normal file
|
@ -0,0 +1,15 @@
|
|||
<svg style="clip-rule:evenodd;fill-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2" version="1.1" viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m17.387 45.391l3.91-5.484h17.453s4.968 0.082 4.968-7.006v-22.292c-0.313-4.851-4.714-5.223-4.714-5.223h-29.298s-5.424 0.318-5.502 5.605v21.91c9e-3 6.902 5.502 7.006 5.502 7.006h2.578l3.523 5.463c0.767 0.894 0.778 0.777 1.58 0.021z" style="fill-opacity:.67"/>
|
||||
<path d="m17.387 44.002l3.91-5.484h17.453s4.968 0.081 4.968-7.006v-22.293c-0.313-4.851-4.714-5.223-4.714-5.223h-29.298s-5.424 0.318-5.502 5.606v21.91c9e-3 6.902 5.502 7.006 5.502 7.006h2.578l3.523 5.462c0.767 0.895 0.778 0.778 1.58 0.022z" style="fill:url(#_Linear1)"/>
|
||||
<circle cx="32.84" cy="6.821" r="5.728" style="fill:url(#_Linear2)"/>
|
||||
<defs>
|
||||
<linearGradient id="_Linear1" x2="1" gradientTransform="matrix(.799284 -39.6049 39.6049 .799284 498.134 53.5618)" gradientUnits="userSpaceOnUse">
|
||||
<stop style="stop-color:#888" offset="0"/>
|
||||
<stop style="stop-color:#fefeff" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="_Linear2" x2="1" gradientTransform="matrix(7.01453e-16,-11.4556,11.4556,7.01453e-16,87.5702,12.5494)" gradientUnits="userSpaceOnUse">
|
||||
<stop style="stop-color:#05f" offset="0"/>
|
||||
<stop style="stop-color:#00a0ff" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 1.3 KiB |
91
awes2/widget/notif-center/icons/notify-mode.svg
Normal file
91
awes2/widget/notif-center/icons/notify-mode.svg
Normal file
|
@ -0,0 +1,91 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
height="512px"
|
||||
viewBox="-21 0 512 512"
|
||||
width="512px"
|
||||
version="1.1"
|
||||
id="svg12"
|
||||
sodipodi:docname="notify-mode.svg"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14">
|
||||
<metadata
|
||||
id="metadata18">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs16" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#252525"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1321"
|
||||
inkscape:window-height="738"
|
||||
id="namedview14"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.4609375"
|
||||
inkscape:cx="-98.711864"
|
||||
inkscape:cy="256"
|
||||
inkscape:window-x="45"
|
||||
inkscape:window-y="30"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg12" />
|
||||
<g
|
||||
id="g10"
|
||||
transform="matrix(0.75500702,0,0,0.75500702,57.825511,62.718203)">
|
||||
<path
|
||||
d="m 448,232.14844 c -11.77734,0 -21.33203,-9.55469 -21.33203,-21.33203 0,-59.83985 -23.29688,-116.074222 -65.60156,-158.402348 -8.33985,-8.339843 -8.33985,-21.820312 0,-30.164062 8.33984,-8.339844 21.82421,-8.339844 30.16406,0 50.37109,50.367188 78.10156,117.33594 78.10156,188.56641 0,11.77734 -9.55469,21.33203 -21.33203,21.33203 z m 0,0"
|
||||
data-original="#000000"
|
||||
class="active-path"
|
||||
style="fill:#ffffff"
|
||||
data-darkreader-inline-fill=""
|
||||
data-old_color="#000000"
|
||||
id="path2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 21.332031,232.14844 C 9.558594,232.14844 0,222.59375 0,210.81641 0,139.58594 27.734375,72.617188 78.101562,22.25 c 8.339844,-8.339844 21.824219,-8.339844 30.164068,0 8.34375,8.34375 8.34375,21.824219 0,30.164062 C 65.960938,94.71875 42.667969,150.97656 42.667969,210.81641 c 0,11.77734 -9.558594,21.33203 -21.335938,21.33203 z m 0,0"
|
||||
data-original="#000000"
|
||||
class="active-path"
|
||||
style="fill:#ffffff"
|
||||
data-darkreader-inline-fill=""
|
||||
data-old_color="#000000"
|
||||
id="path4"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 434.75391,360.8125 C 402.49609,333.54687 384,293.69531 384,251.47656 V 192 C 384,116.92969 328.23437,54.785156 256,44.375 V 21.332031 C 256,9.535156 246.44141,0 234.66797,0 222.89062,0 213.33203,9.535156 213.33203,21.332031 V 44.375 C 141.07812,54.785156 85.332031,116.92969 85.332031,192 v 59.47656 c 0,42.21875 -18.496093,82.07031 -50.941406,109.50391 -8.300781,7.10547 -13.058594,17.42969 -13.058594,28.35156 0,20.58984 16.746094,37.33594 37.335938,37.33594 H 410.66797 c 20.58594,0 37.33203,-16.7461 37.33203,-37.33594 0,-10.92187 -4.75781,-21.24609 -13.24609,-28.51953 z m 0,0"
|
||||
data-original="#000000"
|
||||
class="active-path"
|
||||
style="fill:#ffffff"
|
||||
data-darkreader-inline-fill=""
|
||||
data-old_color="#000000"
|
||||
id="path6"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="m 234.66797,512 c 38.63281,0 70.95312,-27.54297 78.3789,-64 H 156.28906 c 7.42188,36.45703 39.74219,64 78.37891,64 z m 0,0"
|
||||
data-original="#000000"
|
||||
class="active-path"
|
||||
style="fill:#ffffff"
|
||||
data-darkreader-inline-fill=""
|
||||
data-old_color="#000000"
|
||||
id="path8"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
38
awes2/widget/notif-center/init.lua
Normal file
38
awes2/widget/notif-center/init.lua
Normal file
|
@ -0,0 +1,38 @@
|
|||
local wibox = require('wibox')
|
||||
local dpi = require('beautiful').xresources.apply_dpi
|
||||
|
||||
local notif_header = wibox.widget {
|
||||
text = 'Notification Center',
|
||||
font = 'SF Pro Text Bold 16',
|
||||
align = 'left',
|
||||
valign = 'bottom',
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
|
||||
local notif_center = function(s)
|
||||
|
||||
s.dont_disturb = require('widget.notif-center.dont-disturb')
|
||||
s.clear_all = require('widget.notif-center.clear-all')
|
||||
s.notifbox_layout = require('widget.notif-center.build-notifbox').notifbox_layout
|
||||
|
||||
return wibox.widget {
|
||||
expand = 'none',
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
spacing = dpi(10),
|
||||
{
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.horizontal,
|
||||
notif_header,
|
||||
nil,
|
||||
{
|
||||
layout = wibox.layout.fixed.horizontal,
|
||||
spacing = dpi(5),
|
||||
s.dont_disturb,
|
||||
s.clear_all
|
||||
},
|
||||
},
|
||||
s.notifbox_layout
|
||||
}
|
||||
end
|
||||
|
||||
return notif_center
|
Loading…
Add table
Add a link
Reference in a new issue