[sugar] Home Design: Free Layout View
Eben Eliason
eben.eliason
Thu Jun 12 15:08:29 EDT 2008
At a recent meeting with Nicholas, some reservations about the
redesign of Sugar were brought up, specifically with regard to the
layout of the Home view. While the broader shift in perspective which
places activities and other active status elements in the Frame was
unanimously welcomed as a Good Thing, the presentation of the
activities within Home was not.
The main issue of concern was one of scalability; The circular
arrangement suggested an inherent finite quality which runs counter to
our goals of allowing children to create and explore as much as
possible. After experimenting with a number of layouts, it became
clear that a more traditional freeform view maximizes potential use of
the available space, retains the XO at the center (which is core to
the zoom metaphor and reflects the philosophy of child ownership of
laptops), and also provides, via drag'n'drop, the ability for kids to
further personalize their Home by arranging and categorizing
activities as they see fit. While we contend that the notion of
favorites is still a powerful organizational tool, and therefore
propose to keep it in the new designs, this free view scales well
enough to prevent the need for using them if one doesn't wish to.
Please observe the new design mockups on the wiki at
http://wiki.laptop.org/go/Designs/Activity_Management for further
details. As code freeze is rapidly approaching and these changes are
slated for the August release aside the rest of the redesign, your
feedback is greatly appreciated. Thanks!
- Eben
PS. While considering the implementation details of the new Home
design, an interesting extension of this idea was proposed: a modular
layout system. It would take as input the coordinates of the dropped
icon (and those of all others on screen as well), and output
coordinates for where the icons should actually be drawn. (We could
also include metadata such as name, tags, etc. to allow sorting,
grouping and such.)
The simplest layout is the identity function, naturally. A slightly
more interesting layout would be the identity function, with some
extra jiggle logic to prevent overlapping icons. Another possibility,
of course, is to compute the angle between the center of the screen
and the coordinate of the dropped icon, compute a radius r based on
the total number of icons, and then draw all of the dropped icons in a
ring of radius r with the newly dropped one at the appropriate
position in the ring. One can imagine many more, and more
importantly, the possibility for an extensible system which allows
kids to create their own custom layouts.
More information about the Sugar-devel
mailing list