Better minimization when clicking in tasklist
This commit is contained in:
parent
e526d2f962
commit
20b61f0f67
|
@ -14,7 +14,6 @@ local awful = require('awful')
|
||||||
local wibox = require('wibox')
|
local wibox = require('wibox')
|
||||||
local gears = require('gears')
|
local gears = require('gears')
|
||||||
local utf8 = require("utf8")
|
local utf8 = require("utf8")
|
||||||
local clickable_container = require('widgets.clickable-container')
|
|
||||||
local pl = require("powerline")
|
local pl = require("powerline")
|
||||||
local theme = require("theme")
|
local theme = require("theme")
|
||||||
|
|
||||||
|
@ -42,12 +41,7 @@ local function create_buttons(buttons, object)
|
||||||
local btn = capi.button {modifiers = b.modifiers, button = b.button}
|
local btn = capi.button {modifiers = b.modifiers, button = b.button}
|
||||||
btn:connect_signal('press',
|
btn:connect_signal('press',
|
||||||
function()
|
function()
|
||||||
b:emit_signal('press', object)
|
object.minimized = not object.minimized
|
||||||
end
|
|
||||||
)
|
|
||||||
btn:connect_signal('release',
|
|
||||||
function()
|
|
||||||
b:emit_signal('release', object)
|
|
||||||
end
|
end
|
||||||
)
|
)
|
||||||
btns[#btns + 1] = btn
|
btns[#btns + 1] = btn
|
||||||
|
@ -67,10 +61,10 @@ local function list_update(w, buttons, label, data, objects)
|
||||||
end
|
end
|
||||||
for i, o in ipairs(objects) do
|
for i, o in ipairs(objects) do
|
||||||
index = index + 1
|
index = index + 1
|
||||||
local ib, cb, tb, cbm, bgb, tbm, ibm, tt, l, ll, bg_clickable
|
local ib, cb, tb, cbm, bgb, tbm, ibm, tt, l, ll
|
||||||
ib = wibox.widget.imagebox()
|
ib = wibox.widget.imagebox()
|
||||||
tb = wibox.widget.textbox()
|
tb = wibox.widget.textbox()
|
||||||
cb = clickable_container(wibox.container.margin(wibox.widget.imagebox(ICON_DIR .. "close.svg"), dpi(9), dpi(9), dpi(9), dpi(9)))
|
cb = wibox.container.margin(wibox.widget.imagebox(ICON_DIR .. "close.svg"), dpi(9), dpi(9), dpi(9), dpi(9))
|
||||||
cb.shape = gears.shape.circle
|
cb.shape = gears.shape.circle
|
||||||
cbm = wibox.container.margin(cb, dpi(0), dpi(0), dpi(0), dpi(0)) -- 4, 8 ,12 ,12 -- close button
|
cbm = wibox.container.margin(cb, dpi(0), dpi(0), dpi(0), dpi(0)) -- 4, 8 ,12 ,12 -- close button
|
||||||
cbm:buttons(gears.table.join(awful.button({}, 1, nil,
|
cbm:buttons(gears.table.join(awful.button({}, 1, nil,
|
||||||
|
@ -78,7 +72,6 @@ local function list_update(w, buttons, label, data, objects)
|
||||||
o.kill(o)
|
o.kill(o)
|
||||||
end
|
end
|
||||||
)))
|
)))
|
||||||
bg_clickable = clickable_container()
|
|
||||||
bgb = wibox.container.background()
|
bgb = wibox.container.background()
|
||||||
tbm = wibox.container.margin(tb, dpi(4), dpi(4))
|
tbm = wibox.container.margin(tb, dpi(4), dpi(4))
|
||||||
ibm = wibox.container.margin(ib, dpi(5), dpi(5), dpi(5), dpi(5)) -- 12 is default top and bottom margin --app icon
|
ibm = wibox.container.margin(ib, dpi(5), dpi(5), dpi(5), dpi(5)) -- 12 is default top and bottom margin --app icon
|
||||||
|
@ -95,14 +88,12 @@ local function list_update(w, buttons, label, data, objects)
|
||||||
if (index % 2 == 0) then
|
if (index % 2 == 0) then
|
||||||
local end_color = (count == index or objects[index+1].minimized) and "#12151c" or theme.top_panel_powerline
|
local end_color = (count == index or objects[index+1].minimized) and "#12151c" or theme.top_panel_powerline
|
||||||
local main_color = o.minimized and "#12151c" or theme.bg_normal
|
local main_color = o.minimized and "#12151c" or theme.bg_normal
|
||||||
bg_clickable:set_widget(pl(ll, main_color, end_color, true))
|
bgb:set_widget(pl(ll, main_color, end_color, true))
|
||||||
else
|
else
|
||||||
local end_color = (count == index or objects[index+1].minimized) and "#12151c" or theme.bg_normal
|
local end_color = (count == index or objects[index+1].minimized) and "#12151c" or theme.bg_normal
|
||||||
local main_color = o.minimized and "#12151c" or theme.top_panel_powerline
|
local main_color = o.minimized and "#12151c" or theme.top_panel_powerline
|
||||||
bg_clickable:set_widget(pl(ll, main_color, end_color, true))
|
bgb:set_widget(pl(ll, main_color, end_color, true))
|
||||||
end
|
end
|
||||||
-- And all of this gets a background
|
|
||||||
bgb:set_widget(bg_clickable)
|
|
||||||
|
|
||||||
l:buttons(create_buttons(buttons, o))
|
l:buttons(create_buttons(buttons, o))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue