add mouse bindings to kbdlayout

This commit is contained in:
Dario Gjorgjevski 2015-08-13 02:05:49 +02:00
parent 6603c641c6
commit 9223ddfb10
1 changed files with 9 additions and 1 deletions

View File

@ -10,6 +10,7 @@ local newtimer = require("lain.helpers").newtimer
local read_pipe = require("lain.helpers").read_pipe local read_pipe = require("lain.helpers").read_pipe
local wibox = require("wibox") local wibox = require("wibox")
local awful = require("awful")
local string = { match = string.match } local string = { match = string.match }
@ -22,8 +23,15 @@ local function worker (args)
local layouts = args.layouts local layouts = args.layouts
local settings = args.settings or function () end local settings = args.settings or function () end
local add_us_secondary = args.add_us_secondary or true local add_us_secondary = args.add_us_secondary or true
local timeout = args.timeout or 5
local idx = 1 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) local function run_settings (layout, variant)
widget = kbdlayout.widget widget = kbdlayout.widget
kbdlayout_now = { layout=string.match(layout, "[^,]+"), -- Make sure to match the primary layout only. kbdlayout_now = { layout=string.match(layout, "[^,]+"), -- Make sure to match the primary layout only.
@ -63,7 +71,7 @@ local function worker (args)
kbdlayout.set(idx - 1) kbdlayout.set(idx - 1)
end end
newtimer("kbdlayout", args.timeout or 10, kbdlayout.update) newtimer("kbdlayout", timeout, kbdlayout.update)
return setmetatable(kbdlayout, { __index = kbdlayout.widget }) return setmetatable(kbdlayout, { __index = kbdlayout.widget })
end end