X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/75c3b81654b5159dbad6123e51838d8c3a34e3bd..e363fdfeafc331ee29780905361f137aa691b5df:/widgets/contrib/kbdlayout.lua?ds=sidebyside

diff --git a/widgets/contrib/kbdlayout.lua b/widgets/contrib/kbdlayout.lua
index 8b15475..64ea6b3 100644
--- a/widgets/contrib/kbdlayout.lua
+++ b/widgets/contrib/kbdlayout.lua
@@ -1,9 +1,9 @@
 
 --[[
-
-     Licensed under GNU General Public License v2
-      * (c) 2015, Dario Gjorgjevski
-
+                                                  
+     Licensed under GNU General Public License v2 
+      * (c) 2015, Dario Gjorgjevski               
+                                                  
 --]]
 
 local newtimer     = require("lain.helpers").newtimer
@@ -16,17 +16,21 @@ local string       = { match = string.match }
 
 local setmetatable = setmetatable
 
+-- Keyboard layout switcher
+-- lain.widgets.contrib.kblayout
+
 local function worker (args)
    local kbdlayout    = {}
    kbdlayout.widget   = wibox.widget.textbox('')
 
    local layouts          = args.layouts
    local settings         = args.settings or function () end
-   local add_us_secondary = args.add_us_secondary or true
+   local add_us_secondary = true
    local timeout          = args.timeout or 5
-
    local idx              = 1
 
+   if args.add_us_secondary == false then add_us_secondary = false end
+
    -- Mouse bindings
    kbdlayout.widget:buttons(awful.util.table.join(
                               awful.button({ }, 1, function () kbdlayout.next() end),
@@ -50,7 +54,7 @@ local function worker (args)
       idx = ((i - 1) % #layouts) + 1 -- Make sure to wrap around as needed.
       local to_execute = 'setxkbmap ' .. layouts[idx].layout
 
-      if add_us_secondary then
+      if add_us_secondary and not string.match(layouts[idx].layout, ",?us,?") then
          to_execute = to_execute .. ",us"
       end