Legacy Maemo 5 Documentation/Human Interface Guidelines/Windows
Contents |
Windows
The concept of windows in Hildon is considerably different when compared to windows in a traditional desktop application. In Hildon, the organization of windows, as well as the parts that compose them, and their behavior change a lot. For instance, users cannot drag a window and move it around, since application windows in Hildon are fully maximized and the position of dialogs is fixed.
This section covers these differences by describing some of the windows' properties as well as how to organize windows and use particular types of windows (like wizard dialogs).
Window Views
The concept of window organization changes in Hildon. On a traditional desktop application, it is normal that an action performed over an element in a window might bring up another window which can bring up a third one, and so on. On Hildon, the concept of window views is introduced. The idea behind window views is that windows are actually stacked and the user can only see the topmost one. An application can have several windows describing main tasks which are called root views (figure 1) and, on top of which, subviews (figure 2) are created. Whenever a subview is closed, the user is presented with the previous view. For instance, a root view could contain a list of email messages; selecting one of them would bring a subview displaying it.
Figure 1: A root window
Many activities in an application should be presented and done in a subview and, after the user is done interacting with it, he or she can press the back button to go back to the previous view.
Figure 2: A sub view
Hence, split or tree views shouldn't be used. Instead, each area that could be split should be added to a window in the window stack. Consider as an example an email application. The root view would present the user with a list of options he can choose like 'Inbox', 'Outbox', 'Drafts', etc. If the user chooses 'Inbox', a new window is presented with the list of messages in the email's inbox. Clicking on a message from the list would bring in a new window with that message's content.
Note that it is important to choose when an action on an element in a window of a stack will either initialize a new subview or a fully independent window. Normally, new tasks that cut with the flow of actions are likely to mean a new independent window and not a new subview. For example, when browsing a to-do list, the action of creating a new to-do item should be a subview and not an individual window.
Properties of Windows
Titles
Every window should have a title. Mind that given the small screen dimensions, the window title should not be long nor contain unnecessary information. For example, do not include the program's version number in the title text.
Since only one window is shown at a time, it is easier for the user to identify to which application does a window belong. This way, you do not need to repeat the application's name in each window title unless not doing so might confuse the user. For example, it might not be necessary to include the application name in the title of a subview, since it is easy for the user to note where the subview comes from.
Sizes
When not on fullscreen mode, an application's main window size is always the maximum it can occupy, that is, the desktop size minus the area where framework specific information is displayed.
Window Modes
A window can be either in normal or fullscreen mode being the availability of the latter depending on the application type.