Add better button behavior