Copied over addListener logic
Copied over closeAll behavior