-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Is your feature request related to a problem? Please describe.
Currently when timeweb goes to a certain virtual time, it creates a blocking loop (see processUntilTime). This can create performance issues and poor user experience when run inside a browser.
Additionally, the user may want to stop iterating based off of some logic of dynamic page conditions. In this case, they would want to be able to exit the blocking loop too (see tungs/timesnap#63 for an example).
Describe the solution you'd like
It would be nice to be able to set some sort of condition to either relinquish that loop, either based on real time (so as not to freeze the browser), or some user defined criteria.
It would be good to be able to pass a custom function that serves as a condition to end the blocking loop in processUntilTime. It'd be good if the user could distinguish between relinquishing (where the loop is returned to), versus ending.
Describe alternatives you've considered
This could be another function besides goTo, like relinquishingGoTo.
Additional context
Note that some of the capturing of screenshots relies on the blocking nature of timeweb (for instance WebGL canvases can become stale if not captured immediately after rendering). This should be considered when implementing this feature.