awful.tag: viewidx ignores hidden tags
This prevents viewprev/viewnext from cycling to tags not shown in the taglist. Signed-off-by: koniu <gkusnierz@gmail.com> Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
parent
eae6b8066f
commit
3c08a7621b
|
@ -8,6 +8,7 @@
|
||||||
local util = require("awful.util")
|
local util = require("awful.util")
|
||||||
local pairs = pairs
|
local pairs = pairs
|
||||||
local ipairs = ipairs
|
local ipairs = ipairs
|
||||||
|
local table = table
|
||||||
local setmetatable = setmetatable
|
local setmetatable = setmetatable
|
||||||
local capi =
|
local capi =
|
||||||
{
|
{
|
||||||
|
@ -194,16 +195,22 @@ function viewnone(screen)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--- View a tag by its index.
|
--- View a tag by its taglist index.
|
||||||
-- @param i The relative index to see.
|
-- @param i The relative index to see.
|
||||||
-- @param screen Optional screen number.
|
-- @param screen Optional screen number.
|
||||||
function viewidx(i, screen)
|
function viewidx(i, screen)
|
||||||
local tags = capi.screen[screen or capi.mouse.screen]:tags()
|
local tags = capi.screen[screen or capi.mouse.screen]:tags()
|
||||||
|
local showntags = {}
|
||||||
|
for k, t in ipairs(tags) do
|
||||||
|
if not getproperty(t, "hide") then
|
||||||
|
table.insert(showntags, t)
|
||||||
|
end
|
||||||
|
end
|
||||||
local sel = selected(screen)
|
local sel = selected(screen)
|
||||||
viewnone(screen)
|
viewnone(screen)
|
||||||
for k, t in ipairs(tags) do
|
for k, t in ipairs(showntags) do
|
||||||
if t == sel then
|
if t == sel then
|
||||||
tags[util.cycle(#tags, k + i)].selected = true
|
showntags[util.cycle(#showntags, k + i)].selected = true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue