Hi all,

I localized the bug of Mondrian,
As Alex said, width and height are stored in cache, so a script like this work fine:

======
|view o |
view := MOViewRenderer new.
o := OrderedCollection new: 100.
1 to: 100 do:[:i | o add: i].
(view shape: (MORectangleShape new
width: [:e | (Delay forMilliseconds: 50) wait. 200]; 
height: 200; 
withBorder; 
borderColor: [:e | Color gray])).
view nodes: o.
view layout: (MOGridLayout new gapSize: 1).
view open
======

It is slow to generate, then it scroll well.

Now, if I do the same thing with a Delay in the block of borderColor:, the visualization is dead.
======
|view o |
view := MOViewRenderer new.
o := OrderedCollection new: 100.
1 to: 100 do:[:i | o add: i].
(view shape: (MORectangleShape new
width: [:e | 200]; 
height: 200; 
withBorder; 
borderColor: [:e | (Delay forMilliseconds: 50) wait. Color gray])).
view nodes: o.
view layout: (MOGridLayout new gapSize: 1).
view open
======

This is the bug we have in Blueprint, in eDSM and all the visualization we made.
I think shapes should keep these state and maybe react to announcement.

Cheers,
---
Jannik Laval