i think the answer to the stretched icon issue is not to difficult:
1) divide screen into grid divided by the default width/height of icons
2) order icons in whatever natural order you choose (alpha, date, etc.)
3) use a greedy placement algorithm such that:
- icon is placed in the farthest-left, then farthest-top empty grid square, anchored by it's top-left corner
- icon claims as non-empty any grid squares it overlaps
- repeat with next icon
obviously replace top-left with the text layout locale pref for right-left langs.
i think the answer to the stretched icon issue is not to difficult:
1) divide screen into grid divided by the default width/height of icons
2) order icons in whatever natural order you choose (alpha, date, etc.)
3) use a greedy placement algorithm such that:
- icon is placed in the farthest-left, then farthest-top empty grid square, anchored by it's top-left corner
- icon claims as non-empty any grid squares it overlaps
- repeat with next icon
obviously replace top-left with the text layout locale pref for right-left langs.