Design Team/Proposals/Touchscreen: Difference between revisions
Appearance
< Design Team | Proposals
Garycmartin (talk | contribs) No edit summary |
Garycmartin (talk | contribs) No edit summary |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Dated}} | |||
===Touchscreen Support=== | ===Touchscreen Support=== | ||
Line 14: | Line 16: | ||
|- | |- | ||
|Virtual keyboard | |Virtual keyboard | ||
|not required | |not required, but useful for accessibility needs | ||
|useful in ebook mode | |useful in ebook mode | ||
|essential | |essential, needs to appear automatically when a text field is selected (with optional ability to expose/hide for compatibility) | ||
|- | |- | ||
|Cursor hover hints/palettes | |Cursor hover hints/palettes | ||
Line 31: | Line 33: | ||
|accessible | |accessible | ||
|accessible when using keyboard & trackpad | |accessible when using keyboard & trackpad | ||
|needs a touch gesture (swipe in/out from any edge) and/or new button (top left corner most likely) | |needs a touch gesture (swipe in/out from any edge) and/or new button (top left frame corner most likely), same old issues regarding discoverability of the Frame.... No physical home button on XO-3.0 hardware. | ||
|- | |- | ||
|Buttons & | |Buttons & context menu size/spacing | ||
| | |OK | ||
|nice to have | |nice to have them optimized to be touchable | ||
|size of | |size/spacing of buttons and menus needs to be optimised for finger sized interaction | ||
|- | |||
|hpane/vpane separator theme | |||
|OK | |||
|nice to have them optimized to be touchable | |||
|size menus needs to be optimised for finger sized interaction | |||
|- | |- | ||
|Screen resolution | |Screen resolution | ||
|n/a | |n/a | ||
|n/a | |n/a | ||
|XO-3.0 is 1024x768, make sure Sugar shell and activities are | |XO-3.0 is 1024x768, continue to make sure the Sugar shell, and activities are designed to scale well | ||
|- | |- | ||
|Keyboard shortcut hints | |Keyboard shortcut hints | ||
Line 47: | Line 54: | ||
|continue to add hints | |continue to add hints | ||
|hide keyboard hints from touch only UI | |hide keyboard hints from touch only UI | ||
|- | |||
|Scrolling a zoomed paint/drawing view | |||
|n/a | |||
|two finger drag to pan/scroll canvas | |||
|two finger drag to pan/scroll canvas, essential | |||
|- | |||
|Home favourite activity icons | |||
| | |||
| | |||
|need to increase icon layout size/spacing (larger targets, further apart) | |||
|- | |- | ||
|''blank'' | |''blank'' | ||
Line 53: | Line 70: | ||
|... | |... | ||
|} | |} | ||
= Other = | |||
[CSA: adding here some issues which aren't in the above table, not sure how they fit in] | |||
; Keyboard hints: show different keyboards for numeric, URL, or free-text input. (For example, TurtleArt wouldn't show the full keyboard when it just needs you to enter a number.) | |||
; Hover palettes: might need to be offset more from finger location to be useable on touchscreen (so that the finger doesn't cover up the palette when it pops up) | |||
; Drag to scroll: I prototyped this with "drag from top" / "drag from bottom" to scroll, it wasn't so bad. Simply mapping two-finger scroll to mouse scroll buttons gets you pretty far, although there are some focus issues to deal with -- it should first focus the element under the scroll start location, and *then* send it mouse scroll wheel events | |||
; Slide to switch zoom levels: just requires binding F12,F13 etc to "zoom out" and "zoom in", so olpc-kbdshim can emit the proper function key instead of trying to remember what zoom level it is in. | |||
; Uniform support for "mouseover" events: perhaps "swiping down" from a button will reveal its mouseover tool tips, for example. This is a bit of a hack, but it might make all the existing sugar activities which rely on mouseover more usable. |
Latest revision as of 16:56, 15 August 2012
Touchscreen Support
Feature description | Keyboard only hardware | Keyboard and touchscreen hardware | Touchscreen only hardware |
---|---|---|---|
Cursor | show always | show if trackpad used, hide if screen touched | hide always |
Virtual keyboard | not required, but useful for accessibility needs | useful in ebook mode | essential, needs to appear automatically when a text field is selected (with optional ability to expose/hide for compatibility) |
Cursor hover hints/palettes | accessible | accessible when using trackpad | accessible only if activated by 'right click' (touch & hold) |
Keyboard shortcuts | accessible | accessible when using keyboard | not available (must rely on visual icons, HW buttons, or touch gestures) |
Frame | accessible | accessible when using keyboard & trackpad | needs a touch gesture (swipe in/out from any edge) and/or new button (top left frame corner most likely), same old issues regarding discoverability of the Frame.... No physical home button on XO-3.0 hardware. |
Buttons & context menu size/spacing | OK | nice to have them optimized to be touchable | size/spacing of buttons and menus needs to be optimised for finger sized interaction |
hpane/vpane separator theme | OK | nice to have them optimized to be touchable | size menus needs to be optimised for finger sized interaction |
Screen resolution | n/a | n/a | XO-3.0 is 1024x768, continue to make sure the Sugar shell, and activities are designed to scale well |
Keyboard shortcut hints | continue to add hints | continue to add hints | hide keyboard hints from touch only UI |
Scrolling a zoomed paint/drawing view | n/a | two finger drag to pan/scroll canvas | two finger drag to pan/scroll canvas, essential |
Home favourite activity icons | need to increase icon layout size/spacing (larger targets, further apart) | ||
blank | ... | ... | ... |
Other
[CSA: adding here some issues which aren't in the above table, not sure how they fit in]
- Keyboard hints
- show different keyboards for numeric, URL, or free-text input. (For example, TurtleArt wouldn't show the full keyboard when it just needs you to enter a number.)
- Hover palettes
- might need to be offset more from finger location to be useable on touchscreen (so that the finger doesn't cover up the palette when it pops up)
- Drag to scroll
- I prototyped this with "drag from top" / "drag from bottom" to scroll, it wasn't so bad. Simply mapping two-finger scroll to mouse scroll buttons gets you pretty far, although there are some focus issues to deal with -- it should first focus the element under the scroll start location, and *then* send it mouse scroll wheel events
- Slide to switch zoom levels
- just requires binding F12,F13 etc to "zoom out" and "zoom in", so olpc-kbdshim can emit the proper function key instead of trying to remember what zoom level it is in.
- Uniform support for "mouseover" events
- perhaps "swiping down" from a button will reveal its mouseover tool tips, for example. This is a bit of a hack, but it might make all the existing sugar activities which rely on mouseover more usable.