Difference between revisions of "Features/WebKit/Development"

From Sugar Labs
Jump to: navigation, search
(Start all instances in the same process)
(Link palettes)
Line 66: Line 66:
===Link palettes===
===Link palettes===
* follow link, start download: the tricky bit is how to invoke the palette
===Start all instances in the same process===
===Start all instances in the same process===

Revision as of 08:01, 12 January 2012

Browse functionality and the replacements

Activity toolbar

  • session title, should be the title of the last page visited in the journal? VERIFY
  • share activity, the starred pages are shared, anything else? VERIFY erikos

Edit toolbar

  • undo/redo/copy/paste DONE
  • search in Document DONE
  • style text found in search, put yellow background, patch, we need to set the background color of the widget as well accordingly to make the currently selected match better visible as well

View toolbar

  • zoom in/zoom out DONE
  • fullscreen DONE
  • show/hide tray DONE
  • style tray in the theme, patch: SugarHTray * , SugarVTray * { background-color: @toolbar_grey;}

Home Button

  • go back to home page DONE

Title entry

  • show Address/title DONE
  • reload and stop button DONE
  • normalize text entry and autosearch DONE
  • auto completion DONE
  • represent loading status
    • change cursor to busy cursor?
    • update the bottom overlay with a status message?
    • show spinning wheels in tabs?

Go back and forward buttons

  • History DONE
  • Palettes showing history (see webtoolbar.py methods _session_history_changed_cb, _reload_session_history, _history_item_activated_cb)

Favorite button

  • create a session bookmark
  • create a thumbnail DONE

Stop button

  • quit activity (active downloads?)


  • ctrl + 'd': add link DONE
  • ctrl + 'f': find DONE
  • ctrl + 'l': focus url entry DONE
  • ctrl + 'minus': zoom out DONE
  • ctrl + ['plus', 'equal']: zoom in DONE
  • ctrl + 'Left': go back DONE
  • ctrl + 'Right': go forward DONE
  • ctrl + 'r': reload DONE
  • ctrl + 't': add tab DONE

Multiple tabs

  • page title DONE
  • restore tabs DONE
  • tabs size
    • always the same height
    • fixed width depending on the number of tabs, see message for commit 959f86e0406914267047dc10302f98a059b6ba21


  • download a file
  • check for active downloads when closing


  • upload a file, rewrite filepicker.py for webkit, Epiphany will not help us in this one, the html field is <form><input type=file>

Link palettes

  • follow link, start download: the tricky bit is how to invoke the palette

Start all instances in the same process

Browse using xulrunner is a single process activity where all instances are in the same process. WebKit does handle the same well. DONE

Authenticate with schoolserver

  • Create a HTTP Cookie to authenticate with the Schoolserver


  • Set intl.accept_languages preference based on the locale

Don't autoplay flash, embed in web page

  • see agent-stylesheet.css in Browse how we did this before (test with njambre.org web page)

There is a free Safari (using WebKit) plugin that does the same: https://github.com/rentzsch/clicktoflash


  • CAcert

View Source

  • The view source feature in Browse, should show the html page source, added to the activity source. DONE


  • The page should be zoomed for the screen in use.

Identify Sugar version through Browser

This can be done using the user agent: http://erikos.sweettimez.de/?p=1075 has a code snippet