Editing Legacy Maemo 5 Documentation/Human Interface Guidelines/User Input

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
{{Legacy documentation}}
{{Legacy documentation}}
 +
=User Input=
There can be several ways to use a Hildon powered device. Users might be able to use the device in a specific orientation - landscape or portrait - using their fingers or a stylus. These various types of input and usage influence the way a user interacts with a graphical interface and hence influence the way the interface is developed. This chapter covers those different types of usage advising the interface designer or developer about what can result from choices about widgets placement and introduces concepts to avoid such problems.
There can be several ways to use a Hildon powered device. Users might be able to use the device in a specific orientation - landscape or portrait - using their fingers or a stylus. These various types of input and usage influence the way a user interacts with a graphical interface and hence influence the way the interface is developed. This chapter covers those different types of usage advising the interface designer or developer about what can result from choices about widgets placement and introduces concepts to avoid such problems.
==Input Hardware==
==Input Hardware==
-
 
The input hardware is the hardware that a Hildon device provides the users so they can interact with it. When the user interacts with a component of the input hardware, the device must provide feedback.
The input hardware is the hardware that a Hildon device provides the users so they can interact with it. When the user interacts with a component of the input hardware, the device must provide feedback.
===Hard Keys===
===Hard Keys===
-
 
The hard keys are the keys in the device that constitute hardware - the ones you can physically touch. The set of hard keys available in a device surely varies according to the device and that difference must be taken into account when developing a Hildon application. Nonetheless, there are sets of keys that can be found in pretty much any device.
The hard keys are the keys in the device that constitute hardware - the ones you can physically touch. The set of hard keys available in a device surely varies according to the device and that difference must be taken into account when developing a Hildon application. Nonetheless, there are sets of keys that can be found in pretty much any device.
====Common Hard Keys====
====Common Hard Keys====
-
 
* ''Power'': This key is the most common because of its basic but vital function.
* ''Power'': This key is the most common because of its basic but vital function.
* ''Lock/Unlock'': This is also a common key that sets the device either sensitive or not to the touch. Note that although common there are devices who substitute is by soft keys.
* ''Lock/Unlock'': This is also a common key that sets the device either sensitive or not to the touch. Note that although common there are devices who substitute is by soft keys.
Line 18: Line 16:
====Optional Hard Keys====
====Optional Hard Keys====
-
 
* ''Capture'': Devices that feature such a key, use it normally to active a camera and capture an image.
* ''Capture'': Devices that feature such a key, use it normally to active a camera and capture an image.
* ''Keyboard'': Many devices feature a keyboard either always present or a slide-out one. Hildon supports two types of text input - the hardware keyboard and a touch screen text input method. The latter should not be activated when the keyboard is available or slid out.
* ''Keyboard'': Many devices feature a keyboard either always present or a slide-out one. Hildon supports two types of text input - the hardware keyboard and a touch screen text input method. The latter should not be activated when the keyboard is available or slid out.
 +
==Finger Interaction==
==Finger Interaction==
-
 
Devices using Hildon can be used with the fingers without the need of a stylus pointer. Also, devices using Hildon should be used in either a landscape or portrait orientation. Some devices might also be able to detect the orientation and adapt themselves to that mode. Like described in the principles section, you must keep in mind that using the fingers to interact with the device will result in covering parts of the application. If the area that is being covered by the user's fingers/hand displays an important message, the user is not able to see it. Hence, you must choose a good placement of the widgets as well as to offer ways of letting the users do it themselves.
Devices using Hildon can be used with the fingers without the need of a stylus pointer. Also, devices using Hildon should be used in either a landscape or portrait orientation. Some devices might also be able to detect the orientation and adapt themselves to that mode. Like described in the principles section, you must keep in mind that using the fingers to interact with the device will result in covering parts of the application. If the area that is being covered by the user's fingers/hand displays an important message, the user is not able to see it. Hence, you must choose a good placement of the widgets as well as to offer ways of letting the users do it themselves.
===Two Hand Usage===
===Two Hand Usage===
-
 
The two hand usage of a device happens when the user is holding the device with both hands and using the fingers to interact with it. In this case, the device is in the landscape mode. If the user is using for example both thumbs to interact with the device, the area covered by them will be greater than if it was just one finger, and this constitutes a bigger challenge for the interface designer.
The two hand usage of a device happens when the user is holding the device with both hands and using the fingers to interact with it. In this case, the device is in the landscape mode. If the user is using for example both thumbs to interact with the device, the area covered by them will be greater than if it was just one finger, and this constitutes a bigger challenge for the interface designer.
===Two Hand Usage with Keyboard===
===Two Hand Usage with Keyboard===
-
 
Pay special attention to the fact that some devices also include an external keyboard that slides out.
Pay special attention to the fact that some devices also include an external keyboard that slides out.
Line 37: Line 32:
===One Hand Usage===
===One Hand Usage===
-
 
When the user is using only one hand to hold and interact with the device, the device must be in the portrait mode as it is not be easy to use in the landscape orientation. The horizontal size of the screen is less than the vertical size and the applications must adapt themselves to it. Using fixed sizes or static placements make the adaption difficult.
When the user is using only one hand to hold and interact with the device, the device must be in the portrait mode as it is not be easy to use in the landscape orientation. The horizontal size of the screen is less than the vertical size and the applications must adapt themselves to it. Using fixed sizes or static placements make the adaption difficult.
===Soft Keys and Touch Types===
===Soft Keys and Touch Types===
-
 
The user interacts with a Hildon device mainly by touching the screen, so there are different types of taps that Hildon supports.
The user interacts with a Hildon device mainly by touching the screen, so there are different types of taps that Hildon supports.
====Single Tap====
====Single Tap====
-
 
The user can activate all interactive elements like controls, buttons, links, and so on, by tapping and releasing on top of the element's control area. The process of doing a ''single tap'' is divided in states. The following list describes those states for a better understanding of what a user can do with a ''single tap''.
The user can activate all interactive elements like controls, buttons, links, and so on, by tapping and releasing on top of the element's control area. The process of doing a ''single tap'' is divided in states. The following list describes those states for a better understanding of what a user can do with a ''single tap''.
Line 53: Line 45:
====Long-Tap====
====Long-Tap====
-
 
Whenever a user taps and keeps the finger down for longer than usual, it produces a long tap. Use long taps only as a shortcut to a function that can be accessed in another way. Typically, a long tap is used to bring out a context-sensitive menu in a list of items. For example, the user can 'long tap a contact in the contacts list to bring out a menu with options.
Whenever a user taps and keeps the finger down for longer than usual, it produces a long tap. Use long taps only as a shortcut to a function that can be accessed in another way. Typically, a long tap is used to bring out a context-sensitive menu in a list of items. For example, the user can 'long tap a contact in the contacts list to bring out a menu with options.
-
== Stylus Interaction ==
+
==Stylus Interaction ==
Although Hildon widgets aim at being used by fingers, the stylus can obviously still be used when it is part of the hardware. However, its usage is only advisable for tasks that require a bigger precision such as browsing the web (most websites are designed to be used by a mouse), imaging applications like a drawing application and applications that need too many widgets to be shown at the same time, leaving no space for fingers.
Although Hildon widgets aim at being used by fingers, the stylus can obviously still be used when it is part of the hardware. However, its usage is only advisable for tasks that require a bigger precision such as browsing the web (most websites are designed to be used by a mouse), imaging applications like a drawing application and applications that need too many widgets to be shown at the same time, leaving no space for fingers.
-
==Dimensions==
 
 +
==Dimensions==
A button that the user is meant to click with a mouse or a stylus is not usually easily pressed with a finger because of the small size. Apart from the size, the placement of a widget right next to another will require more precision and hence make the widgets difficult to be pressed by fingers.
A button that the user is meant to click with a mouse or a stylus is not usually easily pressed with a finger because of the small size. Apart from the size, the placement of a widget right next to another will require more precision and hence make the widgets difficult to be pressed by fingers.
Line 69: Line 60:
===Hildon control size types===
===Hildon control size types===
-
* <code>HILDON_SIZE_AUTO_WIDTH</code>: Automatic width
+
*''HILDON_SIZE_AUTO_WIDTH'' Automatic width
-
* <code>HILDON_SIZE_HALFSCREEN_WIDTH</code>: Half of the screen width
+
*''HILDON_SIZE_HALFSCREEN_WIDTH'' Half of the screen width
-
* <code>HILDON_SIZE_FINGER_HEIGHT</code>: A finger height
+
*''HILDON_SIZE_FINGER_HEIGHT'' A finger height
-
* <code>HILDON_SIZE_THUMB_HEIGHT</code>: A thumb height
+
*''HILDON_SIZE_THUMB_HEIGHT'' A thumb height
-
* <code>HILDON_SIZE_AUTO</code>: Automatic height and width
+
*''HILDON_SIZE_AUTO'' Automatic height and width
 +
 
Use the size variables above when you need to choose a size for a widget that requires the user's control according to the way you want the user to use it. For example, if you place a button on a bottom corner of the screen, it is likely that that the user will use thumbs to press the button, so you should choose the <code>HILDON_SIZE_THUMB_HEIGHT</code> for it.
Use the size variables above when you need to choose a size for a widget that requires the user's control according to the way you want the user to use it. For example, if you place a button on a bottom corner of the screen, it is likely that that the user will use thumbs to press the button, so you should choose the <code>HILDON_SIZE_THUMB_HEIGHT</code> for it.
==Interaction Actions==
==Interaction Actions==
-
 
A Hildon powered device provides different types of actions that can be done. Some of them are equal to the actions on a computer while others are rather different or innovative.
A Hildon powered device provides different types of actions that can be done. Some of them are equal to the actions on a computer while others are rather different or innovative.
Line 84: Line 75:
===Copy, paste, cut===
===Copy, paste, cut===
-
 
The text input fields support the common actions of copying, pasting or cutting. For that, the user can use the hardware keyboard (if available) shortcuts ''Ctrl+c'', ''Ctrl+v'', ''Ctrl+x'', respectively.
The text input fields support the common actions of copying, pasting or cutting. For that, the user can use the hardware keyboard (if available) shortcuts ''Ctrl+c'', ''Ctrl+v'', ''Ctrl+x'', respectively.
===Panning===
===Panning===
-
 
Hildon discourages the use of scrollbars on interfaces intended to be used with fingers. The concept of panning refers to navigating through content on screen by dragging on top of the contents. When the user enters elements that hold content that cannot be fully viewed within the screen area, a scroll indicator must appear on the right and bottom sides of the screen and the user can drag on top of that area to navigate through the contents.
Hildon discourages the use of scrollbars on interfaces intended to be used with fingers. The concept of panning refers to navigating through content on screen by dragging on top of the contents. When the user enters elements that hold content that cannot be fully viewed within the screen area, a scroll indicator must appear on the right and bottom sides of the screen and the user can drag on top of that area to navigate through the contents.

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: