Yes
The logic around halo is bogus (especially the main table but this is
another story)
and hand has also too many responsibilities :)
Le 26/3/15 23:24, Aliaksei Syrel a écrit :
Hi,
Do you hate an issue when halo is not removed when parent morph is
deleted from the world and halo stays around nothing?
If you take a look at implementation of Morph>>removeHalo
removeHalo
"remove the surrounding halo (if any)"
self halo ifNotNil: [self primaryHand removeHalo]
You will see that it removes halo from primary hand. But before it
checks if halo associated to the morph is not nil. This check is
rather costly, so instead of it maybe it would make sense to ask hand
to try to remove halo from morph? The idea is that hand knows about
halo and halo knows about target morph. It means that primaryHand
could remove halo around the morph much faster than it happens now.
With this improvement it will be cheap to remove halo around the morph
when parent morph is deleted from the world.
What do you think?
(https://pharo.fogbugz.com/f/cases/15235/Much-faster-Morphic-removeHalo)
Cheers,
Alex