prevent history.pushState from spamming browser history