You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by pu...@apache.org on 2012/11/01 23:09:18 UTC

[2/58] [abbrv] git commit: Merge remote-tracking branch 'jesse/master' into master-sg

Merge remote-tracking branch 'jesse/master' into master-sg

Conflicts:
	example/www/cordova-2.2.0.js
	templates/full/www/cordova-2.2.0.js
	templates/standalone/CordovaSourceDictionary.xml
	templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs
	templates/standalone/www/cordova-2.2.0.js


Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/commit/54f19e85
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/tree/54f19e85
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/diff/54f19e85

Branch: refs/heads/master
Commit: 54f19e85ec323792730ae06a660a7201bb7536d7
Parents: 55b8081 502480b
Author: Ruslan Kokorev <ru...@bsquare.com>
Authored: Thu Nov 1 16:34:23 2012 +0400
Committer: Ruslan Kokorev <ru...@bsquare.com>
Committed: Thu Nov 1 16:34:23 2012 +0400

----------------------------------------------------------------------
 VERSION                                            |    2 +-
 framework/WPCordovaClassLib.csproj                 |    3 +
 templates/description.txt                          |    2 +-
 templates/full/VERSION                             |    2 +-
 templates/standalone/CordovaAppProj.csproj         |    1 +
 templates/standalone/CordovaSourceDictionary.xml   |    4 +-
 templates/standalone/VERSION                       |    2 +-
 .../cordovalib/Commands/AudioFormatsHelper.cs      |   89 ++++++++++++++
 .../standalone/cordovalib/Commands/AudioPlayer.cs  |   87 +-------------
 .../cordovalib/Commands/ImageExifHelper.cs         |   17 +---
 .../standalone/cordovalib/Commands/Notification.cs |    8 +-
 .../standalone/cordovalib/UI/AudioRecorder.xaml.cs |   94 +-------------
 tests/MobileSpecUnitTests/MobileSpecUnitTests.sln  |   18 ++--
 13 files changed, 121 insertions(+), 208 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/framework/WPCordovaClassLib.csproj
----------------------------------------------------------------------
diff --cc framework/WPCordovaClassLib.csproj
index 9fc3ed8,0000000..75f0be3
mode 100644,000000..100644
--- a/framework/WPCordovaClassLib.csproj
+++ b/framework/WPCordovaClassLib.csproj
@@@ -1,320 -1,0 +1,323 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 + Licensed to the Apache Software Foundation (ASF) under one
 + or more contributor license agreements.  See the NOTICE file
 + distributed with this work for additional information
 + regarding copyright ownership.  The ASF licenses this file
 + to you under the Apache License, Version 2.0 (the
 + "License"); you may not use this file except in compliance
 + with the License.  You may obtain a copy of the License at
 +
 +   http://www.apache.org/licenses/LICENSE-2.0
 +
 + Unless required by applicable law or agreed to in writing,
 + software distributed under the License is distributed on an
 + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + KIND, either express or implied.  See the License for the
 + specific language governing permissions and limitations
 + under the License. 
 +-->
 +<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 +  <PropertyGroup>
 +    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 +    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 +    <ProductVersion>10.0.20506</ProductVersion>
 +    <SchemaVersion>2.0</SchemaVersion>
 +    <ProjectGuid>{FC6A1A70-892D-46AD-9E4A-9793F72AF780}</ProjectGuid>
 +    <ProjectTypeGuids>{C089C8C0-30E0-4E22-80C0-CE093F111A43};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
 +    <OutputType>Library</OutputType>
 +    <AppDesignerFolder>Properties</AppDesignerFolder>
 +    <RootNamespace>WPCordovaClassLib</RootNamespace>
 +    <AssemblyName>WPCordovaClassLib</AssemblyName>
 +    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
 +    <SilverlightVersion>
 +    </SilverlightVersion>
 +    <TargetFrameworkProfile>
 +    </TargetFrameworkProfile>
 +    <TargetFrameworkIdentifier>WindowsPhone</TargetFrameworkIdentifier>
 +    <SilverlightApplication>false</SilverlightApplication>
 +    <ValidateXaml>true</ValidateXaml>
 +    <ThrowErrorsInValidation>true</ThrowErrorsInValidation>
 +    <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>
 +  </PropertyGroup>
 +  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 +    <DebugSymbols>true</DebugSymbols>
 +    <DebugType>full</DebugType>
 +    <Optimize>false</Optimize>
 +    <OutputPath>Bin\Debug</OutputPath>
 +    <DefineConstants>TRACE;DEBUG;SILVERLIGHT;WINDOWS_PHONE;CORDOVA_CLASSLIB</DefineConstants>
 +    <NoStdLib>true</NoStdLib>
 +    <NoConfig>true</NoConfig>
 +    <ErrorReport>prompt</ErrorReport>
 +    <WarningLevel>4</WarningLevel>
 +    <Prefer32Bit>false</Prefer32Bit>
 +  </PropertyGroup>
 +  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 +    <DebugType>pdbonly</DebugType>
 +    <Optimize>true</Optimize>
 +    <OutputPath>Bin\Release</OutputPath>
 +    <DefineConstants>TRACE;DEBUG;SILVERLIGHT;WINDOWS_PHONE;CORDOVA_CLASSLIB</DefineConstants>
 +    <NoStdLib>true</NoStdLib>
 +    <NoConfig>true</NoConfig>
 +    <ErrorReport>prompt</ErrorReport>
 +    <WarningLevel>4</WarningLevel>
 +    <DocumentationFile>
 +    </DocumentationFile>
 +    <Prefer32Bit>false</Prefer32Bit>
 +  </PropertyGroup>
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
 +    <DebugSymbols>true</DebugSymbols>
 +    <OutputPath>Bin\x86\Debug</OutputPath>
 +    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>
 +    <NoStdLib>true</NoStdLib>
 +    <DebugType>full</DebugType>
 +    <PlatformTarget>
 +    </PlatformTarget>
 +    <ErrorReport>prompt</ErrorReport>
 +    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
 +    <Prefer32Bit>false</Prefer32Bit>
 +    <Optimize>false</Optimize>
 +  </PropertyGroup>
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
 +    <OutputPath>Bin\x86\Release</OutputPath>
 +    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>
 +    <Optimize>true</Optimize>
 +    <NoStdLib>true</NoStdLib>
 +    <DebugType>pdbonly</DebugType>
 +    <PlatformTarget>
 +    </PlatformTarget>
 +    <ErrorReport>prompt</ErrorReport>
 +    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
 +    <Prefer32Bit>false</Prefer32Bit>
 +  </PropertyGroup>
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|ARM'">
 +    <DebugSymbols>true</DebugSymbols>
 +    <OutputPath>Bin\ARM\Debug</OutputPath>
 +    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>
 +    <NoStdLib>true</NoStdLib>
 +    <DebugType>full</DebugType>
 +    <PlatformTarget>
 +    </PlatformTarget>
 +    <ErrorReport>prompt</ErrorReport>
 +    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
 +    <Prefer32Bit>false</Prefer32Bit>
 +    <Optimize>false</Optimize>
 +  </PropertyGroup>
 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|ARM'">
 +    <OutputPath>Bin\ARM\Release</OutputPath>
 +    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>
 +    <Optimize>true</Optimize>
 +    <NoStdLib>true</NoStdLib>
 +    <DebugType>pdbonly</DebugType>
 +    <PlatformTarget>
 +    </PlatformTarget>
 +    <ErrorReport>prompt</ErrorReport>
 +    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
 +    <Prefer32Bit>false</Prefer32Bit>
 +  </PropertyGroup>
 +  <ItemGroup>
 +    <Compile Include="..\templates\standalone\cordovalib\BrowserMouseHelper.cs">
 +      <Link>CordovaLib\BrowserMouseHelper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\CommandFactory.cs">
 +      <Link>CordovaLib\CommandFactory.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Accelerometer.cs">
 +      <Link>CordovaLib\Commands\Accelerometer.cs</Link>
 +    </Compile>
++    <Compile Include="..\templates\standalone\cordovalib\Commands\AudioFormatsHelper.cs">
++      <Link>CordovaLib\Commands\AudioFormatsHelper.cs</Link>
++    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\AudioPlayer.cs">
 +      <Link>CordovaLib\Commands\AudioPlayer.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\BaseCommand.cs">
 +      <Link>CordovaLib\Commands\BaseCommand.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Battery.cs">
 +      <Link>CordovaLib\Commands\Battery.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Camera.cs">
 +      <Link>CordovaLib\Commands\Camera.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Capture.cs">
 +      <Link>CordovaLib\Commands\Capture.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Compass.cs">
 +      <Link>CordovaLib\Commands\Compass.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Contacts.cs">
 +      <Link>CordovaLib\Commands\Contacts.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\DebugConsole.cs">
 +      <Link>CordovaLib\Commands\DebugConsole.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Device.cs">
 +      <Link>CordovaLib\Commands\Device.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\File.cs">
 +      <Link>CordovaLib\Commands\File.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\FileTransfer.cs">
 +      <Link>CordovaLib\Commands\FileTransfer.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\GeoLocation.cs">
 +      <Link>CordovaLib\Commands\GeoLocation.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\ImageExifHelper.cs">
 +      <Link>CordovaLib\Commands\ImageExifHelper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Media.cs">
 +      <Link>CordovaLib\Commands\Media.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\MimeTypeMapper.cs">
 +      <Link>CordovaLib\Commands\MimeTypeMapper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\NetworkStatus.cs">
 +      <Link>CordovaLib\Commands\NetworkStatus.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\Commands\Notification.cs">
 +      <Link>CordovaLib\Commands\Notification.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\CordovaCommandCall.cs">
 +      <Link>CordovaLib\CordovaCommandCall.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\CordovaView.xaml.cs">
 +      <Link>CordovaLib\CordovaView.xaml.cs</Link>
 +      <DependentUpon>CordovaView.xaml</DependentUpon>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\DOMStorageHelper.cs">
 +      <Link>CordovaLib\DOMStorageHelper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\JSON\JsonHelper.cs">
 +      <Link>CordovaLib\JSON\JsonHelper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\NativeExecution.cs">
 +      <Link>CordovaLib\NativeExecution.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\OrientationHelper.cs">
 +      <Link>CordovaLib\OrientationHelper.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\PluginResult.cs">
 +      <Link>CordovaLib\PluginResult.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\ScriptCallback.cs">
 +      <Link>CordovaLib\ScriptCallback.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\AudioCaptureTask.cs">
 +      <Link>CordovaLib\UI\AudioCaptureTask.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\AudioRecorder.xaml.cs">
 +      <Link>CordovaLib\UI\AudioRecorder.xaml.cs</Link>
 +      <DependentUpon>AudioRecorder.xaml</DependentUpon>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\ImageCapture.xaml.cs">
 +      <Link>CordovaLib\UI\ImageCapture.xaml.cs</Link>
 +      <DependentUpon>ImageCapture.xaml</DependentUpon>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\NotificationBox.xaml.cs">
 +      <Link>CordovaLib\UI\NotificationBox.xaml.cs</Link>
 +      <DependentUpon>NotificationBox.xaml</DependentUpon>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\VideoCaptureTask.cs">
 +      <Link>CordovaLib\UI\VideoCaptureTask.cs</Link>
 +    </Compile>
 +    <Compile Include="..\templates\standalone\cordovalib\UI\VideoRecorder.xaml.cs">
 +      <Link>CordovaLib\UI\VideoRecorder.xaml.cs</Link>
 +      <DependentUpon>VideoRecorder.xaml</DependentUpon>
 +    </Compile>
 +    <Compile Include="Properties\AssemblyInfo.cs" />
 +  </ItemGroup>
 +  <ItemGroup>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.back.rest.png">
 +      <Link>CordovaLib\Images\appbar.back.rest.png</Link>
 +    </Resource>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.close.rest.png">
 +      <Link>CordovaLib\Images\appbar.close.rest.png</Link>
 +    </Resource>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.feature.video.rest.png">
 +      <Link>CordovaLib\Images\appbar.feature.video.rest.png</Link>
 +    </Resource>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.next.rest.png">
 +      <Link>CordovaLib\Images\appbar.next.rest.png</Link>
 +    </Resource>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.save.rest.png">
 +      <Link>CordovaLib\Images\appbar.save.rest.png</Link>
 +    </Resource>
 +    <Resource Include="..\templates\standalone\cordovalib\Images\appbar.stop.rest.png">
 +      <Link>CordovaLib\Images\appbar.stop.rest.png</Link>
 +    </Resource>
 +    <Content Include="..\templates\standalone\cordovalib\resources\notification-beep.wav">
 +      <Link>CordovaLib\resources\notification-beep.wav</Link>
 +    </Content>
 +    <Content Include="Images\appbar.back.rest.png">
 +      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 +    </Content>
 +    <Content Include="Images\appbar.close.rest.png">
 +      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 +    </Content>
 +    <Content Include="Images\appbar.feature.video.rest.png">
 +      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
 +    </Content>
 +    <Content Include="Images\appbar.next.rest.png">
 +      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 +    </Content>
 +    <Content Include="Images\appbar.stop.rest.png">
 +      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
 +    </Content>
 +    <Content Include="Images\appbar.save.rest.png">
 +      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
 +    </Content>
 +  </ItemGroup>
 +  <ItemGroup>
 +    <Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
 +  </ItemGroup>
 +  <ItemGroup>
 +    <Resource Include="resources\notification-beep.wav" />
 +  </ItemGroup>
 +  <ItemGroup>
 +    <Page Include="..\templates\standalone\cordovalib\CordovaView.xaml">
 +      <Link>CordovaLib\CordovaView.xaml</Link>
 +      <Generator>MSBuild:Compile</Generator>
 +      <SubType>Designer</SubType>
 +    </Page>
 +    <Page Include="..\templates\standalone\cordovalib\UI\AudioRecorder.xaml">
 +      <Link>CordovaLib\UI\AudioRecorder.xaml</Link>
 +      <Generator>MSBuild:Compile</Generator>
 +      <SubType>Designer</SubType>
 +    </Page>
 +    <Page Include="..\templates\standalone\cordovalib\UI\ImageCapture.xaml">
 +      <Link>CordovaLib\UI\ImageCapture.xaml</Link>
 +      <Generator>MSBuild:Compile</Generator>
 +      <SubType>Designer</SubType>
 +    </Page>
 +    <Page Include="..\templates\standalone\cordovalib\UI\NotificationBox.xaml">
 +      <Link>CordovaLib\UI\NotificationBox.xaml</Link>
 +      <Generator>MSBuild:Compile</Generator>
 +      <SubType>Designer</SubType>
 +    </Page>
 +    <Page Include="..\templates\standalone\cordovalib\UI\VideoRecorder.xaml">
 +      <Link>CordovaLib\UI\VideoRecorder.xaml</Link>
 +      <Generator>MSBuild:Compile</Generator>
 +      <SubType>Designer</SubType>
 +    </Page>
 +  </ItemGroup>
 +  <Import Project="$(MSBuildExtensionsPath)\Microsoft\$(TargetFrameworkIdentifier)\$(TargetFrameworkVersion)\Microsoft.$(TargetFrameworkIdentifier).$(TargetFrameworkVersion).Overrides.targets" />
 +  <Import Project="$(MSBuildExtensionsPath)\Microsoft\$(TargetFrameworkIdentifier)\$(TargetFrameworkVersion)\Microsoft.$(TargetFrameworkIdentifier).CSharp.targets" />
 +  <ProjectExtensions />
 +  <PropertyGroup>
 +    <PreBuildEvent>
 +    </PreBuildEvent>
 +  </PropertyGroup>
 +  <PropertyGroup>
 +    <PostBuildEvent>
 +    </PostBuildEvent>
 +  </PropertyGroup>
 +  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
 +       Other similar extension points exist, see Microsoft.Common.targets.
 +  <Target Name="BeforeBuild">
 +  </Target>
 +  <Target Name="AfterBuild">
 +  </Target>
 +  -->
 +</Project>

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/CordovaAppProj.csproj
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/cordovalib/Commands/AudioFormatsHelper.cs
----------------------------------------------------------------------
diff --cc templates/standalone/cordovalib/Commands/AudioFormatsHelper.cs
index 0000000,f93340f..dca7ee6
mode 000000,100644..100644
--- a/templates/standalone/cordovalib/Commands/AudioFormatsHelper.cs
+++ b/templates/standalone/cordovalib/Commands/AudioFormatsHelper.cs
@@@ -1,0 -1,89 +1,89 @@@
+ /*  
+ 	Licensed under the Apache License, Version 2.0 (the "License");
+ 	you may not use this file except in compliance with the License.
+ 	You may obtain a copy of the License at
+ 	
+ 	http://www.apache.org/licenses/LICENSE-2.0
+ 	
+ 	Unless required by applicable law or agreed to in writing, software
+ 	distributed under the License is distributed on an "AS IS" BASIS,
+ 	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ 	See the License for the specific language governing permissions and
+ 	limitations under the License.
+ 
+  */
+ 
+ using System;
+ using System.IO;
+ 
 -namespace WP7CordovaClassLib.Cordova.Commands
++namespace WPCordovaClassLib.Cordova.Commands
+ {
+     /// <summary>
+     /// Provides extra functionality to support different audio formats.
+     /// </summary>
+     public static class AudioFormatsHelper
+     {
+         #region Wav
+         /// <summary>
+         /// Adds wav file format header to the stream
+         /// https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
+         /// </summary>
+         /// <param name="stream">The stream</param>
+         /// <param name="sampleRate">Sample Rate</param>
+         public static void InitializeWavStream(this Stream stream, int sampleRate)
+         {
+             #region args checking
+ 
+             if (stream == null) 
+             {
+                 throw new ArgumentNullException("stream can't be null or empty");
+             }
+ 
+             #endregion
+ 
+             int numBits = 16;
+             int numBytes = numBits / 8;
+ 
+             stream.Write(System.Text.Encoding.UTF8.GetBytes("RIFF"), 0, 4);
+             stream.Write(BitConverter.GetBytes(0), 0, 4);
+             stream.Write(System.Text.Encoding.UTF8.GetBytes("WAVE"), 0, 4);
+             stream.Write(System.Text.Encoding.UTF8.GetBytes("fmt "), 0, 4);
+             stream.Write(BitConverter.GetBytes(16), 0, 4);
+             stream.Write(BitConverter.GetBytes((short)1), 0, 2);
+             stream.Write(BitConverter.GetBytes((short)1), 0, 2);
+             stream.Write(BitConverter.GetBytes(sampleRate), 0, 4);
+             stream.Write(BitConverter.GetBytes(sampleRate * numBytes), 0, 4);
+             stream.Write(BitConverter.GetBytes((short)(numBytes)), 0, 2);
+             stream.Write(BitConverter.GetBytes((short)(numBits)), 0, 2);
+             stream.Write(System.Text.Encoding.UTF8.GetBytes("data"), 0, 4);
+             stream.Write(BitConverter.GetBytes(0), 0, 4);
+         }
+ 
+         /// <summary>
+         /// Updates wav file format header
+         /// https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
+         /// </summary>
+         /// <param name="stream">Wav stream</param>
+         public static void UpdateWavStream(this Stream stream)
+         {
+             #region args checking
+ 
+             if (stream == null)
+             {
+                 throw new ArgumentNullException("stream can't be null or empty");
+             }
+ 
+             #endregion
+ 
+             var position = stream.Position;
+ 
+             stream.Seek(4, SeekOrigin.Begin);
+             stream.Write(BitConverter.GetBytes((int)stream.Length - 8), 0, 4);
+             stream.Seek(40, SeekOrigin.Begin);
+             stream.Write(BitConverter.GetBytes((int)stream.Length - 44), 0, 4);
+             stream.Seek(position, SeekOrigin.Begin);
+         }
+ 
+         #endregion
+     }
+ }

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/cordovalib/Commands/AudioPlayer.cs
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/cordovalib/Commands/ImageExifHelper.cs
----------------------------------------------------------------------
diff --cc templates/standalone/cordovalib/Commands/ImageExifHelper.cs
index eb7820d,ed8d89b..68ddf87
--- a/templates/standalone/cordovalib/Commands/ImageExifHelper.cs
+++ b/templates/standalone/cordovalib/Commands/ImageExifHelper.cs
@@@ -10,28 -10,15 +10,15 @@@
  	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  	See the License for the specific language governing permissions and
  	limitations under the License.
-  * 
-  * Portions of this code are based on Simon McKenzie's ExifLib 
-  * http://www.codeproject.com/Articles/36342/ExifLib-A-Fast-Exif-Data-Extractor-for-NET-2-0
+  
  */
  
- 
- 
  using System;
- using System.Net;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Documents;
- using System.Windows.Ink;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Animation;
- using System.Windows.Shapes;
+ using System.Diagnostics;
  using System.IO;
  using System.Windows.Media.Imaging;
- using System.Diagnostics;
  
 -namespace WP7CordovaClassLib.Cordova.Commands
 +namespace WPCordovaClassLib.Cordova.Commands
  {
      public class ImageExifOrientation
      {

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/cordovalib/Commands/Notification.cs
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs
----------------------------------------------------------------------
diff --cc templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs
index c7cda08,fbd74a6..01a0832
--- a/templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs
+++ b/templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs
@@@ -17,13 -21,10 +21,10 @@@ using System.IO
  using System.IO.IsolatedStorage;
  using System.Windows;
  using System.Windows.Threading;
- using Microsoft.Phone.Controls;
- using Microsoft.Phone.Tasks;
- using Microsoft.Xna.Framework;
- using Microsoft.Xna.Framework.Audio;
 -using WP7CordovaClassLib.Cordova.Commands;
 -using AudioResult = WP7CordovaClassLib.Cordova.UI.AudioCaptureTask.AudioResult;
++using WPCordovaClassLib.Cordova.Commands;
 +using AudioResult = WPCordovaClassLib.Cordova.UI.AudioCaptureTask.AudioResult;
  
 -namespace WP7CordovaClassLib.Cordova.UI
 +namespace WPCordovaClassLib.Cordova.UI
  {
      /// <summary>
      /// Implements Audio Recording application

http://git-wip-us.apache.org/repos/asf/incubator-cordova-wp8/blob/54f19e85/tests/MobileSpecUnitTests/MobileSpecUnitTests.sln
----------------------------------------------------------------------
diff --cc tests/MobileSpecUnitTests/MobileSpecUnitTests.sln
index 26b03bc,0000000..20257da
mode 100644,000000..100644
--- a/tests/MobileSpecUnitTests/MobileSpecUnitTests.sln
+++ b/tests/MobileSpecUnitTests/MobileSpecUnitTests.sln
@@@ -1,44 -1,0 +1,44 @@@
 +
 +Microsoft Visual Studio Solution File, Format Version 12.00
- # Visual Studio Express 2012 for Windows Phone
++# Visual Studio 2012
 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileSpecUnitTests", "MobileSpecUnitTests.csproj", "{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}"
 +EndProject
 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WPCordovaClassLib", "..\..\framework\WPCordovaClassLib.csproj", "{FC6A1A70-892D-46AD-9E4A-9793F72AF780}"
 +EndProject
 +Global
 +	GlobalSection(SolutionConfigurationPlatforms) = preSolution
- 		Debug|ARM = Debug|ARM
 +		Debug|Any CPU = Debug|Any CPU
++		Debug|ARM = Debug|ARM
 +		Debug|x86 = Debug|x86
- 		Release|ARM = Release|ARM
 +		Release|Any CPU = Release|Any CPU
++		Release|ARM = Release|ARM
 +		Release|x86 = Release|x86
 +	EndGlobalSection
 +	GlobalSection(ProjectConfigurationPlatforms) = postSolution
- 		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|ARM.ActiveCfg = Debug|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|Any CPU.Build.0 = Debug|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
++		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|ARM.ActiveCfg = Debug|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Debug|x86.ActiveCfg = Debug|Any CPU
- 		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|ARM.ActiveCfg = Release|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|Any CPU.Build.0 = Release|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|Any CPU.Deploy.0 = Release|Any CPU
++		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|ARM.ActiveCfg = Release|Any CPU
 +		{86DC5E2F-4AEE-42E3-9471-A082B9BEBEAC}.Release|x86.ActiveCfg = Release|Any CPU
- 		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|ARM.ActiveCfg = Debug|ARM
- 		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|ARM.Build.0 = Debug|ARM
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|Any CPU.Build.0 = Debug|Any CPU
++		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|ARM.ActiveCfg = Debug|ARM
++		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|ARM.Build.0 = Debug|ARM
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|x86.ActiveCfg = Debug|x86
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Debug|x86.Build.0 = Debug|x86
- 		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|ARM.ActiveCfg = Release|ARM
- 		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|ARM.Build.0 = Release|ARM
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|Any CPU.ActiveCfg = Release|Any CPU
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|Any CPU.Build.0 = Release|Any CPU
++		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|ARM.ActiveCfg = Release|ARM
++		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|ARM.Build.0 = Release|ARM
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|x86.ActiveCfg = Release|x86
 +		{FC6A1A70-892D-46AD-9E4A-9793F72AF780}.Release|x86.Build.0 = Release|x86
 +	EndGlobalSection
 +	GlobalSection(SolutionProperties) = preSolution
 +		HideSolutionNode = FALSE
 +	EndGlobalSection
 +EndGlobal