wibox.widget.systray: Also emit redraw_needed
When emitting layout_changed, the widget is relayouted. If this doesn't actually change anything, nothing will be redrawn. Thus, this also emits redraw_needed to force redraws. This fixes a race condition with some weird tray icons. A new tray icon is created and the systray is updated. Then this new icon is destroyed immediately again and at the same time another icon is created. Then, the systray isn't updated since the number of icons (=the layout) did not actually change. However, it needs to be updated and so we ended up with broken/missing icons. Fixes: https://github.com/awesomeWM/awesome/issues/487 Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
parent
58bd21ad79
commit
c02969bb0e
|
@ -84,6 +84,7 @@ local function new(revers)
|
||||||
|
|
||||||
capi.awesome.connect_signal("systray::update", function()
|
capi.awesome.connect_signal("systray::update", function()
|
||||||
ret:emit_signal("widget::layout_changed")
|
ret:emit_signal("widget::layout_changed")
|
||||||
|
ret:emit_signal("widget::redraw_needed")
|
||||||
end)
|
end)
|
||||||
|
|
||||||
return ret
|
return ret
|
||||||
|
|
Loading…
Reference in New Issue