FSM update: button debounce, double click, long press