Features/Touch/Development

From Sugar Labs
Jump to navigation Jump to search

Todo

Triage touch features

Essential

  • OSK
    • Canvas auto panning based on input focus
    • Show Frame or OSK, never both
    • Hide OSK key on OSK
    • Show OSK button on device Frame edge
    • Sugar theme
    • Internationalisation
      • e.g. layout covers our accent needs
    • Multilingual
      • e.g. ability to switching between at least two languages
    • Landscape/portrait
    • Reveal on text input focus, auto **dismiss** on loss of focus
    • Don't auto reveal in laptop mode, only ebook mode
  • Text selection
    • Selection handles
    • Cut(?)/Copy/Paste/Speak selection palette
  • Drag scrolling support
  • Hide/show mouse cursor based on input method
  • Palette behaviours
    • Tapping icons with no primary action should instantly open full palette
      • e.g. Right Frame edge buddy icons, central home buddy icon
      • e.g. Access Point device icon
  • Up/down menu/combo overflow widgets need to be larger
  • Frame
    • Expose/hide gesture!!!
    • Button for top left (fallback)
  • Home view
    • Disable Activity icon dragging in fixed layouts
      • e.g. allows easier access to long hold of Activity icon to access palette
  • Neighbourhood view
    • Remove primary action from AP icons
    • Remove primary action from ad-hoc icons
    • Remove primary action from shared activity icons
  • Journal
    • Touch & hold on an entry should invoke full palette
    • …Dragging and entry needs to work but not prevent Touch * hold palette if finger moves a little
      • e.g. to copy it to another volume
  • Combobox
    • Single touch of a combo should lock open it's palette and allow drag scrolling
    • Should not show blank space when previous selection was near the bottom of the list
  • Touch & hold == right click equivalent
  • Activities
    • Write
    • Browse
    • Paint
    • Read
    • Calculate
    • Turtle Art
  • Visual feedback for button presses
    • Generic solution - use a mouse HW cursor with alpha white 'glow' marking all primary touch events?
    • Existing GTK button down highlights work well in toolbars
    • Shell canvas area views
      • Use grey round rect outline for presses
        • AP icons
        • Activity icons
        • Buddy icons
        • Ad-hoc icons
      • Only really needed where there is no palette and/or primary action is too slow
  • Visual feedback for touch and hold
    • Animated circle timer?
    • Blinking grey round rect outline

Ideal

  • Palette behaviours
    • Single touch should never trigger hover content
    • Touch and hold should raise hover content
    • Touching the icon of an open palette should close the palette
      • e.g. Journal list sort palette
  • Toolbar overflow widget should be same size as Sugar toolbar button icons
  • Zoom to content behaviour
    • e.g. Browse
  • Frame
    • Activity Zoom icon (and physical key) should act like Alt-Tab
  • Home view
    • Improve layouts
      • e.g. larger Activity icon usage where possible
      • e.g. Increase separation between icons where possible
  • Details view
    • Alert dialogue needed for Erase toolbar button
    • Alert dialogue needed for Duplicate toolbar button
  • Accelerometer auto rotate based on rotation when laptop is in ebook mode
  • Activities
    • Physics
    • Clock
    • Memorize
    • Image Viewer
    • Abacus
    • FotoToon
    • Implode
    • Labyrinth
    • Chat
    • Help
      • e.g. pick up web kit features
    • WikipediaEN/ES
      • e.g. pick up web kit features
    • Maze
  • Drag scrolling
    • Smooth!!
  • Priorities UI redraw over other processes
    • e.g. don't stall the UI thread

Polish

  • Smooth transitions/animations
  • Text selection
    • Feature extensible selection palette
      • e.g. Activity specific formatting
  • Home view
    • New grid layout option
  • Make sure Activities and shell works well in portrait
    • e.g. toolbar button overflow in some Activities
  • Pre-light hover effects (remove for touch screen input)
  • hspan/vspan separators, make sure they are large enough for finger interaction
  • Activities
    • Record
    • Distance
    • Get Books
    • InfoSlicer
    • Jukebox
    • Log
    • Measure
    • Moon
    • Portfolio
    • Pippy
    • Ruler
    • Speak
    • StopWatch
    • Terminal
    • Typing Turtle
    • Words
  • OSK
    • Subtle key click feedback
    • Custom context
    • Custom key strips/extras based on Activity
    • Predictive text
      • Context sensitive
      • Locale sensitive
  • Activity start/resume screen
    • Remove start/resume palette
    • Palette options presented in fullscreen UI, before activity pulse loader

Not in this cycle

  • Activities
    • TamTamEdit
    • TamTamJam
    • TamTamMini
    • TamTamSynthLab
    • Etoys
    • Scratch

Done