added throttling to prevent accidental double clicks