Changes

Jump to navigation Jump to search
13 bytes added ,  14:40, 5 November 2009
add links to current activity at the top
Line 1: Line 1:  
{{TOCright}}
 
{{TOCright}}
 +
''The results of this project are now in the [[Activities/Browse|Browse]] activity and at [http://git.sugarlabs.org/projects/browse/repos/webified a branch of Browse]. See also complementary work on [[Karma]].''
 
====About you====
 
====About you====
   Line 5: Line 6:  
Lucian Branescu Mihaila
 
Lucian Branescu Mihaila
 
* '''What is your email address?'''
 
* '''What is your email address?'''
lucian dot branescu at gmail dot com
+
lucian dot braneNOSPAMscu at gmail dot com
 
* '''What is your Sugar Labs wiki username?'''
 
* '''What is your Sugar Labs wiki username?'''
 
lucian
 
lucian
Line 45: Line 46:  
* '''What is the timeline for development of your project? The Summer of Code work period is 7 weeks long, May 23 - August 10; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (July 6-13); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.'''
 
* '''What is the timeline for development of your project? The Summer of Code work period is 7 weeks long, May 23 - August 10; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (July 6-13); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.'''
   −
<br />'''Milestones''':
+
<br />'''Milestones'''
 +
Legend: - todo, + prototype done, # done
 
* Webified SSB can load a website (hello world)
 
* Webified SSB can load a website (hello world)
 
: Requires:  
 
: Requires:  
:: - getting more familiar with Sugar and Browse code
+
:: # getting more familiar with Sugar and Browse code
:: - building the Webified SSB.
+
:: # building the Webified SSB.
 
: '''Week 1'''
 
: '''Week 1'''
 
* Both Browse and Webified SSB can use GMail in offline mode (through Gears)
 
* Both Browse and Webified SSB can use GMail in offline mode (through Gears)
 
: Requires:  
 
: Requires:  
:: - getting the Firefox Gears extension working in Browse and the Webified SSB
+
:: + getting the Firefox Gears extension working in Browse and the Webified SSB
 
: '''Week 2, at worst 3'''
 
: '''Week 2, at worst 3'''
 
* Browse (with its utility extension) can successfully "sugarize" GMail and the resulting activity works.
 
* Browse (with its utility extension) can successfully "sugarize" GMail and the resulting activity works.
 
: Requires:
 
: Requires:
:: - activity template as host for the Webified SSB
+
:: # activity template as host for the Webified SSB
 
::: '''Week 3'''
 
::: '''Week 3'''
:: - python tool that packages up activities, using the activity template
+
:: # python tool that packages up activities, using the activity template
 
::: '''Week 3, at worst 4'''
 
::: '''Week 3, at worst 4'''
:: - button in Browse that uses the python tool
+
:: # button in Browse that uses the python tool
 
::: '''Week 4'''
 
::: '''Week 4'''
 
* JavaScript from inside a Webified SSB can call dbus stuff
 
* JavaScript from inside a Webified SSB can call dbus stuff
 
: Dbus is vital for good integration, but there may not be enough time in GSoC for making a nice JavaScript-side API. So I will at least provide a javascript-dbus bridge that web developers can build on.
 
: Dbus is vital for good integration, but there may not be enough time in GSoC for making a nice JavaScript-side API. So I will at least provide a javascript-dbus bridge that web developers can build on.
 
: Requires investigating:
 
: Requires investigating:
:: - [http://sandbox.movial.com/wiki/index.php/Browser_DBus_Bridge#Gecko_version_notes This] javascript-dbus bridge
+
:: + [http://sandbox.movial.com/wiki/index.php/Browser_DBus_Bridge#Gecko_version_notes This] javascript-dbus bridge
 
:: - if that is not appropriate, try marshalling calls to Python with [http://en.wikipedia.org/wiki/JSON-RPC JSON-RPC]
 
:: - if that is not appropriate, try marshalling calls to Python with [http://en.wikipedia.org/wiki/JSON-RPC JSON-RPC]
 
::: - through PyXPCOM (hulahop). almost as good as a direct bridge
 
::: - through PyXPCOM (hulahop). almost as good as a direct bridge
Line 77: Line 79:  
* Webified SSB can save and restore its state with the Journal.
 
* Webified SSB can save and restore its state with the Journal.
 
: Save & restore the browser state. possibilities:
 
: Save & restore the browser state. possibilities:
:: - just save the URL. It may be slower to resume and in fact loses some state, but it should be enough for most cases.
+
:: # Browse does this
:: - save the HTML structure. May have trouble with running scripts.
  −
:: - pickle the WebView. I'm not sure it works, but it may be the
   
: Save & restore Gears state
 
: Save & restore Gears state
:: - do nothing. Gears provides resuming state. The only real drawback is that only the latest version will be available to resume. No actual data would be stored in the Journal.
+
:: # do nothing. Gears provides resuming state. The only real drawback is that only the latest version will be available to resume. No actual data would be stored in the Journal.
 
:: - save the entire Gears profile. Could be very slow for large profiles.
 
:: - save the entire Gears profile. Could be very slow for large profiles.
:: - save just the sqlite database. Could be very slow for large databasesc (GMail).
+
:: - save just the sqlite databases. Could be very slow for large databases (GMail).
 
* Build a JavaScript-side API for basic functionality that cannot be achieved easily with HTML and Gears
 
* Build a JavaScript-side API for basic functionality that cannot be achieved easily with HTML and Gears
: - similar in concept to [http://fluidapp.com/developer/ Fluid's], but tailored for Sugar.
+
: - similar in concept to [http://fluidapp.com/developer/ Fluid's], but tailored for Sugar. Based on the javascript-dbus bridge
: - based on the javascript-dbus bridge
   
* Webified SSB can run a userscript (GreaseMonkey)
 
* Webified SSB can run a userscript (GreaseMonkey)
: Should be as easy as injecting some JavaScript in the page
+
: + should be as easy as injecting some JavaScript in the page
: a GUI like the one GreaseMonkey has is outside the scope of this project
+
: - a GUI like the one GreaseMonkey has is outside the scope of this project
: there will be instructions for how to add/remove userscripts
+
: - there will be instructions for how to add/remove userscripts
 
* Webified SSB can use a userstyle (CSS)
 
* Webified SSB can use a userstyle (CSS)
: again, should be just injecting some CSS
+
: # a user stylesheet can be made in data/style.user.css
: again, no GUI will be provided, just instructions
+
: + there's a GUI for it
    
Beyond GSoC, I would like to keep working on this.
 
Beyond GSoC, I would like to keep working on this.
Line 133: Line 132:  
====Miscellaneous====
 
====Miscellaneous====
 
[[Image:lucian-dev-env.png|thumb|right|My development environment with the small hack.]]
 
[[Image:lucian-dev-env.png|thumb|right|My development environment with the small hack.]]
* '''We want to make sure that you can set up a [[DevelopmentTeam#Development_systems|development environment]] before the summer starts. Please send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "Restart." See the image on the right for an example. It's normal to need assistance with this, so please visit our IRC channel, #sugar on irc.freenode.net, and ask for help.'''
+
* '''We want to make sure that you can set up a [[Development Team#Development_systems|development environment]] before the summer starts. Please send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "Restart." See the image on the right for an example. It's normal to need assistance with this, so please visit our IRC channel, #sugar on irc.freenode.net, and ask for help.'''
 
Picture to the right.
 
Picture to the right.
 
* '''What is your t-shirt size? (Yes, we know Google asks for this already; humor us.)'''
 
* '''What is your t-shirt size? (Yes, we know Google asks for this already; humor us.)'''
9

edits

Navigation menu