For now dialog causes memory leak as it does not remove it’s listeners. Probably it should have `.destroy` method, or something.