awful.sn: add
Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
parent
f4221a1fdf
commit
27c80c1950
|
@ -18,6 +18,7 @@ require("awful.widget")
|
|||
require("awful.menu")
|
||||
require("awful.mouse")
|
||||
require("awful.remote")
|
||||
require("awful.startup_notification")
|
||||
|
||||
--- AWesome Functions very UsefuL
|
||||
module("awful")
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
---------------------------------------------------------------------------
|
||||
-- @author Julien Danjou <julien@danjou.info>
|
||||
-- @copyright 2009 Julien Danjou
|
||||
-- @release @AWESOME_VERSION@
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
-- Grab environment we need
|
||||
local hooks = require("awful.hooks")
|
||||
local ipairs = ipairs
|
||||
local table = table
|
||||
local capi =
|
||||
{
|
||||
root = root
|
||||
}
|
||||
|
||||
--- Startup notification module for awful
|
||||
module("awful.startup_notification")
|
||||
|
||||
local app_starting = {}
|
||||
|
||||
cursor_waiting = "watch"
|
||||
|
||||
local function update_cursor()
|
||||
if #app_starting > 0 then
|
||||
capi.root.cursor(cursor_waiting)
|
||||
else
|
||||
capi.root.cursor("left_ptr")
|
||||
end
|
||||
end
|
||||
|
||||
local function unregister_event(event_id)
|
||||
for k, v in ipairs(app_starting) do
|
||||
if v == event_id then
|
||||
table.remove(app_starting, k)
|
||||
update_cursor()
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function register_event(event_id)
|
||||
table.insert(app_starting, event_id)
|
||||
update_cursor()
|
||||
end
|
||||
|
||||
local function startup_hook(event)
|
||||
if event.type == "initiated" then
|
||||
register_event(event.id)
|
||||
elseif event.type == "canceled"
|
||||
or event.type == "completed" then
|
||||
unregister_event(event.id)
|
||||
end
|
||||
end
|
||||
|
||||
hooks.startup_notification.register(startup_hook)
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=80
|
Loading…
Reference in New Issue