awesome/lib/awful
Uli Schlachter da6012da3e Fix memory leak in the default config on screen removal
The default config had tables like mywibox and mywibox[s] was the wibox
that is visible on screen s. When a screen is removed, nothing cleans up
these tables and so the screen and the wibox could not be garbage
collected. The same applies to the layoutbox, taglist etc.

This commit removes the global mywibox table and instead saves it as a
property on the screen. This way, the screen is not explicitly
referenced and when it is removed, the screen, its wibox and all of its
widgets become unreachable and can be garbage collected.

This commit also updates the docs and the tests that referenced things
(mostly the wibox) via mywibox[s] to now use s.mywibox.

Fixes: https://github.com/awesomeWM/awesome/issues/1125
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-09-30 22:46:51 +02:00
..
client use c:jump_to instead of client.jumpto 2016-08-10 13:02:02 +02:00
hotkeys_popup hotkey_popup: Do not use the deprecated geometry access 2016-09-11 02:10:02 -04:00
layout doc: Document all client layout theme properties. 2016-09-26 00:40:20 -04:00
mouse Merge pull request #1084 from Elv13/use_screen_props 2016-09-11 04:40:35 -04:00
widget Fix memory leak in the default config on screen removal 2016-09-30 22:46:51 +02:00
autofocus.lua awful.autofocus: Skip invalid screens 2016-05-08 14:52:31 +02:00
button.lua Fix luacheck warnings in half of awful 2016-02-11 21:55:32 +01:00
client.lua use c:jump_to instead of client.jumpto 2016-08-10 13:02:02 +02:00
completion.lua Fix luacheck warnings in half of awful 2016-02-11 21:55:32 +01:00
dbus.lua Remove the *.in from all files. 2015-06-19 22:33:32 +02:00
ewmh.lua ewmh: Remove dead code 2016-09-15 16:22:46 -04:00
init.lua Fix awful.util.pread() return value (#1005) 2016-07-17 15:29:15 +02:00
key.lua key: Make the ignore_modifiers table public 2016-07-09 20:01:17 +02:00
keygrabber.lua Fix luacheck warnings in half of awful 2016-02-11 21:55:32 +01:00
menu.lua doc: Document menu variables. 2016-09-26 00:40:19 -04:00
placement.lua placement: Port next_to_mouse to the new API 2016-08-20 16:21:48 -04:00
prompt.lua Fix memory leak in the default config on screen removal 2016-09-30 22:46:51 +02:00
remote.lua Fix luacheck warnings in half of awful 2016-02-11 21:55:32 +01:00
rules.lua Make rules with 'tag = "3"' work with multiple screens (#992) 2016-07-09 19:17:35 +02:00
screen.lua awesomerc: Explicitly select a default screen 2016-09-21 22:15:09 +02:00
spawn.lua Remove awful.{spawn.,}pread (#184) 2016-07-16 17:59:47 +02:00
startup_notification.lua Remove the *.in from all files. 2015-06-19 22:33:32 +02:00
tag.lua Merge pull request #1066 from Akulen/fix_gap_ignore 2016-09-15 16:01:19 -04:00
titlebar.lua doc: Document the titlebar theme variables. 2016-09-26 00:40:20 -04:00
tooltip.lua tooltip: Stop using a fallback font (#1061) 2016-08-30 12:57:40 +02:00
util.lua util: Add a class deprecation function. 2016-05-30 17:51:18 -04:00
wibar.lua Lua: Remove calls to add_signal() 2016-06-04 18:23:48 +02:00
wibox.lua util: Add a class deprecation function. 2016-05-30 17:51:18 -04:00