Do not use history.pushState to update the URL if whatever is happening on the page doesn't count as navigation. Try to look into history.replaceState and see if it helps.
Do not use history.pushState to update the URL if whatever is happening on the page doesn't count as navigation. Try to look into history.replaceState and see if it helps.
Another potential approach could be to offer a custom-built widget for the undo/redo stack in the UI – in the simplest case, for example, a dropdown. It could also be persisted somewhere, e.g. in local storage, so that it isn’t lost when you navigate away.
Just pushed a fix that should resolve this while still maintaining state in the URL (using replaceState as suggested by OP).
For now it foregoes the undo/redo. I'll explore implementing it as a separate widget as you suggest in the future.
Thanks for the tip! I just pushed a fix that uses replaceState instead of push :)