button event driven volume widget