Changes

Jump to navigation Jump to search
no edit summary
Line 33: Line 33:  
# Design and implement a browser engine abstraction layer in Python with two backends: hulahop/xulrunner and pywebkitgtk/webkit.
 
# Design and implement a browser engine abstraction layer in Python with two backends: hulahop/xulrunner and pywebkitgtk/webkit.
 
# Port Browse to this new abstraction layer, complete with [[Webified|SSB support]].
 
# Port Browse to this new abstraction layer, complete with [[Webified|SSB support]].
 +
 +
Since recent efforts to empower browsers like HTML5, Jetpack and the Chrome extension API are minimalistic in nature, the web development world is moving towards engine-independent extensions. Thus, implementing Jetpack/Chrome extensions/similar homegrown API for Browse should be both feasible and would benefit from a wealth of existing code.
 +
 +
SSBs are becoming less "web app to replace desktop apps" and more "internet apps to fit better in the desktop". I will design Browse's new SSB support to match this trend.
    
* '''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.'''
 
Weeks:
 
Weeks:
 
# Write prototype of abstraction layer
 
# Write prototype of abstraction layer
  * WebView GTK widget that wraps hulahop.WebView or pywebkitgtk.WebView
+
#* WebView GTK widget that wraps hulahop.WebView or pywebkitgtk.WebView
  * nothing more than WebView.load_uri()
+
#* nothing more than WebView.load_uri()
 
# Simple Browser activity based on the abstraction layer
 
# Simple Browser activity based on the abstraction layer
  * recycle code from Browse & Surf
+
#* recycle code from Browse & Surf
  * implement missing functionality as needed
+
#* implement missing functionality as needed
 
# Basic browser functionality
 
# Basic browser functionality
  * DOM access
+
#* DOM access
  * html events mapped to gobject events
+
#* html events mapped to gobject events
 
# More browser functionality
 
# More browser functionality
  * downloads, history
+
#* downloads, history
  * user stylesheets
+
#* user stylesheets
  * browser settings (i.e. proxy)
+
#* browser settings (i.e. proxy)
 
# Port SSB code from Browse's ssb branch
 
# Port SSB code from Browse's ssb branch
  * create ssb
+
#* create ssb
  * edit userstyles/usersheets
+
#* edit userstyles/usersheets
  * bookmarklets
+
#* bookmarklets
 
# More functionality
 
# More functionality
 
# Polish
 
# Polish
158

edits

Navigation menu