Well, it will only have effects on the process that refreshes the storyboard - my code is cleanly organised so the change won't affect anything else.
But with that change you should notice smoother scrolling as well.
Some technical stuff if you're interested :
In the current version, the storyboard generates only the rows around the visible area of the storyboard. When something changes (new frame, new block...) it only refreshes these rows around the visible area. These refreshes are handled asynchronously : updates to the storyboard are first computed in the thread, then the rows are displayed on the screen in any order (the visible ones first, and the one around afterwards, but a row displayed below another one could be generated before - it's not linear).
The advantage of that is that a change on the storyboard takes very little time to compute because there are only a few frames to rebuild. And because it's mostly asynchronous (a big part of the process is offloaded to the thread) you can still have a relatively smooth scrolling even though rows are being generated as you scroll.
The disadvantage is that, well, it introduces some synchronisation issues, and it can feel significantly slower on single-core CPUs, which can't optimise the use of this thread..
What I'm aiming at now is, on the contrary, to have the whole storyboard generated at once in a linear way.
If the browser can handle such a big page (recent browsers should be able to cope with it, hopefully), you can then scroll perfectly smoothly since there is no treatment to do when scrolling, and most synchronisation issues are no longer relevant. It should also be a little bit simpler for the browser to manage display because since the storyboard is built in a linear way, the rows are generated in the same order as they are displayed on screen.
This, I already have working on my dev version; however, it's hardly usable because each change requires rebuilding the whole storyboard. Imagine if you have a 7000 frames trial : inserting a new frame requires rebuilding thousands of rows, which causes your browser to freeze for a while... So the next step is to optimise that so that a storyboard change only refreshes the affected rows.
If knowledge can create problems, it is not through ignorance that we can solve them. Si le savoir peut créer des problèmes, ce n'est pas l'ignorance qui les résoudra.
( Isaac Asimov )