button mechanics improved