As above, I'm curious why we call `this.init()` on show and hide