Line 45: |
Line 45: |
| * '''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'''. Stuff with + is 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 81: |
Line 81: |
| :: - pickle the WebView. I'm not sure it works, but it may be the easiest way | | :: - pickle the WebView. I'm not sure it works, but it may be the easiest way |
| : 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 databases (GMail). | | :: - save just the sqlite database. Could be very slow for large databases (GMail). |
Line 88: |
Line 88: |
| : - 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. |