proper button fluctation handling