Hi All, 

Work has been continuing on GeckoView, the Gecko rendering engine wrapped in an 
Android widget [1]. Brad Lassey landed a basic patch to get Fennec to start 
using GeckoView internally, but there is much more work to do before Fennec is 
truly using GeckoView. Shane Tully has completed the initial work of packaging 
GeckoView into an Android library project for use in Eclipse projects [2]. We 
have some cleanup patches still required, but when those land, 
"geckoview-library" ZIP files will be created as part of the *package* step of 
your Fennec build. Those ZIP files can then be used in Eclipse [3]. 

Some other ongoing work includes creating proper bindings/interfaces for 
GeckoView so it's easy to use from a host application. That work is happening 
in a few bugs [4][5][6] and the proposed API and we are looking for feedback. 
The work-in-progress interfaces can be summarized as follows: 

class GeckoView { 
class Browser { 
void loadUrl(String url); 
void reload(); 
void stop(); 
boolean canGoBack(); 
void goBack(); 
boolean canGoForward(); 
void goForward(); 
} 

Browser add(String url); 
void remove(Browser browser); 
Browser getSelected(); 
void setSelected(Browser browser); 
ArrayList<Browser> getBrowsers(); 

void setGeckoViewChrome(GeckoViewChrome chrome); 
void setGeckoViewContent(GeckoViewContent content); 
} 

class GeckoViewChrome { 
void onReady(GeckoView view); 
// TODO: Add more host app support for showing prompts and implementing HTML 
APIs 
} 

class GeckoViewContent { 
void onPageStart(GeckoView view, Browser browser, String url); 
void onPageStop(GeckoView view, Browser browser, boolean success); 
void onPageShow(GeckoView view, Browser browser); 

void onReceivedTitle(GeckoView view, Browser browser, String title); 
// TODO: Add more support for page progress, favicons and link callbacks 
} 

The spirit of this structure is to not create a "Full Web Browser in a Widget", 
but to push a lot of the management and 100% of the UI to the host app. 
GeckoView should do the minimum amount of encapsulation. 

[1] https://wiki.mozilla.org/Mobile/Projects/GeckoView 
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=880118 
[3] https://wiki.mozilla.org/Mobile/GeckoView (this is already a bit out of 
date from the patches) 
[4] https://bugzilla.mozilla.org/show_bug.cgi?id=880121 
[5] https://bugzilla.mozilla.org/show_bug.cgi?id=880119 
[6] https://bugzilla.mozilla.org/show_bug.cgi?id=880123 

_______________________________________________
mobile-firefox-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/mobile-firefox-dev

Reply via email to