Skip to content

Commit

Permalink
EranMes: Adding native events support for Firefox 7 on Windows.
Browse files Browse the repository at this point in the history
r14017
  • Loading branch information
eranmes committed Oct 4, 2011
1 parent 02cad79 commit e31b5d6
Show file tree
Hide file tree
Showing 7 changed files with 230 additions and 1 deletion.
5 changes: 5 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -307,6 +307,11 @@ GeckoSDKs.new do |sdks|
sdks.add 'third_party/gecko-7/linux64',
'http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/7.0.1/sdk/xulrunner-7.0.1.en-US.linux-x86_64.sdk.tar.bz2',
'6c4f4283650fe5d998f6450a5bd1817b'

sdks.add 'third_party/gecko-7/win32',
'http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/7.0/sdk/xulrunner-7.0.en-US.win32.sdk.zip',
'd9c366d3dd54e020e372841053806f5d'

end

task :'selenium-server_zip' do
Expand Down
18 changes: 18 additions & 0 deletions WebDriver.sln
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "webdriver-server", "cpp\web
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "webdriver-firefox-6", "cpp\webdriver-firefox\webdriver-firefox-6.vcxproj", "{705CA982-A18B-4BCA-80B7-1F6DE6883BE8}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "webdriver-firefox-7", "cpp\webdriver-firefox\webdriver-firefox-7.vcxproj", "{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|.NET = Debug|.NET
Expand Down Expand Up @@ -408,6 +410,22 @@ Global
{705CA982-A18B-4BCA-80B7-1F6DE6883BE8}.Release|Win32.Build.0 = Release|Win32
{705CA982-A18B-4BCA-80B7-1F6DE6883BE8}.Release|x64.ActiveCfg = Release|x64
{705CA982-A18B-4BCA-80B7-1F6DE6883BE8}.Release|x64.Build.0 = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|.NET.ActiveCfg = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|Any CPU.ActiveCfg = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|Mixed Platforms.Build.0 = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|Win32.ActiveCfg = Debug|Win32
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|Win32.Build.0 = Debug|Win32
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|x64.ActiveCfg = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Debug|x64.Build.0 = Debug|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|.NET.ActiveCfg = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|Any CPU.ActiveCfg = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|Mixed Platforms.ActiveCfg = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|Mixed Platforms.Build.0 = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|Win32.ActiveCfg = Release|Win32
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|Win32.Build.0 = Release|Win32
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|x64.ActiveCfg = Release|x64
{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
8 changes: 8 additions & 0 deletions cpp/build.desc
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,14 @@ visualc_library(name = "firefox6_dll",
out = "Win32/Release/webdriver-firefox-6.dll"
)

visualc_library(name = "firefox7_dll",
platform = "Win32",
project = "webdriver-firefox/webdriver-firefox-7.vcxproj",
file_deps = "third_party/gecko-7/win32",
out = "Win32/Release/webdriver-firefox-7.dll"
)


mozilla_xpt(name = "native_events_xpt",
srcs = [ "webdriver-firefox/nsINativeEvents.idl" ])

Expand Down
Binary file not shown.
196 changes: 196 additions & 0 deletions cpp/webdriver-firefox/webdriver-firefox-7.vcxproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{49D8D0ED-7FD9-4421-A6D1-B411152ECB5E}</ProjectGuid>
<RootNamespace>webdriverfirefox</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>Static</UseOfAtl>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>Static</UseOfAtl>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>Static</UseOfAtl>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>Static</UseOfAtl>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)..\..\build\cpp\$(Platform)\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)..\..\build\cpp\intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)..\..\build\cpp\$(Platform)\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)..\..\build\cpp\intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)..\..\build\cpp\$(Platform)\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)..\..\build\cpp\intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)..\..\build\cpp\$(Platform)\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)..\..\build\cpp\intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\include;$(ProjectDir)..\webdriver-interactions;$(ProjectDir)..\imehandler\common</AdditionalIncludeDirectories>
<PreprocessorDefinitions>XP_WIN;XP_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>nspr4.lib;xpcom.lib;xpcomglue_s_nomozalloc.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\lib;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\include;$(ProjectDir)..\webdriver-interactions;$(ProjectDir)..\imehandler\common</AdditionalIncludeDirectories>
<PreprocessorDefinitions>XP_WIN;XP_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>nspr4.lib;xpcom.lib;xpcomglue_s_nomozalloc.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\lib;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\include;$(ProjectDir)..\webdriver-interactions;$(ProjectDir)..\imehandler\common</AdditionalIncludeDirectories>
<PreprocessorDefinitions>XP_WIN;XP_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>
</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>nspr4.lib;xpcom.lib;xpcomglue_s_nomozalloc.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\lib;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\include;$(ProjectDir)..\webdriver-interactions;$(ProjectDir)..\imehandler\common</AdditionalIncludeDirectories>
<PreprocessorDefinitions>XP_WIN;XP_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>nspr4.lib;xpcom.lib;xpcomglue_s_nomozalloc.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\third_party\gecko-7\win32\lib;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="..\webdriver-interactions\webdriver-interactions.vcxproj">
<Project>{87fa39a1-958e-478a-8ab9-6d5e5aaa3886}</Project>
<CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies>
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<ClCompile Include="library_loading.cpp" />
<ClCompile Include="native_events.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="native_events.h" />
<ClInclude Include="gecko18\nsIAccessibleDocument.h" />
<ClInclude Include="gecko19\nsIAccessibleDocument.h" />
<ClInclude Include="nsIAccessibleDocumentWrapper.h" />
<ClInclude Include="nsIBaseWindow.h" />
<ClInclude Include="nsINativeEvents.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
1 change: 1 addition & 0 deletions javascript/firefox-driver/build.desc
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ mozilla_extension(name = "webdriver",
{ "//cpp:firefox_dll" : "platform/WINNT_x86-msvc/components/webdriver-firefox.dll" },
{ "//cpp:firefox5_dll" : "platform/WINNT_x86-msvc/components/webdriver-firefox-5.dll" },
{ "//cpp:firefox6_dll" : "platform/WINNT_x86-msvc/components/webdriver-firefox-6.dll" },
{ "//cpp:firefox7_dll" : "platform/WINNT_x86-msvc/components/webdriver-firefox-7.dll" },
{ "//cpp:imehandler_dll" : "platform/WINNT_x86-msvc/components/imehandler.dll" },
{ "//cpp:webdriver_firefox_ff3" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-ff3.so" },
{ "//cpp:webdriver_firefox_ff4" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-ff4.so" },
Expand Down
3 changes: 2 additions & 1 deletion javascript/firefox-driver/extension/chrome.manifest
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ contract @googlecode.com/webdriver/syntheticmouse;1 {E8F9FEFE-C513-4097-98BE-BE0

binary-component platform/WINNT_x86-msvc/components/webdriver-firefox.dll ABI=WINNT_x86-msvc appversion<5
binary-component platform/WINNT_x86-msvc/components/webdriver-firefox-5.dll ABI=WINNT_x86-msvc appversion=5.0.1 appversion=5.0
binary-component platform/WINNT_x86-msvc/components/webdriver-firefox-6.dll ABI=WINNT_x86-msvc appversion>=6
binary-component platform/WINNT_x86-msvc/components/webdriver-firefox-6.dll ABI=WINNT_x86-msvc appversion=6.0 appversion=6.0.1 appversion=6.0.2
binary-component platform/WINNT_x86-msvc/components/webdriver-firefox-7.dll ABI=WINNT_x86-msvc appversion>=7
binary-component platform/WINNT_x86-msvc/components/imehandler.dll ABI=WINNT_x86-msvc
binary-component platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-ff4.so ABI=Linux_x86_64-gcc3 appversion<5
binary-component platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-ff5.so ABI=Linux_x86_64-gcc3 appversion=5.0.1 appversion=5.0
Expand Down

0 comments on commit e31b5d6

Please sign in to comment.