Firefox 10 DevMode Plugin

Review at http://gwt-code-reviews.appspot.com/1634803

Review by: conroy@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@10871 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/plugins/xpcom/ExternalWrapper.cpp b/plugins/xpcom/ExternalWrapper.cpp
index a2d0f92..62cc1b5 100644
--- a/plugins/xpcom/ExternalWrapper.cpp
+++ b/plugins/xpcom/ExternalWrapper.cpp
@@ -205,8 +205,15 @@
 }
 
 // TODO(jat): remove suppliedWindow and update hosted.html API
+
+#if GECKO_VERSION < 10000
 NS_IMETHODIMP ExternalWrapper::Init(nsIDOMWindow* suppliedWindow,
     PRBool *_retval) {
+#else
+NS_IMETHODIMP ExternalWrapper::Init(nsIDOMWindow* suppliedWindow,
+    bool *_retval) {
+#endif //GECKO_VERSION
+
   Debug::log(Debug::Debugging) << "Plugin initialized from hosted.html"
       << Debug::flush;
   *_retval = false;
@@ -238,25 +245,56 @@
       "developer plugin connection -- do you want to allow it?");
   NS_ConvertASCIItoUTF16 checkMsg("Remember this decision for this server "
       "(change in GWT Developer Plugin preferences)");
+
+#if GECKO_VERSION < 10000
+  // Please see: https://bugzilla.mozilla.org/show_bug.cgi?id=681188
   PRBool remember = false;
   PRBool include = true;
   if (promptService->ConfirmCheck(domWindow.get(), title.get(), text.get(),
       checkMsg.get(), &remember, &include) != NS_OK) {
     return false;
   }
+
   if (remember) {
     std::string host = AllowedConnections::getHostFromUrl(url);
     std::string server = AllowedConnections::getCodeServerFromUrl(url);
     preferences->addNewRule(host + "/" + server, !include);
   }
   return include;
+
+#else
+
+  bool remember = false;
+  bool include = true;
+  if (promptService->ConfirmCheck(domWindow.get(), title.get(), text.get(),
+      checkMsg.get(), &remember, &include) != NS_OK) {
+    return false;
+  }
+
+  if (remember) {
+    std::string host = AllowedConnections::getHostFromUrl(url);
+    std::string server = AllowedConnections::getCodeServerFromUrl(url);
+    preferences->addNewRule(host + "/" + server, !include);
+  }
+
+  return include;
+
+#endif //GECKO_VERSION
 }
 
 // TODO(jat): remove suppliedUrl and update hosted.html API
+#if GECKO_VERSION < 10000
 NS_IMETHODIMP ExternalWrapper::Connect(const nsACString& suppliedUrl,
                 const nsACString& sessionKey, const nsACString& aAddr,
                 const nsACString& aModuleName, const nsACString& hostedHtmlVersion,
                 PRBool *_retval) {
+#else
+NS_IMETHODIMP ExternalWrapper::Connect(const nsACString& suppliedUrl,
+                const nsACString& sessionKey, const nsACString& aAddr,
+                const nsACString& aModuleName, const nsACString& hostedHtmlVersion,
+                bool *_retval) {
+#endif //GECKO_VERSION
+
   Debug::log(Debug::Info) << "Connect(url=" <<  url << ", sessionKey="
       << sessionKey << ", address=" << aAddr << ", module=" << aModuleName
       << ", hostedHtmlVersion=" << hostedHtmlVersion << Debug::flush;
diff --git a/plugins/xpcom/Makefile b/plugins/xpcom/Makefile
index dd4624e..81ca05f 100644
--- a/plugins/xpcom/Makefile
+++ b/plugins/xpcom/Makefile
@@ -49,7 +49,7 @@
 export FLAG32BIT
 
 ifeq ($(BROWSER),)
-$(warning Defaulting to FF3 build [set with BROWSER=ff3, ff3+, ff35, ff36, ff40, ff50, ff60, ff70, ff80])
+$(warning Defaulting to FF3 build [set with BROWSER=ff3, ff3+, ff35, ff36, ff40, ff50, ff60, ff70, ff80, ff90, ff100])
 BROWSER=ff3
 endif
 
@@ -150,6 +150,10 @@
 GECKO_VERSION   = 9.0.0
 CFLAGS += -DGECKO_VERSION=9000
 else
+ifeq ($(BROWSER),ff100)
+GECKO_VERSION   = 10.0.0
+CFLAGS += -DGECKO_VERSION=10000
+else
 $(error Unrecognized BROWSER of $(BROWSER) - options are ff3, ff3+, ff35, ff36, ff40, ff50, ff60, ff70, ff80, ff90)
 endif
 endif
@@ -161,6 +165,7 @@
 endif
 endif
 endif
+endif
 
 CFLAGS += -fshort-wchar
 CXXFLAGS = $(CXXONLYFLAGS) $(CFLAGS)
@@ -243,6 +248,8 @@
 	$(MAKE) lib BROWSER=ff60 ARCH=x86
 	$(MAKE) lib BROWSER=ff70 ARCH=x86
 	$(MAKE) lib BROWSER=ff80 ARCH=x86
+	$(MAKE) lib BROWSER=ff90 ARCH=x86
+	$(MAKE) lib BROWSER=ff100 ARCH=x86
 	$(MAKE) lib BROWSER=ff3 ARCH=x86_64
 	$(MAKE) lib BROWSER=ff3+ ARCH=x86_64
 	$(MAKE) lib BROWSER=ff35 ARCH=x86_64
@@ -252,8 +259,8 @@
 	$(MAKE) lib BROWSER=ff60 ARCH=x86_64
 	$(MAKE) lib BROWSER=ff70 ARCH=x86_64
 	$(MAKE) lib BROWSER=ff80 ARCH=x86_64
-	$(MAKE) lib BROWSER=ff90 ARCH=x86
 	$(MAKE) lib BROWSER=ff90 ARCH=x86_64
+	$(MAKE) lib BROWSER=ff100 ARCH=x86_64
 
 macplatforms:
 	$(MAKE) lib BROWSER=ff3
@@ -265,6 +272,7 @@
 	$(MAKE) lib BROWSER=ff70
 	$(MAKE) lib BROWSER=ff80
 	$(MAKE) lib BROWSER=ff90
+	$(MAKE) lib BROWSER=ff100
 
 SRCS =	\
 		ExternalWrapper.cpp \
diff --git a/plugins/xpcom/SessionData.h b/plugins/xpcom/SessionData.h
index 35c66c1..3f77d42 100755
--- a/plugins/xpcom/SessionData.h
+++ b/plugins/xpcom/SessionData.h
@@ -22,7 +22,7 @@
 
 #include "jsapi.h"
 
-#if GECKO_VERSION >= 2000
+#if GECKO_VERSION >= 2000 && GECKO_VERSION < 10000
 #include "jsobj.h"
 #endif
 
@@ -72,12 +72,21 @@
 
 private:
   static JSObject* getJSGlobalObject(JSContext* ctx) {
+#if GECKO_VERSION < 10000
     JSObject* global = JS_GetGlobalObject(ctx);
-#if GECKO_VERSION >= 2000
+#endif
+
+// See: https://developer.mozilla.org/en/SpiderMonkey/JSAPI_Reference/JS_GetGlobalObject
+#if GECKO_VERSION >= 2000 && GECKO_VERSION < 10000
     // Innerize the global object from the WindowProxy object to its inner
     // Window delegate since the proxy can't be used for evaluating scripts.
     OBJ_TO_INNER_OBJECT(ctx, global);
-#endif //GECKO_VERSION
+#endif
+
+#if GECKO_VERSION >= 10000
+    JSObject* global = JS_GetGlobalForScopeChain(ctx);
+#endif
+
     return global;
   }
 
diff --git a/plugins/xpcom/VisualStudio/ff100-xpcom.vcproj b/plugins/xpcom/VisualStudio/ff100-xpcom.vcproj
new file mode 100755
index 0000000..c8b81e8
--- /dev/null
+++ b/plugins/xpcom/VisualStudio/ff100-xpcom.vcproj
@@ -0,0 +1,845 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="ff100-xpcom"
+	ProjectGUID="{6BF0C2CE-CB0C-421B-A67C-1E448371D24D}"
+	RootNamespace="ff100-xpcom"
+	Keyword="Win32Proj"
+	TargetFrameworkVersion="131072"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory="Debug100"
+			IntermediateDirectory="Debug100"
+			ConfigurationType="2"
+			UseOfMFC="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				AdditionalIncludeDirectories="&quot;$(ProjectDir)\..\..\common&quot;;..\prebuilt\ff100\include;&quot;..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include&quot;;&quot;..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\mozilla&quot;;&quot;..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include&quot;;&quot;..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect&quot;;&quot;..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include&quot;"
+				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;FIREFOXPLUGIN_EXPORTS;GWT_DEBUGLEVEL=Debugging;XPCOM_GLUE;XPCOM_GLUE_USE_NSPR;MOZILLA_STRICT_API;BROWSER_FF8;GECKO_VERSION=10000"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				TreatWChar_tAsBuiltInType="true"
+				UsePrecompiledHeader="0"
+				WarningLevel="3"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				ResourceOutputFileName="$(IntDir)/$(TargetName).res"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib Advapi32.lib xpcomglue_s.lib xpcom.lib nspr4.lib mozalloc.lib xul.lib mozjs.lib"
+				ShowProgress="2"
+				OutputFile="$(ProjectDir)\..\prebuilt\extension\lib\WINNT_x86-msvc\ff100\xpGwtDevPlugin.dll"
+				LinkIncremental="1"
+				AdditionalLibraryDirectories="&quot;..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\lib&quot;"
+				ModuleDefinitionFile="$(ProjectDir)\..\xpGwtDevPlugin.def"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
+				SubSystem="2"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				ImportLibrary="$(IntDir)\$(TargetName).lib"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory="Release100"
+			IntermediateDirectory="Release100"
+			ConfigurationType="2"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="3"
+				EnableIntrinsicFunctions="true"
+				AdditionalIncludeDirectories="&quot;$(ProjectDir)\..\..\common&quot;;..\prebuilt\ff100\include;&quot;..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include&quot;;&quot;..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\mozilla&quot;;&quot;..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include&quot;;&quot;..\..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect&quot;"
+				PreprocessorDefinitions="WIN32;_WINDOWS;_USRDLL;FIREFOXPLUGIN_EXPORTS;GWT_DEBUGLEVEL=Debugging;XPCOM_GLUE;XPCOM_GLUE_USE_NSPR;MOZILLA_STRICT_API;BROWSER_FF8;GECKO_VERSION=10000;$(NOINHERIT)"
+				ExceptionHandling="1"
+				RuntimeLibrary="0"
+				TreatWChar_tAsBuiltInType="true"
+				UsePrecompiledHeader="0"
+				WarningLevel="3"
+				Detect64BitPortabilityProblems="false"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				ResourceOutputFileName="$(IntDir)/$(TargetName).res"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="ws2_32.lib Advapi32.lib xpcomglue_s.lib xpcom.lib nspr4.lib mozalloc.lib xul.lib mozjs.lib"
+				ShowProgress="2"
+				OutputFile="$(ProjectDir)\..\prebuilt\extension\lib\WINNT_x86-msvc\ff100\xpGwtDevPlugin.dll"
+				LinkIncremental="0"
+				AdditionalLibraryDirectories="&quot;..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\lib&quot;"
+				ModuleDefinitionFile="$(ProjectDir)\..\xpGwtDevPlugin.def"
+				GenerateDebugInformation="true"
+				ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
+				SubSystem="2"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				ImportLibrary="$(IntDir)\$(TargetName).lib"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl;inc;xsd"
+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+			>
+			<File
+				RelativePath="..\ExternalWrapper.h"
+				>
+			</File>
+			<File
+				RelativePath="..\FFSessionHandler.h"
+				>
+			</File>
+			<File
+				RelativePath="..\prebuilt\ff100\include\IOOPHM.h"
+				>
+			</File>
+			<File
+				RelativePath="..\JavaObject.h"
+				>
+			</File>
+			<File
+				RelativePath="..\JSRunner.h"
+				>
+			</File>
+			<File
+				RelativePath="..\mozincludes.h"
+				>
+			</File>
+			<File
+				RelativePath="..\Preferences.h"
+				>
+			</File>
+			<File
+				RelativePath="..\RootedObject.h"
+				>
+			</File>
+			<File
+				RelativePath="..\SessionData.h"
+				>
+			</File>
+			<File
+				RelativePath="..\XpcomDebug.h"
+				>
+			</File>
+			<Filter
+				Name="common"
+				>
+				<File
+					RelativePath="..\..\common\AllowedConnections.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\BrowserChannel.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ByteOrder.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\CheckVersionsMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ChooseTransportMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Debug.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\DebugLevel.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\FatalErrorMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\FreeValueMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\HashMap.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\HostChannel.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\InvokeMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\InvokeSpecialMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\LoadJsniMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\LoadModuleMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Message.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Platform.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ProtocolVersionMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\QuitMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ReturnMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\scoped_ptr\scoped_ptr.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ServerMethods.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\SessionHandler.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Socket.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\SwitchTransportMessage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Value.h"
+					>
+				</File>
+			</Filter>
+			<Filter
+				Name="gecko"
+				>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include\js-config.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsapi.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsautocfg.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jscompat.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsconfig.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include\jscpucfg.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\jscpucfg.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\jsinttypes.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jslong.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\jsosdep.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsotypes.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsproto.tbl"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jspubtd.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jstypes.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsutil.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsutil.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsutil.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\js\jsutil.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include\mozilla-config.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\nsAXPCNativeCallContext.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsCOMPtr.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nscore.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nscore.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsCycleCollector.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsDebug.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsError.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\widget\nsEvent.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsICategoryManager.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIClassInfo.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIClassInfoImpl.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIComponentManager.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsID.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIEnumerator.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIException.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIExceptionService.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIFactory.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIGenericFactory.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\necko\nsIHttpProtocolHandler.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIInterfaceInfo.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIInterfaceInfoManager.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\nsIJSContextStack.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIMemory.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIModule.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\caps\nsIPrincipal.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIProgrammingLanguage.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\necko\nsIProtocolHandler.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\necko\nsIProxiedProtocolHandler.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\nsIScriptableInterfaces.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\dom\nsIScriptGlobalObject.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\dom\nsIScriptObjectPrincipal.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\caps\nsISecurityCheckedComponent.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsISerializable.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIServiceManager.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsISimpleEnumerator.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsISimpleEnumerator.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsISupports.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsISupports.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsISupportsBase.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsISupportsBase.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsISupportsImpl.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsISupportsUtils.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsISupportsUtils.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsIURI.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsIVariant.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\nsIXPConnect.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsMemory.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\necko\nsNetCID.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsrootidl.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\nsrootidl.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsServiceManagerUtils.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsStringAPI.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsTraceRefcnt.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsXPCOM.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsXPCOMCID.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\nsXPCOMStrings.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\pratom.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prcpucfg.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prinrval.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prlock.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prlog.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prlong.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\obsolete\protypes.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prthread.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prtime.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\prtypes.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\xpccomponents.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\xpcexception.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpconnect\xpcjsid.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\WINNT_x86-msvc\include\xpcom-config.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\xpt_arena.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\xpt_struct.h"
+					>
+				</File>
+				<File
+					RelativePath="..\..\..\..\plugin-sdks\gecko-sdks\gecko-10.0.0\include\xpcom\xptinfo.h"
+					>
+				</File>
+			</Filter>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+			>
+			<File
+				RelativePath="..\xpGwtDevPlugin.rc"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+			>
+			<File
+				RelativePath="..\ExternalWrapper.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\FFSessionHandler.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\JavaObject.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\JSRunner.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\ModuleOOPHM.cpp"
+				>
+				<FileConfiguration
+					Name="Debug|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						GeneratePreprocessedFile="0"
+					/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\Preferences.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\XpcomDebug.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\xpGwtDevPlugin.def"
+				>
+			</File>
+			<Filter
+				Name="common"
+				>
+				<File
+					RelativePath="..\..\common\AllowedConnections.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\CheckVersionsMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ChooseTransportMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Debug.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\FatalErrorMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\FreeValueMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\HostChannel.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\InvokeMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\InvokeSpecialMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\LoadJsniMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\LoadModuleMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ProtocolVersionMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ReturnMessage.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\ServerMethods.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\Socket.cpp"
+					>
+				</File>
+				<File
+					RelativePath="..\..\common\SwitchTransportMessage.cpp"
+					>
+				</File>
+			</Filter>
+		</Filter>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>
diff --git a/plugins/xpcom/install-template.rdf b/plugins/xpcom/install-template.rdf
index 163ed5a..c8c0af8 100644
--- a/plugins/xpcom/install-template.rdf
+++ b/plugins/xpcom/install-template.rdf
@@ -12,8 +12,9 @@
       <Description>
         <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
         <em:minVersion>3.0</em:minVersion>
-        <em:maxVersion>9.0.*</em:maxVersion>
+        <em:maxVersion>10.0.*</em:maxVersion>
       </Description>
+    <em:strictCompatibility>true</em:strictCompatibility>
     </em:targetApplication>
 
     <!-- Front End MetaData -->
diff --git a/plugins/xpcom/prebuilt/extension/chrome.manifest b/plugins/xpcom/prebuilt/extension/chrome.manifest
index fd48201..a6dcca1 100644
--- a/plugins/xpcom/prebuilt/extension/chrome.manifest
+++ b/plugins/xpcom/prebuilt/extension/chrome.manifest
@@ -45,5 +45,12 @@
 binary-component lib/Darwin-gcc3/ff90/libgwt_dev_ff90.dylib ABI=Darwin_x86-gcc3 appversion<=9.0.*
 binary-component lib/WINNT_x86-msvc/ff90/xpGwtDevPlugin.dll ABI=WINNT_x86-msvc appversion<=9.0.*
 
+# Firefox 10
+binary-component lib/Linux_x86_64-gcc3/ff100/libgwt_dev_ff100.so ABI=Linux_x86_64-gcc3 appversion<=10.0.*
+binary-component lib/Linux_x86-gcc3/ff100/libgwt_dev_ff100.so ABI=Linux_x86-gcc3 appversion<=10.0.*
+binary-component lib/Darwin-gcc3/ff100/libgwt_dev_ff100.dylib ABI=Darwin_x86_64-gcc3 appversion<=10.0.*
+binary-component lib/Darwin-gcc3/ff100/libgwt_dev_ff100.dylib ABI=Darwin_x86-gcc3 appversion<=10.0.*
+binary-component lib/WINNT_x86-msvc/ff100/xpGwtDevPlugin.dll ABI=WINNT_x86-msvc appversion<=10.0.*
+
 interfaces components/IOOPHM.xpt
 contract @gwt.google.com/ExternalWrapper;1 {028DD88B-6D65-401D-AAFD-17E497D15D09}
diff --git a/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff100/libgwt_dev_ff100.dylib b/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff100/libgwt_dev_ff100.dylib
new file mode 100755
index 0000000..5d29200
--- /dev/null
+++ b/plugins/xpcom/prebuilt/extension/lib/Darwin-gcc3/ff100/libgwt_dev_ff100.dylib
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff100/libgwt_dev_ff100.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff100/libgwt_dev_ff100.so
new file mode 100755
index 0000000..4d7a9eb
--- /dev/null
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff100/libgwt_dev_ff100.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3+/libgwt_dev_ff3+.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3+/libgwt_dev_ff3+.so
index 5bd1445..9ca8e80 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3+/libgwt_dev_ff3+.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3+/libgwt_dev_ff3+.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3/libgwt_dev_ff3.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3/libgwt_dev_ff3.so
index 6f16d23..2b0549a 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3/libgwt_dev_ff3.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff3/libgwt_dev_ff3.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff35/libgwt_dev_ff35.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff35/libgwt_dev_ff35.so
index 6be2bfa..9240dff 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff35/libgwt_dev_ff35.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff35/libgwt_dev_ff35.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff36/libgwt_dev_ff36.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff36/libgwt_dev_ff36.so
index 8bfca75..8f0e23d 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff36/libgwt_dev_ff36.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff36/libgwt_dev_ff36.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff40/libgwt_dev_ff40.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff40/libgwt_dev_ff40.so
index 3b7fd5c..1d19567 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff40/libgwt_dev_ff40.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff40/libgwt_dev_ff40.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff50/libgwt_dev_ff50.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff50/libgwt_dev_ff50.so
index f14318d..3e3d053 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff50/libgwt_dev_ff50.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff50/libgwt_dev_ff50.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff60/libgwt_dev_ff60.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff60/libgwt_dev_ff60.so
index 4eeeb88..9fcc8db 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff60/libgwt_dev_ff60.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff60/libgwt_dev_ff60.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff70/libgwt_dev_ff70.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff70/libgwt_dev_ff70.so
index 9e72523..327349f 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff70/libgwt_dev_ff70.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff70/libgwt_dev_ff70.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff80/libgwt_dev_ff80.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff80/libgwt_dev_ff80.so
index 8c0d4f4..91eb4d3 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff80/libgwt_dev_ff80.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff80/libgwt_dev_ff80.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff90/libgwt_dev_ff90.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff90/libgwt_dev_ff90.so
index 7a2bfff..45d9f3c 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff90/libgwt_dev_ff90.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86-gcc3/ff90/libgwt_dev_ff90.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff100/libgwt_dev_ff100.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff100/libgwt_dev_ff100.so
new file mode 100755
index 0000000..a669a5c
--- /dev/null
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff100/libgwt_dev_ff100.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3+/libgwt_dev_ff3+.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3+/libgwt_dev_ff3+.so
index 78e1d94..e0ea8b9 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3+/libgwt_dev_ff3+.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3+/libgwt_dev_ff3+.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3/libgwt_dev_ff3.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3/libgwt_dev_ff3.so
index 70db0c6..98b6d25 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3/libgwt_dev_ff3.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff3/libgwt_dev_ff3.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff35/libgwt_dev_ff35.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff35/libgwt_dev_ff35.so
index 0d44a8d..6d47d54 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff35/libgwt_dev_ff35.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff35/libgwt_dev_ff35.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff36/libgwt_dev_ff36.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff36/libgwt_dev_ff36.so
index fbbb3c5..ab2bf0e 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff36/libgwt_dev_ff36.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff36/libgwt_dev_ff36.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff40/libgwt_dev_ff40.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff40/libgwt_dev_ff40.so
index 2e7566e..c41227d 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff40/libgwt_dev_ff40.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff40/libgwt_dev_ff40.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff50/libgwt_dev_ff50.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff50/libgwt_dev_ff50.so
index a528ffc..3b76a03 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff50/libgwt_dev_ff50.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff50/libgwt_dev_ff50.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff60/libgwt_dev_ff60.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff60/libgwt_dev_ff60.so
index eeae984..46dc531 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff60/libgwt_dev_ff60.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff60/libgwt_dev_ff60.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff70/libgwt_dev_ff70.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff70/libgwt_dev_ff70.so
index 724bb52..013fbce 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff70/libgwt_dev_ff70.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff70/libgwt_dev_ff70.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff80/libgwt_dev_ff80.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff80/libgwt_dev_ff80.so
index 4fe7633..e1b027b 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff80/libgwt_dev_ff80.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff80/libgwt_dev_ff80.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff90/libgwt_dev_ff90.so b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff90/libgwt_dev_ff90.so
index 065c062..3214ba8 100755
--- a/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff90/libgwt_dev_ff90.so
+++ b/plugins/xpcom/prebuilt/extension/lib/Linux_x86_64-gcc3/ff90/libgwt_dev_ff90.so
Binary files differ
diff --git a/plugins/xpcom/prebuilt/extension/lib/WINNT_x86-msvc/ff100/xpGwtDevPlugin.dll b/plugins/xpcom/prebuilt/extension/lib/WINNT_x86-msvc/ff100/xpGwtDevPlugin.dll
new file mode 100755
index 0000000..c174d65
--- /dev/null
+++ b/plugins/xpcom/prebuilt/extension/lib/WINNT_x86-msvc/ff100/xpGwtDevPlugin.dll
Binary files differ
diff --git a/plugins/xpcom/prebuilt/ff100/include/IOOPHM.h b/plugins/xpcom/prebuilt/ff100/include/IOOPHM.h
new file mode 100644
index 0000000..e37792d
--- /dev/null
+++ b/plugins/xpcom/prebuilt/ff100/include/IOOPHM.h
@@ -0,0 +1,105 @@
+/*
+ * DO NOT EDIT.  THIS FILE IS GENERATED FROM IOOPHM.idl
+ */
+
+#ifndef __gen_IOOPHM_h__
+#define __gen_IOOPHM_h__
+
+
+#ifndef __gen_nsISupports_h__
+#include "nsISupports.h"
+#endif
+
+/* For IDL files that don't want to include root IDL files. */
+#ifndef NS_NO_VTABLE
+#define NS_NO_VTABLE
+#endif
+class nsIDOMWindow; /* forward declaration */
+
+
+/* starting interface:    IOOPHM */
+#define IOOPHM_IID_STR "90cef17b-c3fe-4251-af68-4381b3d938a0"
+
+#define IOOPHM_IID \
+  {0x90cef17b, 0xc3fe, 0x4251, \
+    { 0xaf, 0x68, 0x43, 0x81, 0xb3, 0xd9, 0x38, 0xa0 }}
+
+class NS_NO_VTABLE NS_SCRIPTABLE IOOPHM : public nsISupports {
+ public: 
+
+  NS_DECLARE_STATIC_IID_ACCESSOR(IOOPHM_IID)
+
+  /* boolean init (in nsIDOMWindow window); */
+  NS_SCRIPTABLE NS_IMETHOD Init(nsIDOMWindow *window, bool *_retval NS_OUTPARAM) = 0;
+
+  /* boolean connect (in ACString url, in ACString sessionKey, in ACString addr, in ACString moduleName, in ACString hostedHtmlVersion); */
+  NS_SCRIPTABLE NS_IMETHOD Connect(const nsACString & url, const nsACString & sessionKey, const nsACString & addr, const nsACString & moduleName, const nsACString & hostedHtmlVersion, bool *_retval NS_OUTPARAM) = 0;
+
+};
+
+  NS_DEFINE_STATIC_IID_ACCESSOR(IOOPHM, IOOPHM_IID)
+
+/* Use this macro when declaring classes that implement this interface. */
+#define NS_DECL_IOOPHM \
+  NS_SCRIPTABLE NS_IMETHOD Init(nsIDOMWindow *window, bool *_retval NS_OUTPARAM); \
+  NS_SCRIPTABLE NS_IMETHOD Connect(const nsACString & url, const nsACString & sessionKey, const nsACString & addr, const nsACString & moduleName, const nsACString & hostedHtmlVersion, bool *_retval NS_OUTPARAM); 
+
+/* Use this macro to declare functions that forward the behavior of this interface to another object. */
+#define NS_FORWARD_IOOPHM(_to) \
+  NS_SCRIPTABLE NS_IMETHOD Init(nsIDOMWindow *window, bool *_retval NS_OUTPARAM) { return _to Init(window, _retval); } \
+  NS_SCRIPTABLE NS_IMETHOD Connect(const nsACString & url, const nsACString & sessionKey, const nsACString & addr, const nsACString & moduleName, const nsACString & hostedHtmlVersion, bool *_retval NS_OUTPARAM) { return _to Connect(url, sessionKey, addr, moduleName, hostedHtmlVersion, _retval); } 
+
+/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
+#define NS_FORWARD_SAFE_IOOPHM(_to) \
+  NS_SCRIPTABLE NS_IMETHOD Init(nsIDOMWindow *window, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(window, _retval); } \
+  NS_SCRIPTABLE NS_IMETHOD Connect(const nsACString & url, const nsACString & sessionKey, const nsACString & addr, const nsACString & moduleName, const nsACString & hostedHtmlVersion, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Connect(url, sessionKey, addr, moduleName, hostedHtmlVersion, _retval); } 
+
+#if 0
+/* Use the code below as a template for the implementation class for this interface. */
+
+/* Header file */
+class _MYCLASS_ : public IOOPHM
+{
+public:
+  NS_DECL_ISUPPORTS
+  NS_DECL_IOOPHM
+
+  _MYCLASS_();
+
+private:
+  ~_MYCLASS_();
+
+protected:
+  /* additional members */
+};
+
+/* Implementation file */
+NS_IMPL_ISUPPORTS1(_MYCLASS_, IOOPHM)
+
+_MYCLASS_::_MYCLASS_()
+{
+  /* member initializers and constructor code */
+}
+
+_MYCLASS_::~_MYCLASS_()
+{
+  /* destructor code */
+}
+
+/* boolean init (in nsIDOMWindow window); */
+NS_IMETHODIMP _MYCLASS_::Init(nsIDOMWindow *window, bool *_retval NS_OUTPARAM)
+{
+    return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* boolean connect (in ACString url, in ACString sessionKey, in ACString addr, in ACString moduleName, in ACString hostedHtmlVersion); */
+NS_IMETHODIMP _MYCLASS_::Connect(const nsACString & url, const nsACString & sessionKey, const nsACString & addr, const nsACString & moduleName, const nsACString & hostedHtmlVersion, bool *_retval NS_OUTPARAM)
+{
+    return NS_ERROR_NOT_IMPLEMENTED;
+}
+
+/* End of implementation class template. */
+#endif
+
+
+#endif /* __gen_IOOPHM_h__ */
diff --git a/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi b/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi
index d52faa5..85703e3 100644
--- a/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi
+++ b/plugins/xpcom/prebuilt/gwt-dev-plugin.xpi
Binary files differ
diff --git a/plugins/xpcom/prebuilt/update.rdf b/plugins/xpcom/prebuilt/update.rdf
index 7581898..894f225 100644
--- a/plugins/xpcom/prebuilt/update.rdf
+++ b/plugins/xpcom/prebuilt/update.rdf
@@ -14,7 +14,7 @@
               <Description>
                 <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
                 <em:minVersion>3.0</em:minVersion>
-                <em:maxVersion>9.0.*</em:maxVersion>
+                <em:maxVersion>10.0.*</em:maxVersion>
                 <em:updateLink>https://dl-ssl.google.com/gwt/plugins/firefox/gwt-dev-plugin.xpi</em:updateLink>
                 <em:updateInfoURL>https://dl-ssl.google.com/gwt/plugins/firefox/gwt-dev-plugin-info.xhtml?locale=%APP_LOCALE%</em:updateInfoURL>