Design Team/Sugar Shell Touch Input

From Sugar Labs
Jump to navigation Jump to search

System wide

  • Hide pointer cursor when touch screen interaction is occurring, reveal if/when mouse or trackpad is used
On Android 4 after not using the trackpad for a few seconds the cursor is hidden again, which works quite well --erikos
John pointed me towards XFixes HideCursor/ShowCursor and that there is a bug and a patch for gnome-settings-daemon that Sugar could hook into (out of my depth here, didn't get any working code) --gary
  • Palette hover/click behaviours
    • Single tap of a button with a primary action should _not_ trigger hover delay palette content (to prevent toolbar palettes and help hints obscuring UI after use)
    • Touch and hold _should_ trigger full display of palette content (like a right click, no extra delay)
    • Tapping an icon with no primary action should instantly open the full menu/palette, no delay (e.g. Frame right edge buddy icon/s)
  • Hide all keyboard shortcut accelerators when booting on touch only devices
  • Make toolbar overflow drop-down widget a standard sugar toolbutton width to allow easier access
  • Up/down menu overflow UI too thin (hard to scroll up, gtk combo widget needs work here)
  • Touch friendly text selection handles
    • Custom Sugar design, use user colours for selection handles (nothing is provided by gtk3+)
    • Selection palette Cut/Copy/Paste (Speak, Share with friend?)
    • Editable vs. non-editable widgets
    • single tap to insert cursor (snap to end of existing word?)
    • touch, hold and drag to move/place cursor (other designs also raise a zoom lens for small screen accuracy)
    • double tap to auto select a word
    • double tap and drag to select a range of text

Frame

  • Frame expose/hide gesture, swipe in from any screen edge, swipe out over any screen edge
    • Hide Frame gesture would need to avoid being interpreted as a canvas scroll (will need tuning, probably a combination of touch start edge proximity and gesture speed)
    • Need to consider Frame vs. page turning gestures, left/right page turning would need to avoid screen edge to allow for Frame gesture
    • Frame expose/hide gesture, could be limited to a swipe in/out from any screen corner if we find accidental activations at screen edges are triggered too often
  • Hide keyboard shortcut hint accelerators from tool buttons and palettes
  • Hide/expose on screen keyboard. Show either the Frame or on screen keyboard, but never both at the same time
  • Access Point device palette in lower Frame edge does not respond to touch events

Home

Favourite view

  • Instantly open the large central buddy XO icon palette when clicking/tapping
  • Add new grid layout?
  • Maximise Activity icon size for finger friendliness
  • Disable Activity icon dragging for fixed layouts, or fully implement feature
  • Activity palette start rework... (temporally might want to remove primary start action and just expose the full palette on click/tap)

List view

  • Scrolling
  • Favourite star hit behaviour

Neighborhood view

  • Remove primary action from AP icons (prevent accidental connection to random APs)
  • Remove primary action from ad-hoc icons (prevent accidental connection to random APs)
  • Invoke full ad-hoc, AP, Activity, Buddy palettes on single tap
  • Remove primary action from shared Activities (prevent accidental join of a shared activity)

Group view

  • Remove primary action from shared Activities
  • Invoke Buddy palette on single touch

Journal

  • Touch and hold on an activity icon should open the full palette (like a right click)
  • Touch dragging on an activity icon should allow that entry to be dragged to the bottom Journal pane UI for copying to another location
  • Touch dragging up/down on the canvas should smooth scroll the Journal list
  • Touching the Sort view toolbar icon while the palette is already visible, should dismiss the palette (should use this behaviour system wide)
  • Single touching a combo widget (e.g. Anything, Anytime) should lock open the menu for easier discovery (touching and dragging is a nice quick way to access an item but less obvious)
  • Combo widgets don't behave nicely if the current item selection is near the bottom of the menu, scrolling up is awkward, should show as many items as we can rather than lots of blank space when near the bottom of the list

Details view

  • Favorite star hit target too small to easily touch
  • Confirmation alert dialogue needed for Erase toolbar button (to prevent accidental data loss)
  • Confirmation alert dialogue needed for Duplicate toolbar button (for user feedback as to the action)