X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/6603c641c6ce675b010ca1977423747ca55d8795..9358f8ac54a20f2351e4e4b7c45735f2388c3c42:/widgets/contrib/kbdlayout.lua?ds=sidebyside diff --git a/widgets/contrib/kbdlayout.lua b/widgets/contrib/kbdlayout.lua index 8d13a74..1c24647 100644 --- a/widgets/contrib/kbdlayout.lua +++ b/widgets/contrib/kbdlayout.lua @@ -10,6 +10,7 @@ local newtimer = require("lain.helpers").newtimer local read_pipe = require("lain.helpers").read_pipe local wibox = require("wibox") +local awful = require("awful") local string = { match = string.match } @@ -22,7 +23,14 @@ local function worker (args) local layouts = args.layouts local settings = args.settings or function () end local add_us_secondary = args.add_us_secondary or true + local timeout = args.timeout or 5 + local idx = 1 + + -- Mouse bindings + kbdlayout.widget:buttons(awful.util.table.join( + awful.button({ }, 1, function () kbdlayout.next() end), + awful.button({ }, 3, function () kbdlayout.prev() end))) local function run_settings (layout, variant) widget = kbdlayout.widget @@ -63,7 +71,7 @@ local function worker (args) kbdlayout.set(idx - 1) end - newtimer("kbdlayout", args.timeout or 10, kbdlayout.update) + newtimer("kbdlayout", timeout, kbdlayout.update) return setmetatable(kbdlayout, { __index = kbdlayout.widget }) end