if I understand correctly, this happens when we load the default icons at startup. Is that it ?

If that's only for that, I'd rather move this in another function, like "preloadDefaultIcon" that would do only this part, and keep "loadDefaultIcon" clean, without this. What do you think ?

Also, I'd prefer to have getBlobByDefault in Icon, a "static" function, that would be called Icon.getBlobByDefault. We could have quite easily:
```
Icon.DEFAULT_APP_ICON_BLOB = new Icon({ XXX }).preloadDefaultIcon();
Icon.DEFAULT_BOOKMARK_ICON_BLOB = new Icon({ XXX }).preloadDefaultIcon();
```
and `getBlobByDefault` would return one or the other. This works if `preloadDefaultIcon` returns `this` at the end.
If you think this is too much work or this is not clean or whatever, then you can keep it in GridManager, but I think this is cleaner to have it in `Icon`, even if JavaScript does not make things very easy when we want to do static functions.