Author: [EMAIL PROTECTED]
Date: Mon Oct 27 15:58:02 2008
New Revision: 3876

Modified:
    wiki/DesignOOPHM.wiki

Log:
Edited wiki page through web user interface.

Modified: wiki/DesignOOPHM.wiki
==============================================================================
--- wiki/DesignOOPHM.wiki       (original)
+++ wiki/DesignOOPHM.wiki       Mon Oct 27 15:58:02 2008
@@ -151,15 +151,17 @@
    || tag (byte) =11 || ref id (32 bit signed) ||

   === Browser Plugin ===
- The browser plugin is responsible for handling and dispatch messages in  
the browser and also for interacting with the browser's !JavaScript engine.  
Each plugin consists of two conceptual parts: browser-specific  
functionality for interacting with the !JavaScript engine and a set of  
shared C++ classes that implement the communication channel and message  
serialization. We continue to make every effort to implement the plugins  
using common and standard APIs (like NPAPI/npruntime), but where that is  
insufficient we rely on proprietary (but public) plugin APIs. Below is a  
list of the supported browsers and the APIs we are using, or planning to  
use.
+ The browser plugin is responsible for handling and dispatch messages in  
the browser and also for interacting with the browser's !JavaScript engine.  
Each plugin consists of two conceptual parts: browser-specific  
functionality for interacting with the !JavaScript engine and a set of  
shared C++ classes that implement the communication channel and message  
serialization. We continue to make every effort to implement the plugins  
using common and standard APIs (like NPAPI/npruntime), but where that is  
insufficient we rely on proprietary (but public) plugin APIs. Below is a  
list of the popular browsers and the APIs we are using, or planning to use.

- !WebKit - !WebKit (WBPL) Plugin _(Sadly, npruntime has limitations we  
haven't been able to overcome in !WebKit)_
+  !WebKit - !WebKit (WBPL) Plugin _(Sadly, npruntime has limitations we  
haven't been able to overcome in !WebKit)_

- Mozilla - NPAPI/npruntime
+  Mozilla - XPCOM component _(NPAPI was initially used and it is mostly  
functional, but we ran into a problem with Window.enableScrolling that was  
insurmountable)_

- IE6/7 - ActiveX control
+  IE6/7/8 - ActiveX control

- Opera - Unsupported (NPAPI/npruntime when we confirm that they have  
finally implemented it fully)
+  Opera - Unsupported (NPAPI/npruntime when we confirm that they have  
finally implemented it fully)
+
+  Chrome - Currently unsupported, but NPAPI will be used

   === Hosted GWT module space ===
   The infrastructure in place in the current version of hosted mode has  
remained largely intact. At a very high level, this new model for hosted  
mode replaces the implementation of the !JavaScriptHost interface (which  
provides an interface directly to the corresponding !JavaScript  
environment) with the !BrowserChannel construct that is described above. We  
are intentionally avoiding a massive restructuring of the hosted space  
infrastructure at this point.
@@ -169,8 +171,12 @@

   The biggest threat vector comes from the fact that the hosted mode  
functionality is a general purpose plugin that is instantiable in the  
browser you use daily by any site. A couple of other issues that come into  
play here are, (1) using the hosted server UI to validate a user's intent  
to debug is problematic since that would require the plugin to open a  
socket to a potentially private address (2) NPAPI and other page based  
plugins do not have a reliable way to interact with the browser chrome to  
present dialogs to the user.

-== Planned Milestones ==
- # Feb. 22^nd^ - Demo of !WebKit plugin working against mock server and  
server working against mock plugin.
- # Mar. 07^th^ - Functioning version of OOPHM on !WebKit using the  
current !GWTShell UI (in SWT).
- # Mar. 21^st^ - Add NPAPI plugin (for Mozilla and potentially Opera) and  
convert the hosted mode server over to the new swing UI.
- # (contingent on scheduling IE integration help) - Add IE6/7 support and  
go feature complete.
\ No newline at end of file
+== Development Plan ==
+OOPHM is planned to go into GWT 2.0, which should be 1H09.  The current  
state (as of October 2008) is the Swing-based UI is fully functional and  
all supported browsers/platforms pass all tests.  There are still a few  
rough edges in the support, but it is perfectly functional.
+
+Areas to improve:
+ * Testing opens a new browser, which can be annoying on Windows/Mac (on  
Linux it is easy enough to run Selenium-RC inside an Xvfb instance).
+ * hosted.html currently generates missing plugin warnings on Firefox
+ * User access controls to address the security issue above
+ * The UI is currently a quick-and-dirty solution with the bare minimum  
functionality.
+ * The plugin code needs to be refactored to extract more common code.
\ No newline at end of file

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to