Browse Source

删除packages

mengxiangge 7 years ago
parent
commit
07a7663c17
100 changed files with 0 additions and 27526 deletions
  1. BIN
      MBI/packages/Aliyun.OSS.SDK.2.8.0/Aliyun.OSS.SDK.2.8.0.nupkg
  2. BIN
      MBI/packages/Aliyun.OSS.SDK.2.8.0/lib/Aliyun.OSS.dll
  3. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp.Common.63.0.3.nupkg
  4. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.Core.dll
  5. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.Core.pdb
  6. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.exe
  7. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.pdb
  8. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.dll
  9. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.pdb
  10. 0 1095
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.xml
  11. 0 8402
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.XML
  12. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.dll
  13. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.pdb
  14. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.Core.dll
  15. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.Core.pdb
  16. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.exe
  17. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.pdb
  18. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.dll
  19. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.pdb
  20. 0 1095
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.xml
  21. 0 8402
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.XML
  22. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.dll
  23. BIN
      MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.pdb
  24. 0 30
      MBI/packages/CefSharp.Common.63.0.3/build/CefSharp.Common.props
  25. 0 67
      MBI/packages/CefSharp.Common.63.0.3/build/CefSharp.Common.targets
  26. 0 24
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/AssemblyInfo.cpp
  27. 0 49
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodCallback.cpp
  28. 0 47
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodCallback.h
  29. 0 53
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodHandler.cpp
  30. 0 47
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodHandler.h
  31. 0 24
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodWrapper.cpp
  32. 0 32
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodWrapper.h
  33. 0 35
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncObjectWrapper.cpp
  34. 0 45
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncObjectWrapper.h
  35. 0 640
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.cpp
  36. 0 86
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.h
  37. 0 71
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefBrowserWrapper.h
  38. 0 44
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackRegistry.cpp
  39. 0 53
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackRegistry.h
  40. 0 48
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackWrapper.h
  41. 0 76
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodHandler.cpp
  42. 0 39
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodHandler.h
  43. 0 25
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodWrapper.cpp
  44. 0 46
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodWrapper.h
  45. 0 53
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptObjectWrapper.cpp
  46. 0 61
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptObjectWrapper.h
  47. 0 65
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyHandler.h
  48. 0 34
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyWrapper.cpp
  49. 0 40
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyWrapper.h
  50. 0 63
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptRootObjectWrapper.cpp
  51. 0 86
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptRootObjectWrapper.h
  52. 0 270
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/RegisterBoundObjectHandler.h
  53. 0 61
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/RegisterBoundObjectRegistry.h
  54. 0 80
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/JsObjectsSerialization.cpp
  55. 0 19
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/JsObjectsSerialization.h
  56. 0 190
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/V8Serialization.cpp
  57. 0 29
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/V8Serialization.h
  58. 0 3
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Stdafx.cpp
  59. 0 23
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Stdafx.h
  60. 0 83
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/SubProcess.h
  61. 0 270
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/TypeUtils.cpp
  62. 0 52
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/TypeUtils.h
  63. 0 90
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/WcfEnabledSubProcess.cpp
  64. 0 38
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/WcfEnabledSubProcess.h
  65. 0 14
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/resource.h
  66. 0 58
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/vcclr_local.h
  67. 0 48
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess/Program.cs
  68. 0 18
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess/Properties/AssemblyInfo.cs
  69. 0 32
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/AssemblyInfo.cpp
  70. 0 368
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/BrowserSettings.h
  71. 0 735
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Cef.h
  72. 0 434
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CefSettings.h
  73. 0 105
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CookieManager.cpp
  74. 0 81
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CookieManager.h
  75. 0 62
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefAuthCallbackWrapper.h
  76. 0 51
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBeforeDownloadCallbackWrapper.h
  77. 0 620
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBrowserHostWrapper.cpp
  78. 0 148
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBrowserHostWrapper.h
  79. 0 59
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCallbackWrapper.h
  80. 0 98
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCertificateCallbackWrapper.h
  81. 0 39
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCompletionCallbackAdapter.h
  82. 0 155
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefContextMenuParamsWrapper.cpp
  83. 0 63
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefContextMenuParamsWrapper.h
  84. 0 40
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDeleteCookiesCallbackAdapter.h
  85. 0 69
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDownloadItemCallbackWrapper.h
  86. 0 175
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDragDataWrapper.h
  87. 0 59
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFileDialogCallbackWrapper.h
  88. 0 391
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFrameWrapper.cpp
  89. 0 261
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFrameWrapper.h
  90. 0 51
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefGeolocationCallbackWrapper.h
  91. 0 66
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefGetGeolocationCallbackAdapter.h
  92. 0 56
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefJSDialogCallbackWrapper.h
  93. 0 440
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefMenuModelWrapper.h
  94. 0 83
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefNavigationEntryVisitorAdapter.h
  95. 0 43
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPdfPrintCallbackWrapper.h
  96. 0 123
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPostDataElementWrapper.h
  97. 0 177
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPostDataWrapper.h
  98. 0 48
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRegisterCdmCallbackAdapter.h
  99. 0 71
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRequestCallbackWrapper.h
  100. 0 0
      MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRequestWrapper.cpp

BIN
MBI/packages/Aliyun.OSS.SDK.2.8.0/Aliyun.OSS.SDK.2.8.0.nupkg


BIN
MBI/packages/Aliyun.OSS.SDK.2.8.0/lib/Aliyun.OSS.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp.Common.63.0.3.nupkg


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.Core.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.Core.pdb


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.exe


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.BrowserSubprocess.pdb


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.pdb


File diff suppressed because it is too large
+ 0 - 1095
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.Core.xml


File diff suppressed because it is too large
+ 0 - 8402
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.XML


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x64/CefSharp.pdb


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.Core.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.Core.pdb


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.exe


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.BrowserSubprocess.pdb


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.pdb


File diff suppressed because it is too large
+ 0 - 1095
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.Core.xml


File diff suppressed because it is too large
+ 0 - 8402
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.XML


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.dll


BIN
MBI/packages/CefSharp.Common.63.0.3/CefSharp/x86/CefSharp.pdb


+ 0 - 30
MBI/packages/CefSharp.Common.63.0.3/build/CefSharp.Common.props

@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Choose>
-    <When Condition="'$(Platform)' == 'x64'">
-      <ItemGroup>
-        <Reference Include="CefSharp">
-          <HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x64\CefSharp.dll</HintPath>
-          <Private>False</Private>
-        </Reference>
-        <Reference Include="CefSharp.Core">
-          <HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x64\CefSharp.Core.dll</HintPath>
-          <Private>False</Private>
-        </Reference>
-      </ItemGroup>
-    </When>
-    <!-- x86, Win32 and AnyCPU -->
-    <Otherwise>
-      <ItemGroup>
-        <Reference Include="CefSharp">
-          <HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.dll</HintPath>
-          <Private>False</Private>
-        </Reference>
-        <Reference Include="CefSharp.Core">
-          <HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.Core.dll</HintPath>
-          <Private>False</Private>
-        </Reference>
-      </ItemGroup>
-    </Otherwise>
-  </Choose>
-</Project>

+ 0 - 67
MBI/packages/CefSharp.Common.63.0.3/build/CefSharp.Common.targets

@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Target Name="PlatformCheck" BeforeTargets="ResolveAssemblyReferences" Condition="(('$(Platform)' != 'x86') AND ('$(Platform)' != 'x64') AND ('$(Platform)' != 'Win32') AND '$(CefSharpAnyCpuSupport)' != 'true')">
-    <Error Text="$(MSBuildThisFileName) contains unmanaged resoures, set your project and solution platform to x86 or x64. Alternatively for AnyCPU Support see https://github.com/cefsharp/CefSharp/issues/1714" />
-  </Target>
-  
-  <Target Name="FrameworkVersionCheck" BeforeTargets="ResolveAssemblyReferences" Condition="(('$(TargetFrameworkVersion)' == 'v4.5.1') OR ('$(TargetFrameworkVersion)' == 'v4.5') OR ('$(TargetFrameworkVersion)' == 'v4.0'))">
-    <Error Text="CefSharp requires .Net 4.5.2 or higher" />
-  </Target>
-
-  <ItemGroup>
-    <CefSharpCommonBinaries32 Include="$(MSBuildThisFileDirectory)..\CefSharp\x86\*.*" />
-    <CefSharpCommonBinaries64 Include="$(MSBuildThisFileDirectory)..\CefSharp\x64\*.*" />
-    <CefSharpCommonBinariesAnyCPU Include="$(MSBuildThisFileDirectory)..\CefSharp\**\*.*" />
-  </ItemGroup>
-
-  <PropertyGroup>
-    <CefSharpTargetDir Condition=" '$(CefSharpTargetDir)' == '' "></CefSharpTargetDir>
-  </PropertyGroup>
-
-  <!--
-    These item groups should be in the .props file, unfortunately Nuget 2.8.x doesn't gurantee the
-    correct ordering .props imports, which we require as this depends on the cef.redist packages
-    exporting an ItemGroup
-   -->
-
-  <ItemGroup Condition="('$(Platform)' == 'x86') OR ('$(Platform)' == 'Win32')">
-    <None Include="@(CefRedist32)">
-      <Link>$(CefSharpTargetDir)\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="@(CefSharpCommonBinaries32)">
-      <Link>$(CefSharpTargetDir)\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-
-  <ItemGroup Condition="'$(Platform)' == 'x64'">
-    <None Include="@(CefRedist64)">
-      <Link>$(CefSharpTargetDir)\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="@(CefSharpCommonBinaries64)">
-      <Link>$(CefSharpTargetDir)\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-
-  <ItemGroup Condition="'$(Platform)' == 'AnyCPU'">
-    <None Include="@(CefRedist32)">
-      <Link>$(CefSharpTargetDir)\x86\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="@(CefRedist64)">
-      <Link>$(CefSharpTargetDir)\x64\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="@(CefSharpCommonBinaries32)">
-      <Link>$(CefSharpTargetDir)\x86\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="@(CefSharpCommonBinaries64)">
-      <Link>$(CefSharpTargetDir)\x64\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-</Project>

+ 0 - 24
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/AssemblyInfo.cpp

@@ -1,24 +0,0 @@
-#include "Stdafx.h"
-
-using namespace System;
-using namespace System::Reflection;
-using namespace System::Runtime::CompilerServices;
-using namespace System::Runtime::InteropServices;
-using namespace System::Security::Permissions;
-using namespace CefSharp;
-
-//[assembly:AssemblyTitle("CefSharpBrowserSubprocess.Core")];
-//[assembly:AssemblyCompany(AssemblyInfo::AssemblyCompany)];
-//[assembly:AssemblyProduct(AssemblyInfo::AssemblyProduct)];
-//[assembly:AssemblyCopyright(AssemblyInfo::AssemblyCopyright)];
-
-[assembly:AssemblyVersion(AssemblyInfo::AssemblyVersion)];
-[assembly:ComVisible(AssemblyInfo::ComVisible)];
-[assembly:CLSCompliant(AssemblyInfo::ClsCompliant)];
-
-[assembly:AssemblyDescription("")];
-[assembly:AssemblyConfiguration("")];
-[assembly:AssemblyTrademark("")];
-[assembly:AssemblyCulture("")];
-
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpBrowserSubprocessProject)];

+ 0 - 49
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodCallback.cpp

@@ -1,49 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JavascriptAsyncMethodCallback.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            void JavascriptAsyncMethodCallback::Success(const CefRefPtr<CefV8Value>& result)
-            {
-                if (_resolve.get() && _context.get() && _context->Enter())
-                {
-                    try
-                    {
-                        CefV8ValueList args;
-                        args.push_back(result);
-                        _resolve->ExecuteFunction(nullptr, args);
-                    }
-                    finally
-                    {
-                        _context->Exit();
-                    }
-                }
-            }
-
-            void JavascriptAsyncMethodCallback::Fail(const CefString& exception)
-            {
-                if (_reject.get() && _context.get() && _context->Enter())
-                {
-                    try
-                    {
-                        CefV8ValueList args;
-                        args.push_back(CefV8Value::CreateString(exception));
-                        _reject->ExecuteFunction(nullptr, args);
-                    }
-                    finally
-                    {
-                        _context->Exit();
-                    }
-                }
-            }
-        }
-    }
-}

+ 0 - 47
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodCallback.h

@@ -1,47 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            private ref class JavascriptAsyncMethodCallback
-            {
-            private:
-                MCefRefPtr<CefV8Context> _context;
-                MCefRefPtr<CefV8Value> _resolve;
-                MCefRefPtr<CefV8Value> _reject;
-
-            public:
-                JavascriptAsyncMethodCallback(CefRefPtr<CefV8Context> context, CefRefPtr<CefV8Value> resolve, CefRefPtr<CefV8Value> reject)
-                    :_context(context), _resolve(resolve.get()), _reject(reject.get())
-                {
-
-                }
-
-                !JavascriptAsyncMethodCallback()
-                {
-                    _resolve = nullptr;
-                    _reject = nullptr;
-                    _context = nullptr;
-                }
-
-                ~JavascriptAsyncMethodCallback()
-                {
-                    this->!JavascriptAsyncMethodCallback();
-                }
-
-                void Success(const CefRefPtr<CefV8Value>& result);
-
-                void Fail(const CefString& exception);
-            };
-        }
-    }
-}

+ 0 - 53
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodHandler.cpp

@@ -1,53 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JavascriptAsyncMethodHandler.h"
-#include "../CefSharp.Core/Internals/Messaging/Messages.h"
-#include "../CefSharp.Core/Internals/Serialization/Primitives.h"
-#include "Serialization/V8Serialization.h"
-
-using namespace CefSharp::Internals::Messaging;
-using namespace CefSharp::Internals::Serialization;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            bool JavascriptAsyncMethodHandler::Execute(const CefString& name, CefRefPtr<CefV8Value> object, const CefV8ValueList& arguments, CefRefPtr<CefV8Value>& retval, CefString& exception)
-            {
-                auto context = CefV8Context::GetCurrentContext();
-                auto browser = context->GetBrowser();
-                //this will create a promise and give us the reject/resolve functions {p: Promise, res: resolve(), rej: reject()}
-                auto promiseData = _promiseCreator->ExecuteFunctionWithContext(context, nullptr, CefV8ValueList());
-                retval = promiseData->GetValue("p");
-
-                auto resolve = promiseData->GetValue("res");
-                auto reject = promiseData->GetValue("rej");
-                auto callback = gcnew JavascriptAsyncMethodCallback(context, resolve, reject);
-                auto callbackId = _methodCallbackSave->Invoke(callback);
-
-                auto request = CefProcessMessage::Create(kJavascriptAsyncMethodCallRequest);
-                auto argList = request->GetArgumentList();
-                auto params = CefListValue::Create();
-                for (auto i = 0; i < arguments.size(); i++)
-                {
-                    SerializeV8Object(arguments[i], params, i, _callbackRegistry);
-                }
-
-                SetInt64(argList, 0, context->GetFrame()->GetIdentifier());
-                SetInt64(argList, 1, _objectId);
-                SetInt64(argList, 2, callbackId);
-                argList->SetString(3, name);
-                argList->SetList(4, params);
-
-                browser->SendProcessMessage(CefProcessId::PID_BROWSER, request);
-
-                return true;
-            }
-        }
-    }
-}

+ 0 - 47
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodHandler.h

@@ -1,47 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-#include "JavascriptCallbackRegistry.h"
-#include "JavascriptAsyncMethodCallback.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            private class JavascriptAsyncMethodHandler : public virtual CefV8Handler
-            {
-            private:
-                gcroot<JavascriptCallbackRegistry^> _callbackRegistry;
-                gcroot<Func<JavascriptAsyncMethodCallback^, int64>^> _methodCallbackSave;
-                CefRefPtr<CefV8Value> _promiseCreator;
-                int64 _objectId;
-
-            public:
-                JavascriptAsyncMethodHandler(int64 objectId, JavascriptCallbackRegistry^ callbackRegistry, CefRefPtr<CefV8Value> promiseCreator, Func<JavascriptAsyncMethodCallback^, int64>^ methodCallbackSave)
-                    :_callbackRegistry(callbackRegistry), _objectId(objectId), _promiseCreator(promiseCreator), _methodCallbackSave(methodCallbackSave)
-                {
-
-                }
-
-                virtual bool Execute(const CefString& name, CefRefPtr<CefV8Value> object, const CefV8ValueList& arguments, CefRefPtr<CefV8Value>& retval, CefString& exception);
-
-                ~JavascriptAsyncMethodHandler()
-                {
-                    // The callback registry is a shared instance among all method handlers (async & sync).
-                    // It's lifecycle is managed in the JavascriptRootObjectWrapper.
-                    _callbackRegistry = nullptr;
-                    _methodCallbackSave = nullptr;
-                    _promiseCreator = NULL;
-                }
-
-                IMPLEMENT_REFCOUNTING(JavascriptAsyncMethodHandler)
-            };
-        }
-    }
-}

+ 0 - 24
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodWrapper.cpp

@@ -1,24 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JavascriptCallbackRegistry.h"
-#include "JavascriptAsyncMethodWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            void JavascriptAsyncMethodWrapper::Bind(JavascriptMethod^ method, const CefRefPtr<CefV8Value>& value)
-            {
-                auto methodName = StringUtils::ToNative(method->JavascriptName);
-                auto v8Function = CefV8Value::CreateFunction(methodName, _javascriptMethodHandler.get());
-
-                value->SetValue(methodName, v8Function, V8_PROPERTY_ATTRIBUTE_NONE);
-            }
-        }
-    }
-}

+ 0 - 32
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncMethodWrapper.h

@@ -1,32 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "JavascriptAsyncMethodHandler.h"
-#include "JavascriptCallbackRegistry.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            private ref class JavascriptAsyncMethodWrapper
-            {
-            private:
-                MCefRefPtr<JavascriptAsyncMethodHandler> _javascriptMethodHandler;
-
-            public:
-                JavascriptAsyncMethodWrapper(int64 ownerId, JavascriptCallbackRegistry^ callbackRegistry, CefRefPtr<CefV8Value> promiseCreator, Func<JavascriptAsyncMethodCallback^, int64>^ methodCallbackSave)
-                    : _javascriptMethodHandler(new JavascriptAsyncMethodHandler(ownerId, callbackRegistry, promiseCreator, methodCallbackSave))
-                {
-
-                }
-
-                void Bind(JavascriptMethod^ method, const CefRefPtr<CefV8Value>& value);
-            };
-        }
-    }
-}

+ 0 - 35
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncObjectWrapper.cpp

@@ -1,35 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JavascriptCallbackRegistry.h"
-#include "JavascriptAsyncObjectWrapper.h"
-#include "JavascriptAsyncMethodWrapper.h"
-
-using namespace System::Linq;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            void JavascriptAsyncObjectWrapper::Bind(JavascriptObject^ object, const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefV8Value> &promiseCreator)
-            {
-                //V8Value that represents this javascript object - only one per complex type, no accessor
-                auto javascriptObject = CefV8Value::CreateObject(nullptr, nullptr);
-                auto objectName = StringUtils::ToNative(object->JavascriptName);
-                value->SetValue(objectName, javascriptObject, V8_PROPERTY_ATTRIBUTE_NONE);
-
-                for each (JavascriptMethod^ method in Enumerable::OfType<JavascriptMethod^>(object->Methods))
-                {
-                    auto wrappedMethod = gcnew JavascriptAsyncMethodWrapper(object->Id, _callbackRegistry, promiseCreator, _methodCallbackSave);
-                    wrappedMethod->Bind(method, javascriptObject);
-
-                    _wrappedMethods->Add(wrappedMethod);
-                }
-            }
-        }
-    }
-}

+ 0 - 45
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Async/JavascriptAsyncObjectWrapper.h

@@ -1,45 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "JavascriptAsyncMethodCallback.h"
-#include "JavascriptCallbackRegistry.h"
-#include "JavascriptAsyncMethodWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Async
-        {
-            private ref class JavascriptAsyncObjectWrapper
-            {
-            private:
-                initonly List<JavascriptAsyncMethodWrapper^>^ _wrappedMethods;
-                Func<JavascriptAsyncMethodCallback^, int64>^ _methodCallbackSave;
-                JavascriptCallbackRegistry^ _callbackRegistry;
-
-            public:
-                JavascriptAsyncObjectWrapper(JavascriptCallbackRegistry^ callbackRegistry, Func<JavascriptAsyncMethodCallback^, int64>^ saveMethod)
-                    : _wrappedMethods(gcnew List<JavascriptAsyncMethodWrapper^>()), _methodCallbackSave(saveMethod), _callbackRegistry(callbackRegistry)
-                {
-
-                }
-
-                ~JavascriptAsyncObjectWrapper()
-                {
-                    _callbackRegistry = nullptr;
-                    _methodCallbackSave = nullptr;
-                    for each (JavascriptAsyncMethodWrapper^ var in _wrappedMethods)
-                    {
-                        delete var;
-                    }
-                }
-
-                void Bind(JavascriptObject^ object, const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefV8Value> &promiseCreator);
-            };
-        }
-    }
-}

+ 0 - 640
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.cpp

@@ -1,640 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-
-#include "CefBrowserWrapper.h"
-#include "CefAppUnmanagedWrapper.h"
-#include "RegisterBoundObjectHandler.h"
-#include "JavascriptRootObjectWrapper.h"
-#include "Serialization\V8Serialization.h"
-#include "Serialization\JsObjectsSerialization.h"
-#include "Async\JavascriptAsyncMethodCallback.h"
-#include "..\CefSharp.Core\Internals\Messaging\Messages.h"
-#include "..\CefSharp.Core\Internals\Serialization\Primitives.h"
-
-using namespace System;
-using namespace System::Diagnostics;
-using namespace System::Collections::Generic;
-using namespace CefSharp::Internals::Messaging;
-using namespace CefSharp::Internals::Serialization;
-
-namespace CefSharp
-{
-    const CefString CefAppUnmanagedWrapper::kPromiseCreatorFunction = "cefsharp_CreatePromise";
-    const CefString CefAppUnmanagedWrapper::kPromiseCreatorScript = ""
-        "function cefsharp_CreatePromise() {"
-        "   var result = {};"
-        "   var promise = new Promise(function(resolve, reject) {"
-        "       result.res = resolve; result.rej = reject;"
-        "   });"
-        "   result.p = promise;"
-        "   return result;"
-        "}";
-
-    CefRefPtr<CefRenderProcessHandler> CefAppUnmanagedWrapper::GetRenderProcessHandler()
-    {
-        return this;
-    };
-
-    // CefRenderProcessHandler
-    void CefAppUnmanagedWrapper::OnBrowserCreated(CefRefPtr<CefBrowser> browser)
-    {
-        auto wrapper = gcnew CefBrowserWrapper(browser);
-        _onBrowserCreated->Invoke(wrapper);
-
-        //Multiple CefBrowserWrappers created when opening popups
-        _browserWrappers->TryAdd(browser->GetIdentifier(), wrapper);
-    }
-
-    void CefAppUnmanagedWrapper::OnBrowserDestroyed(CefRefPtr<CefBrowser> browser)
-    {
-        CefBrowserWrapper^ wrapper;
-        if (_browserWrappers->TryRemove(browser->GetIdentifier(), wrapper))
-        {
-            _onBrowserDestroyed->Invoke(wrapper);
-            delete wrapper;
-        }
-    };
-
-    void CefAppUnmanagedWrapper::OnContextCreated(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefV8Context> context)
-    {
-        //Send a message to the browser processing signaling that OnContextCreated has been called
-        //only param is the FrameId. Currently an IPC message is only sent for the main frame - will see
-        //how viable this solution is and if it's worth expanding to sub/child frames.
-        if (frame->IsMain())
-        {
-            auto contextCreatedMessage = CefProcessMessage::Create(kOnContextCreatedRequest);
-
-            SetInt64(contextCreatedMessage->GetArgumentList(), 0, frame->GetIdentifier());
-
-            browser->SendProcessMessage(CefProcessId::PID_BROWSER, contextCreatedMessage);
-        }
-
-        if (_legacyBindingEnabled)
-        {
-            if (_javascriptObjects->Count > 0)
-            {
-                auto rootObject = GetJsRootObjectWrapper(browser->GetIdentifier(), frame->GetIdentifier());
-                if (rootObject != nullptr)
-                {
-                    rootObject->Bind(_javascriptObjects->Values, context->GetGlobal());
-                }
-            }
-        }
-
-        auto global = context->GetGlobal();
-
-        auto cefSharpObj = CefV8Value::CreateObject(NULL, NULL);
-        global->SetValue("CefSharp", cefSharpObj, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-
-        auto browserWrapper = FindBrowserWrapper(browser->GetIdentifier());
-
-        //TODO: JSB: Split functions into their own classes
-        //Browser wrapper is only used for BindObjectAsync
-        auto bindObjAsyncFunction = CefV8Value::CreateFunction("BindObjectAsync", new RegisterBoundObjectHandler(_registerBoundObjectRegistry, _javascriptObjects, browserWrapper));
-        cefSharpObj->SetValue("BindObjectAsync", bindObjAsyncFunction, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-
-        auto unBindObFunction = CefV8Value::CreateFunction("DeleteBoundObject", new RegisterBoundObjectHandler(_registerBoundObjectRegistry, _javascriptObjects, nullptr));
-        cefSharpObj->SetValue("DeleteBoundObject", unBindObFunction, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-
-        auto removeObjectFromCacheFunction = CefV8Value::CreateFunction("RemoveObjectFromCache", new RegisterBoundObjectHandler(_registerBoundObjectRegistry, _javascriptObjects, nullptr));
-        cefSharpObj->SetValue("RemoveObjectFromCache", removeObjectFromCacheFunction, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-
-        auto isObjectCachedFunction = CefV8Value::CreateFunction("IsObjectCached", new RegisterBoundObjectHandler(_registerBoundObjectRegistry, _javascriptObjects, nullptr));
-        cefSharpObj->SetValue("IsObjectCached", isObjectCachedFunction, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-    };
-
-    void CefAppUnmanagedWrapper::OnContextReleased(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefV8Context> context)
-    {
-        //Send a message to the browser processing signaling that OnContextReleased has been called
-        //only param is the FrameId. Currently an IPC message is only sent for the main frame - will see
-        //how viable this solution is and if it's worth expanding to sub/child frames.
-        if (frame->IsMain())
-        {
-            auto contextReleasedMessage = CefProcessMessage::Create(kOnContextReleasedRequest);
-
-            SetInt64(contextReleasedMessage->GetArgumentList(), 0, frame->GetIdentifier());
-
-            browser->SendProcessMessage(CefProcessId::PID_BROWSER, contextReleasedMessage);
-        }
-
-        auto browserWrapper = FindBrowserWrapper(browser->GetIdentifier());
-
-        //If we no longer have a browser wrapper reference then there's nothing we can do
-        if (browserWrapper == nullptr)
-        {
-            return;
-        }
-
-        auto rootObjectWrappers = browserWrapper->JavascriptRootObjectWrappers;
-        
-        JavascriptRootObjectWrapper^ wrapper;
-        if (rootObjectWrappers->TryRemove(frame->GetIdentifier(), wrapper))
-        {
-            delete wrapper;
-        }
-    };
-
-    void CefAppUnmanagedWrapper::OnFocusedNodeChanged(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefDOMNode> node)
-    {
-        if (!_focusedNodeChangedEnabled)
-        {
-            return;
-        }
-
-        auto focusedNodeChangedMessage = CefProcessMessage::Create(kOnFocusedNodeChanged);
-        auto list = focusedNodeChangedMessage->GetArgumentList();
-
-        // Needed in the browser process to get the frame.
-        SetInt64(list, 0, frame->GetIdentifier());
-
-        // The node will be empty if an element loses focus but another one
-        // doesn't gain focus. Only transfer information if the node is an
-        // element.
-        if (node != nullptr && node->IsElement())
-        {
-            // True when a node exists, false if it doesn't.
-            list->SetBool(1, true);
-
-            // Store the tag name.
-            list->SetString(2, node->GetElementTagName());
-
-            // Transfer the attributes in a Dictionary.
-            auto attributes = CefDictionaryValue::Create();
-            CefDOMNode::AttributeMap attributeMap;
-            node->GetElementAttributes(attributeMap);
-            for (auto iter : attributeMap)
-            {
-                attributes->SetString(iter.first, iter.second);
-            }
-
-            list->SetDictionary(3, attributes);
-        }
-        else
-        {
-            list->SetBool(1, false);
-        }
-
-        browser->SendProcessMessage(CefProcessId::PID_BROWSER, focusedNodeChangedMessage);
-    }
-
-    JavascriptRootObjectWrapper^ CefAppUnmanagedWrapper::GetJsRootObjectWrapper(int browserId, int64 frameId)
-    {
-        auto browserWrapper = FindBrowserWrapper(browserId);
-
-        if (browserWrapper == nullptr)
-        {
-            return nullptr;
-        }
-
-        auto rootObjectWrappers = browserWrapper->JavascriptRootObjectWrappers;
-
-        JavascriptRootObjectWrapper^ rootObject;
-        if (!rootObjectWrappers->TryGetValue(frameId, rootObject))
-        {
-            rootObject = gcnew JavascriptRootObjectWrapper(browserId, browserWrapper->BrowserProcess);
-            rootObjectWrappers->TryAdd(frameId, rootObject);
-        }
-
-        return rootObject;
-    }
-
-    CefBrowserWrapper^ CefAppUnmanagedWrapper::FindBrowserWrapper(int browserId)
-    {
-        CefBrowserWrapper^ wrapper = nullptr;
-
-        _browserWrappers->TryGetValue(browserId, wrapper);
-
-        if (wrapper == nullptr)
-        {
-            //TODO: Find the syntax for delcaring the native string directly
-            LOG(ERROR) << StringUtils::ToNative("Failed to identify BrowserWrapper in OnContextCreated BrowserId:" + browserId).ToString();
-        }
-
-        return wrapper;
-    }
-
-    bool CefAppUnmanagedWrapper::OnProcessMessageReceived(CefRefPtr<CefBrowser> browser, CefProcessId sourceProcessId, CefRefPtr<CefProcessMessage> message)
-    {
-        auto handled = false;
-        auto name = message->GetName();
-        auto argList = message->GetArgumentList();
-
-        auto browserWrapper = FindBrowserWrapper(browser->GetIdentifier());
-        //Error handling for missing/closed browser
-        if (browserWrapper == nullptr)
-        {
-            if (name == kJavascriptCallbackDestroyRequest ||
-                name == kJavascriptRootObjectResponse ||
-                name == kJavascriptAsyncMethodCallResponse)
-            {
-                //If we can't find the browser wrapper then we'll just
-                //ignore this as it's likely already been disposed of
-                return true;
-            }
-
-            CefString responseName;
-            if (name == kEvaluateJavascriptRequest)
-            {
-                responseName = kEvaluateJavascriptResponse;
-            }
-            else if (name == kJavascriptCallbackRequest)
-            {
-                responseName = kJavascriptCallbackResponse;
-            }
-            else
-            {
-                //TODO: Should be throw an exception here? It's likely that only a CefSharp developer would see this
-                // when they added a new message and haven't yet implemented the render process functionality.
-                throw gcnew Exception("Unsupported message type");
-            }
-
-            auto callbackId = GetInt64(argList, 1);
-            auto response = CefProcessMessage::Create(responseName);
-            auto responseArgList = response->GetArgumentList();
-            auto errorMessage = String::Format("Request BrowserId : {0} not found it's likely the browser is already closed", browser->GetIdentifier());
-
-            //success: false
-            responseArgList->SetBool(0, false);
-            SetInt64(responseArgList, 1, callbackId);
-            responseArgList->SetString(2, StringUtils::ToNative(errorMessage));
-            browser->SendProcessMessage(sourceProcessId, response);
-
-            return true;
-        }
-    
-        //these messages are roughly handled the same way
-        if (name == kEvaluateJavascriptRequest || name == kJavascriptCallbackRequest)
-        {
-            bool success = false;
-            CefRefPtr<CefV8Value> result;
-            CefString errorMessage;
-            CefRefPtr<CefProcessMessage> response;
-
-            if (name == kEvaluateJavascriptRequest)
-            {
-                response = CefProcessMessage::Create(kEvaluateJavascriptResponse);
-            }
-            else
-            {
-                response = CefProcessMessage::Create(kJavascriptCallbackResponse);
-            }
-
-            //both messages have the frameId stored at 0 and callbackId stored at index 1
-            auto frameId = GetInt64(argList, 0);
-            int64 callbackId = GetInt64(argList, 1);
-
-            if (name == kEvaluateJavascriptRequest)
-            {
-
-                JavascriptRootObjectWrapper^ rootObjectWrapper;
-                browserWrapper->JavascriptRootObjectWrappers->TryGetValue(frameId, rootObjectWrapper);
-                
-                //NOTE: In the rare case when when OnContextCreated hasn't been called we need to manually create the rootObjectWrapper
-                //It appears that OnContextCreated is only called for pages that have javascript on them, which makes sense
-                //as without javascript there is no need for a context.
-                if (rootObjectWrapper == nullptr)
-                {
-                    rootObjectWrapper = gcnew JavascriptRootObjectWrapper(browser->GetIdentifier(), browserWrapper->BrowserProcess);
-
-                    browserWrapper->JavascriptRootObjectWrappers->TryAdd(frameId, rootObjectWrapper);
-                }
-
-                auto callbackRegistry = rootObjectWrapper->CallbackRegistry;
-
-                auto script = argList->GetString(2);
-                auto scriptUrl = argList->GetString(3);
-                auto startLine = argList->GetInt(4);
-
-                auto frame = browser->GetFrame(frameId);
-                if (frame.get())
-                {
-                    auto context = frame->GetV8Context();
-                    
-                    if (context.get() && context->Enter())
-                    {
-                        try
-                        {
-                            CefRefPtr<CefV8Exception> exception;
-                            success = context->Eval(script, scriptUrl, startLine, result, exception);
-                            
-                            //we need to do this here to be able to store the v8context
-                            if (success)
-                            {
-                                auto responseArgList = response->GetArgumentList();
-                                SerializeV8Object(result, responseArgList, 2, callbackRegistry);
-                            }
-                            else
-                            {
-                                errorMessage = StringUtils::CreateExceptionString(exception);
-                            }
-                        }
-                        finally
-                        {
-                            context->Exit();
-                        }
-                    }
-                    else
-                    {
-                        errorMessage = "Unable to Enter Context";
-                    }
-                }
-                else
-                {
-                    errorMessage = StringUtils::ToNative("Frame " + frameId + " is no longer available, most likely the Frame has been Disposed or Removed.");
-                }
-            }
-            else
-            {
-                JavascriptRootObjectWrapper^ rootObjectWrapper;
-                browserWrapper->JavascriptRootObjectWrappers->TryGetValue(frameId, rootObjectWrapper);
-                auto callbackRegistry = rootObjectWrapper == nullptr ? nullptr : rootObjectWrapper->CallbackRegistry;
-                if (callbackRegistry == nullptr)
-                {
-                    errorMessage = StringUtils::ToNative("The callback registry for Frame " + frameId + " is no longer available, most likely the Frame has been Disposed.");
-                }
-                else
-                {
-                    auto jsCallbackId = GetInt64(argList, 2);
-
-                    auto callbackWrapper = callbackRegistry->FindWrapper(jsCallbackId);
-                    if (callbackWrapper == nullptr)
-                    {
-                        errorMessage = "Unable to find callbackWrapper";
-                    }
-                    else
-                    {
-                        auto context = callbackWrapper->GetContext();
-                        auto value = callbackWrapper->GetValue();
-                
-                        if (context.get() && context->Enter())
-                        {
-                            try
-                            {
-                                auto parameterList = argList->GetList(3);
-                                CefV8ValueList params;
-                                
-                                //Needs to be called within the context as for Dictionary (mapped to struct)
-                                //a V8Object will be created
-                                for (CefV8ValueList::size_type i = 0; i < parameterList->GetSize(); i++)
-                                {
-                                    params.push_back(DeserializeV8Object(parameterList, static_cast<int>(i)));
-                                }
-
-                                result = value->ExecuteFunction(nullptr, params);
-                                success = result.get() != nullptr;
-                        
-                                //we need to do this here to be able to store the v8context
-                                if (success)
-                                {
-                                    auto responseArgList = response->GetArgumentList();
-                                    SerializeV8Object(result, responseArgList, 2, callbackRegistry);
-                                }
-                                else
-                                {
-                                    auto exception = value->GetException();
-                                    errorMessage = StringUtils::CreateExceptionString(exception);
-                                }
-                            }
-                            finally
-                            {
-                                context->Exit();
-                            }
-                        }
-                        else
-                        {
-                            errorMessage = "Unable to Enter Context";
-                        }
-                    }
-                }
-            }
-
-            auto responseArgList = response->GetArgumentList();
-            responseArgList->SetBool(0, success);
-            SetInt64(responseArgList, 1, callbackId);
-            if (!success)
-            {
-                responseArgList->SetString(2, errorMessage);
-            }
-            browser->SendProcessMessage(sourceProcessId, response);
-
-            handled = true;
-        }
-        else if (name == kJavascriptCallbackDestroyRequest)
-        {
-            auto jsCallbackId = GetInt64(argList, 0);
-            auto frameId = GetInt64(argList, 1);
-            JavascriptRootObjectWrapper^ rootObjectWrapper;
-            browserWrapper->JavascriptRootObjectWrappers->TryGetValue(frameId, rootObjectWrapper);
-            if (rootObjectWrapper != nullptr && rootObjectWrapper->CallbackRegistry != nullptr)
-            {
-                rootObjectWrapper->CallbackRegistry->Deregister(jsCallbackId);
-            }
-
-            handled = true;
-        }
-        else if (name == kJavascriptRootObjectResponse)
-        {
-            auto useLegacyBehaviour = argList->GetBool(0);
-
-            //For the old legacy behaviour we add the objects
-            //to the cache
-            if (useLegacyBehaviour)
-            {
-                _legacyBindingEnabled = true;
-
-                auto javascriptObjects = DeserializeJsObjects(argList, 4);
-
-                for each (JavascriptObject^ obj in Enumerable::OfType<JavascriptObject^>(javascriptObjects))
-                {
-                    _javascriptObjects->Add(obj->JavascriptName, obj);
-                }
-            }
-            else
-            {
-                auto browserId = argList->GetInt(1);
-                auto frameId = GetInt64(argList, 2);
-                auto callbackId = GetInt64(argList, 3);
-                auto javascriptObjects = DeserializeJsObjects(argList, 4);
-
-                //Caching of JavascriptObjects
-                //TODO: JSB Should caching be configurable? On a per object basis?
-                for each (JavascriptObject^ obj in Enumerable::OfType<JavascriptObject^>(javascriptObjects))
-                {
-                    if (_javascriptObjects->ContainsKey(obj->JavascriptName))
-                    {
-                        _javascriptObjects->Remove(obj->JavascriptName);
-                    }
-                    _javascriptObjects->Add(obj->JavascriptName, obj);
-                }
-
-                auto frame = browser->GetFrame(frameId);
-                if (frame.get())
-                {
-                    auto rootObject = GetJsRootObjectWrapper(browser->GetIdentifier(), frameId);
-
-                    if (rootObject == nullptr)
-                    {
-                        return false;
-                    }
-
-                    auto context = frame->GetV8Context();
-
-                    if (context.get() && context->Enter())
-                    {
-                        try
-                        {
-                            rootObject->Bind(javascriptObjects, context->GetGlobal());
-
-                            JavascriptAsyncMethodCallback^ callback;
-                            if (_registerBoundObjectRegistry->TryGetAndRemoveMethodCallback(callbackId, callback))
-                            {
-                                //Response object has no Accessor or Interceptor
-                                auto response = CefV8Value::CreateObject(NULL, NULL);
-
-                                response->SetValue("Count", CefV8Value::CreateInt(javascriptObjects->Count), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-
-                                if (javascriptObjects->Count > 0)
-                                {
-                                    //TODO: JSB Should we include a list of successfully bound object names?
-                                    response->SetValue("Success", CefV8Value::CreateBool(true), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                    response->SetValue("Message", CefV8Value::CreateString("OK"), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                    callback->Success(response);
-                                }
-                                else
-                                {
-                                    response->SetValue("Success", CefV8Value::CreateBool(false), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                    response->SetValue("Message", CefV8Value::CreateString("Zero objects bounds"), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                    callback->Success(response);
-                                }
-
-                                //Send message notifying Browser Process of which objects were bound
-                                //We do this after the objects have been created in the V8Context to gurantee
-                                //they are accessible.
-                                auto msg = CefProcessMessage::Create(kJavascriptObjectsBoundInJavascript);
-                                auto args = msg->GetArgumentList();
-
-                                auto names = CefListValue::Create();
-
-                                for (auto i = 0; i < javascriptObjects->Count; i++)
-                                {
-                                    auto name = javascriptObjects[i]->JavascriptName;
-                                    names->SetString(i, StringUtils::ToNative(name));
-                                }
-
-                                args->SetList(0, names);
-
-                                browser->SendProcessMessage(CefProcessId::PID_BROWSER, msg);
-                            }
-                        }
-                        finally
-                        {
-                            context->Exit();
-                        }
-                    }
-                }
-            }
-
-            handled = true;
-        }
-        else if (name == kJavascriptAsyncMethodCallResponse)
-        {
-            auto frameId = GetInt64(argList, 0);
-            auto callbackId = GetInt64(argList, 1);
-
-            JavascriptRootObjectWrapper^ rootObjectWrapper;
-            browserWrapper->JavascriptRootObjectWrappers->TryGetValue(frameId, rootObjectWrapper);
-
-            if (rootObjectWrapper != nullptr)
-            {
-                JavascriptAsyncMethodCallback^ callback;
-                if (rootObjectWrapper->TryGetAndRemoveMethodCallback(callbackId, callback))
-                {
-
-                    try 
-                    {
-                        auto frame = browser->GetFrame(frameId);
-                        if (frame.get())
-                        {
-                            auto context = frame->GetV8Context();
-
-                            if (context.get() && context->Enter())
-                            {
-                                try
-                                {
-                                    auto success = argList->GetBool(2);
-                                    if (success)
-                                    {
-                                        callback->Success(DeserializeV8Object(argList, 3));
-                                    }
-                                    else
-                                    {
-                                        callback->Fail(argList->GetString(3));
-                                    }
-                                }
-                                finally
-                                {
-                                    context->Exit();
-                                }
-                            }
-                            else
-                            {
-                                callback->Fail("Unable to Enter Context");
-                            }
-                        }
-                    }
-                    finally
-                    {
-                        //dispose
-                        delete callback;
-                    }
-                }
-            }
-            handled = true;
-        }
-
-        return handled;
-    };
-
-    void CefAppUnmanagedWrapper::OnRenderThreadCreated(CefRefPtr<CefListValue> extraInfo)
-    {
-        //Check to see if we have a list
-        if (extraInfo.get())
-        {
-            auto extensionList = extraInfo->GetList(0);
-            if (extensionList.get())
-            {
-                for (size_t i = 0; i < extensionList->GetSize(); i++)
-                {
-                    auto extension = extensionList->GetList(i);
-                    auto ext = gcnew CefExtension(StringUtils::ToClr(extension->GetString(0)), StringUtils::ToClr(extension->GetString(1)));
-
-                    _extensions->Add(ext);
-                }
-            }
-        }
-    }
-
-    void CefAppUnmanagedWrapper::OnWebKitInitialized()
-    {
-        //we need to do this because the builtin Promise object is not accesible
-        CefRegisterExtension("cefsharp/promisecreator", kPromiseCreatorScript, NULL);
-
-        for each(CefExtension^ extension in _extensions->AsReadOnly())
-        {
-            //only support extensions without handlers now
-            CefRegisterExtension(StringUtils::ToNative(extension->Name), StringUtils::ToNative(extension->JavascriptCode), NULL);
-        }
-    }
-
-    void CefAppUnmanagedWrapper::OnRegisterCustomSchemes(CefRawPtr<CefSchemeRegistrar> registrar)
-    {
-        for each (CefCustomScheme^ scheme in _schemes->AsReadOnly())
-        {
-            registrar->AddCustomScheme(StringUtils::ToNative(scheme->SchemeName), scheme->IsStandard, scheme->IsLocal, scheme->IsDisplayIsolated, scheme->IsSecure, scheme->IsCorsEnabled, scheme->IsCSPBypassing);
-        }
-    }
-}

+ 0 - 86
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.h

@@ -1,86 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_app.h"
-#include "include/cef_base.h"
-
-#include "CefBrowserWrapper.h"
-#include "RegisterBoundObjectRegistry.h"
-
-using namespace System::Collections::Generic;
-
-namespace CefSharp
-{
-    // This class is the native subprocess level CEF object wrapper.
-    private class CefAppUnmanagedWrapper : CefApp, CefRenderProcessHandler
-    {
-    private:
-        static const CefString kPromiseCreatorScript;
-
-        gcroot<Action<CefBrowserWrapper^>^> _onBrowserCreated;
-        gcroot<Action<CefBrowserWrapper^>^> _onBrowserDestroyed;
-        gcroot<ConcurrentDictionary<int, CefBrowserWrapper^>^> _browserWrappers;
-        gcroot<List<CefExtension^>^> _extensions;
-        gcroot<List<CefCustomScheme^>^> _schemes;
-        bool _focusedNodeChangedEnabled;
-        bool _legacyBindingEnabled;
-
-        // The serialized registered object data waiting to be used.
-        gcroot<Dictionary<String^, JavascriptObject^>^> _javascriptObjects;
-
-        gcroot<RegisterBoundObjectRegistry^> _registerBoundObjectRegistry;
-
-    public:
-        static const CefString kPromiseCreatorFunction;
-
-        CefAppUnmanagedWrapper(List<CefCustomScheme^>^ schemes, bool enableFocusedNodeChanged, Action<CefBrowserWrapper^>^ onBrowserCreated, Action<CefBrowserWrapper^>^ onBrowserDestoryed)
-        {
-            _onBrowserCreated = onBrowserCreated;
-            _onBrowserDestroyed = onBrowserDestoryed;
-            _browserWrappers = gcnew ConcurrentDictionary<int, CefBrowserWrapper^>();
-            _extensions = gcnew List<CefExtension^>();
-            _schemes = schemes;
-            _focusedNodeChangedEnabled = enableFocusedNodeChanged;
-            _javascriptObjects = gcnew Dictionary<String^, JavascriptObject^>();
-            _registerBoundObjectRegistry = gcnew RegisterBoundObjectRegistry();
-            _legacyBindingEnabled = false;
-        }
-
-        ~CefAppUnmanagedWrapper()
-        {
-            if (!Object::ReferenceEquals(_browserWrappers, nullptr))
-            {
-                for each(CefBrowserWrapper^ browser in Enumerable::OfType<CefBrowserWrapper^>(_browserWrappers))
-                {
-                    delete browser;
-                }
-
-                _browserWrappers = nullptr;
-            }
-            delete _onBrowserCreated;
-            delete _onBrowserDestroyed;
-            delete _extensions;
-            delete _schemes;
-        }
-
-        CefBrowserWrapper^ FindBrowserWrapper(int browserId);
-        JavascriptRootObjectWrapper^ GetJsRootObjectWrapper(int browserId, int64 frameId);
-
-        virtual DECL CefRefPtr<CefRenderProcessHandler> GetRenderProcessHandler() OVERRIDE;
-        virtual DECL void OnBrowserCreated(CefRefPtr<CefBrowser> browser) OVERRIDE;
-        virtual DECL void OnBrowserDestroyed(CefRefPtr<CefBrowser> browser) OVERRIDE;
-        virtual DECL void OnContextCreated(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefV8Context> context) OVERRIDE;
-        virtual DECL void OnContextReleased(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefV8Context> context) OVERRIDE;
-        virtual DECL bool OnProcessMessageReceived(CefRefPtr<CefBrowser> browser, CefProcessId sourceProcessId, CefRefPtr<CefProcessMessage> message) OVERRIDE;
-        virtual DECL void OnRenderThreadCreated(CefRefPtr<CefListValue> extraInfo) OVERRIDE;
-        virtual DECL void OnWebKitInitialized() OVERRIDE;
-        virtual DECL void OnRegisterCustomSchemes(CefRawPtr<CefSchemeRegistrar> registrar) OVERRIDE;
-        virtual DECL void OnFocusedNodeChanged(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefDOMNode> node) OVERRIDE;
-
-        IMPLEMENT_REFCOUNTING(CefAppUnmanagedWrapper);
-    };
-}

+ 0 - 71
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/CefBrowserWrapper.h

@@ -1,71 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_browser.h"
-#include "include/cef_v8.h"
-
-#include "TypeUtils.h"
-#include "Stdafx.h"
-#include "JavascriptRootObjectWrapper.h"
-
-using namespace CefSharp::Internals::Async;
-using namespace System::ServiceModel;
-using namespace System::Threading;
-using namespace System::Threading::Tasks;
-
-namespace CefSharp
-{
-    // "Master class" for wrapping everything that the Cef Subprocess needs 
-    // for ONE CefBrowser.
-    public ref class CefBrowserWrapper
-    {
-    private:
-        MCefRefPtr<CefBrowser> _cefBrowser;
-    
-    internal:
-        //Frame Identifier is used as Key
-        property ConcurrentDictionary<int64, JavascriptRootObjectWrapper^>^ JavascriptRootObjectWrappers;
-
-    public:
-        CefBrowserWrapper(CefRefPtr<CefBrowser> cefBrowser)
-        {
-            _cefBrowser = cefBrowser;
-            BrowserId = cefBrowser->GetIdentifier();
-            IsPopup = cefBrowser->IsPopup();
-
-            JavascriptRootObjectWrappers = gcnew ConcurrentDictionary<int64, JavascriptRootObjectWrapper^>();
-        }
-        
-        !CefBrowserWrapper()
-        {
-            _cefBrowser = nullptr;
-        }
-
-        ~CefBrowserWrapper()
-        {
-            this->!CefBrowserWrapper();
-
-            if (JavascriptRootObjectWrappers != nullptr)
-            {
-                for each(KeyValuePair<int64, JavascriptRootObjectWrapper^> entry in JavascriptRootObjectWrappers)
-                {
-                    delete entry.Value;
-                }
-
-                JavascriptRootObjectWrappers = nullptr;
-            }
-        }
-
-        property int BrowserId;
-        property bool IsPopup;
-
-        // This allows us to create the WCF proxies back to our parent process.
-        property ChannelFactory<IBrowserProcess^>^ ChannelFactory;
-
-        // The WCF proxy to the parent process.
-        property IBrowserProcess^ BrowserProcess;
-    };
-}

+ 0 - 44
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackRegistry.cpp

@@ -1,44 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JavascriptCallbackRegistry.h"
-
-using namespace System::Threading;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        JavascriptCallback^ JavascriptCallbackRegistry::Register(const CefRefPtr<CefV8Context>& context, const CefRefPtr<CefV8Value>& value)
-        {
-            Int64 newId = Interlocked::Increment(_lastId);
-            JavascriptCallbackWrapper^ wrapper = gcnew JavascriptCallbackWrapper(value, context);
-            _callbacks->TryAdd(newId, wrapper);
-
-            auto result = gcnew JavascriptCallback();
-            result->Id = newId;
-            result->BrowserId = _browserId;
-            result->FrameId = context->GetFrame()->GetIdentifier();
-            return result;
-        }
-
-        JavascriptCallbackWrapper^ JavascriptCallbackRegistry::FindWrapper(int64 id)
-        {
-            JavascriptCallbackWrapper^ callback;
-            _callbacks->TryGetValue(id, callback);
-            return callback;
-        }
-
-        void JavascriptCallbackRegistry::Deregister(Int64 id)
-        {
-            JavascriptCallbackWrapper^ callback;
-            if(_callbacks->TryRemove(id, callback))
-            {
-                delete callback;
-            }
-        }
-
-    }
-}

+ 0 - 53
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackRegistry.h

@@ -1,53 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "JavascriptCallbackWrapper.h"
-
-using namespace System::Collections::Concurrent;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class JavascriptCallbackRegistry
-        {
-        private:
-            //Only access through Interlocked::Increment - used to generate unique callback Id's
-            //Is static so ids are unique to this process, which is required until #1984 is implemented
-            //and callbacks are disposed of properly between contexts
-            static Int64 _lastId;
-            int _browserId;
-            ConcurrentDictionary<Int64, JavascriptCallbackWrapper^>^ _callbacks;
-
-        internal:
-            JavascriptCallbackWrapper^ FindWrapper(int64 id);
-
-        public:
-            JavascriptCallbackRegistry(int browserId) : _browserId(browserId)
-            {
-                _callbacks = gcnew ConcurrentDictionary<Int64, JavascriptCallbackWrapper^>();
-            }
-
-            ~JavascriptCallbackRegistry()
-            {
-                if (_callbacks != nullptr)
-                {
-                    for each (JavascriptCallbackWrapper^ callback in _callbacks->Values)
-                    {
-                        delete callback;
-                    }
-                    _callbacks->Clear();
-                    _callbacks = nullptr;
-                }
-            }
-
-            JavascriptCallback^ Register(const CefRefPtr<CefV8Context>& context, const CefRefPtr<CefV8Value>& value);
-
-            void Deregister(Int64 id);
-        };
-    }
-}
-

+ 0 - 48
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptCallbackWrapper.h

@@ -1,48 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include\cef_v8.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class JavascriptCallbackWrapper
-        {
-        private:
-            MCefRefPtr<CefV8Value> _value;
-            MCefRefPtr<CefV8Context> _context;
-
-        internal:
-            CefRefPtr<CefV8Value> GetValue()
-            {
-                return _value.get();
-            }
-
-            CefRefPtr<CefV8Context> GetContext()
-            {
-                return _context.get();
-            }
-
-        public:
-            JavascriptCallbackWrapper(CefRefPtr<CefV8Value> value, CefRefPtr<CefV8Context> context)
-                : _value(value), _context(context) 
-            {
-            }
-
-            !JavascriptCallbackWrapper()
-            {
-                _value = nullptr;
-                _context = nullptr;
-            }
-
-            ~JavascriptCallbackWrapper()
-            {
-                this->!JavascriptCallbackWrapper();
-            }
-        };
-    }
-}

+ 0 - 76
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodHandler.cpp

@@ -1,76 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include "TypeUtils.h"
-#include "JavascriptMethodHandler.h"
-
-namespace CefSharp
-{
-    bool JavascriptMethodHandler::Execute(const CefString& name, CefRefPtr<CefV8Value> object, const CefV8ValueList& arguments, CefRefPtr<CefV8Value>& retval, CefString& exception)
-    {
-        auto parameter = gcnew array<Object^>(arguments.size());
-
-        for (std::vector<CefRefPtr<CefV8Value>>::size_type i = 0; i != arguments.size(); i++)
-        {
-            parameter[i] = TypeUtils::ConvertFromCef(arguments[i], _callbackRegistry);
-        }
-
-        try
-        {
-            auto response = _method->Invoke(parameter);
-
-            retval = ConvertToCefObject(response->Result);
-            if (!response->Success)
-            {
-                exception = StringUtils::ToNative(response->Message);
-            }
-        }
-        catch (Exception^ ex)
-        {
-            exception = StringUtils::ToNative(ex->ToString());
-        }
-
-        //NOTE: Return true otherwise exception is ignored
-        return true;
-    }
-
-    CefRefPtr<CefV8Value> JavascriptMethodHandler::ConvertToCefObject(Object^ obj)
-    {
-        if (obj == nullptr)
-        {
-            return CefV8Value::CreateNull();
-        }
-
-        auto type = obj->GetType();
-
-        if (type == JavascriptObject::typeid)
-        {
-            JavascriptObject^ javascriptObject = (JavascriptObject^)obj;
-            CefRefPtr<CefV8Value> cefObject = CefV8Value::CreateObject(NULL, NULL);
-
-            for (int i = 0; i < javascriptObject->Properties->Count; i++)
-            {
-                auto prop = javascriptObject->Properties[i];
-
-                if (prop->IsComplexType)
-                {
-                    auto v8Value = ConvertToCefObject(prop->JsObject);
-
-                    cefObject->SetValue(StringUtils::ToNative(prop->JavascriptName), v8Value, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-                }
-                else
-                {
-                    auto v8Value = TypeUtils::ConvertToCef(prop->PropertyValue, nullptr);
-
-                    cefObject->SetValue(StringUtils::ToNative(prop->JavascriptName), v8Value, CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_NONE);
-                }
-            }
-
-            return cefObject;
-        }
-
-        return TypeUtils::ConvertToCef(obj, nullptr);
-    }
-}

+ 0 - 39
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodHandler.h

@@ -1,39 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-#include "JavascriptCallbackRegistry.h"
-
-namespace CefSharp
-{
-    private class JavascriptMethodHandler : public CefV8Handler
-    {
-    private:
-        gcroot<Func<array<Object^>^, BrowserProcessResponse^>^> _method;
-        gcroot<JavascriptCallbackRegistry^> _callbackRegistry;
-
-    public:
-        JavascriptMethodHandler(Func<array<Object^>^, BrowserProcessResponse^>^ method, JavascriptCallbackRegistry^ callbackRegistry)
-        {
-            _method = method;
-            _callbackRegistry = callbackRegistry;
-        }
-
-        ~JavascriptMethodHandler()
-        {
-            delete _method;
-            // The callback registry is a shared instance among all method handlers (async & sync).
-            // It's lifecycle is managed in the JavascriptRootObjectWrapper.
-            _callbackRegistry = nullptr;
-        }
-
-        virtual bool Execute(const CefString& name, CefRefPtr<CefV8Value> object, const CefV8ValueList& arguments, CefRefPtr<CefV8Value>& retval, CefString& exception) OVERRIDE;
-
-        CefRefPtr<CefV8Value> ConvertToCefObject(Object^ obj);
-
-        IMPLEMENT_REFCOUNTING(JavascriptMethodHandler)
-    };
-}

+ 0 - 25
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodWrapper.cpp

@@ -1,25 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-
-#include "JavascriptMethodWrapper.h"
-
-namespace CefSharp
-{
-    void JavascriptMethodWrapper::Bind(JavascriptMethod^ javascriptMethod, const CefRefPtr<CefV8Value>& v8Value)
-    {
-        _javascriptMethodName = javascriptMethod->JavascriptName;
-        auto methodName = StringUtils::ToNative(javascriptMethod->JavascriptName);
-        auto v8Function = CefV8Value::CreateFunction(methodName, _javascriptMethodHandler.get());
-
-        v8Value->SetValue(methodName, v8Function, V8_PROPERTY_ATTRIBUTE_NONE);
-    };
-
-    BrowserProcessResponse^ JavascriptMethodWrapper::Execute(array<Object^>^ parameters)
-    {
-        return _browserProcess->CallMethod(_ownerId, _javascriptMethodName, parameters);
-    }
-}

+ 0 - 46
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptMethodWrapper.h

@@ -1,46 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_v8.h"
-
-#include "JavascriptMethodHandler.h"
-
-using namespace System::Runtime::Serialization;
-
-namespace CefSharp
-{
-    private ref class JavascriptMethodWrapper
-    {
-    private:
-        MCefRefPtr<JavascriptMethodHandler> _javascriptMethodHandler;
-        int64 _ownerId;
-        String^ _javascriptMethodName;
-        IBrowserProcess^ _browserProcess;
-
-    public:
-        JavascriptMethodWrapper(int64 ownerId, IBrowserProcess^ browserProcess, JavascriptCallbackRegistry^ callbackRegistry)
-        {
-            _ownerId = ownerId;
-            _browserProcess = browserProcess;
-            _javascriptMethodHandler = new JavascriptMethodHandler(gcnew Func<array<Object^>^, BrowserProcessResponse^>(this, &JavascriptMethodWrapper::Execute), callbackRegistry);
-        }
-
-        !JavascriptMethodWrapper()
-        {
-            _javascriptMethodHandler = nullptr;
-        }
-
-        ~JavascriptMethodWrapper()
-        {
-            this->!JavascriptMethodWrapper();
-
-            _browserProcess = nullptr;
-        }
-
-        void Bind(JavascriptMethod^ javascriptMethod, const CefRefPtr<CefV8Value>& v8Value);
-        BrowserProcessResponse^ Execute(array<Object^>^ parameters);
-    };
-}

+ 0 - 53
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptObjectWrapper.cpp

@@ -1,53 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-
-#include "JavascriptObjectWrapper.h"
-
-namespace CefSharp
-{
-    void JavascriptObjectWrapper::Bind(JavascriptObject^ object, const CefRefPtr<CefV8Value>& v8Value, JavascriptCallbackRegistry^ callbackRegistry)
-    {
-        _objectId = object->Id;
-
-        //Create property handler for get and set of Properties of this object
-        _jsPropertyHandler = new JavascriptPropertyHandler(
-            gcnew Func<String^, BrowserProcessResponse^>(this, &JavascriptObjectWrapper::GetProperty),
-            gcnew Func<String^, Object^, BrowserProcessResponse^>(this, &JavascriptObjectWrapper::SetProperty)
-            );
-
-        //V8Value that represents this javascript object - only one per complex type
-        auto javascriptObject = CefV8Value::CreateObject(_jsPropertyHandler.get(), NULL);
-        auto objectName = StringUtils::ToNative(object->JavascriptName);
-        v8Value->SetValue(objectName, javascriptObject, V8_PROPERTY_ATTRIBUTE_NONE);
-
-        for each (JavascriptMethod^ method in Enumerable::OfType<JavascriptMethod^>(object->Methods))
-        {
-            auto wrappedMethod = gcnew JavascriptMethodWrapper(object->Id, _browserProcess, callbackRegistry);
-            wrappedMethod->Bind(method, javascriptObject);
-
-            _wrappedMethods->Add(wrappedMethod);
-        }
-
-        for each (JavascriptProperty^ prop in Enumerable::OfType<JavascriptProperty^>(object->Properties))
-        {
-            auto wrappedproperty = gcnew JavascriptPropertyWrapper(object->Id, _browserProcess);
-            wrappedproperty->Bind(prop, javascriptObject, callbackRegistry);
-
-            _wrappedProperties->Add(wrappedproperty);
-        }
-    }
-
-    BrowserProcessResponse^ JavascriptObjectWrapper::GetProperty(String^ memberName)
-    {
-        return _browserProcess->GetProperty(_objectId, memberName);
-    };
-
-    BrowserProcessResponse^ JavascriptObjectWrapper::SetProperty(String^ memberName, Object^ value)
-    {
-        return _browserProcess->SetProperty(_objectId, memberName, value);
-    };
-}

+ 0 - 61
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptObjectWrapper.h

@@ -1,61 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_v8.h"
-
-#include "JavascriptMethodWrapper.h"
-#include "JavascriptPropertyWrapper.h"
-#include "JavascriptPropertyHandler.h"
-
-using namespace System::Runtime::Serialization;
-using namespace System::Linq;
-using namespace System::Collections::Generic;
-
-namespace CefSharp
-{
-    private ref class JavascriptObjectWrapper
-    {
-    private:
-        List<JavascriptMethodWrapper^>^ _wrappedMethods;
-        List<JavascriptPropertyWrapper^>^ _wrappedProperties;
-        IBrowserProcess^ _browserProcess;
-        MCefRefPtr<JavascriptPropertyHandler> _jsPropertyHandler;
-        int64 _objectId;
-
-    public:
-        JavascriptObjectWrapper(IBrowserProcess^ browserProcess)
-        {
-            _browserProcess = browserProcess;
-
-            _wrappedMethods = gcnew List<JavascriptMethodWrapper^>();
-            _wrappedProperties = gcnew List<JavascriptPropertyWrapper^>();
-        }
-
-        !JavascriptObjectWrapper()
-        {
-            _jsPropertyHandler = nullptr;
-        }
-
-        ~JavascriptObjectWrapper()
-        {
-            this->!JavascriptObjectWrapper();
-
-            for each (JavascriptMethodWrapper^ var in _wrappedMethods)
-            {
-                delete var;
-            }
-            for each (JavascriptPropertyWrapper^ var in _wrappedProperties)
-            {
-                delete var;
-            }
-        }
-
-        void Bind(JavascriptObject^ object, const CefRefPtr<CefV8Value>& v8Value, JavascriptCallbackRegistry^ callbackRegistry);
-        BrowserProcessResponse^ GetProperty(String^ memberName);
-        BrowserProcessResponse^ SetProperty(String^ memberName, Object^ value);
-    };
-}

+ 0 - 65
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyHandler.h

@@ -1,65 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include/cef_v8.h"
-#include "TypeUtils.h"
-
-namespace CefSharp
-{
-    private class JavascriptPropertyHandler : public CefV8Accessor
-    {
-        gcroot<Func<String^, BrowserProcessResponse^>^> _getter;
-        gcroot<Func<String^, Object^, BrowserProcessResponse^>^> _setter;
-
-    public:
-        JavascriptPropertyHandler(Func<String^, BrowserProcessResponse^>^ getter, Func<String^, Object^, BrowserProcessResponse^>^ setter)
-        {
-            _getter = getter;
-            _setter = setter;
-        }
-
-        ~JavascriptPropertyHandler()
-        {
-            delete _getter;
-            delete _setter;
-        }
-
-
-        virtual bool Get(const CefString& name, const CefRefPtr<CefV8Value> object, CefRefPtr<CefV8Value>& retval,
-            CefString& exception) override
-        {
-            //System::Diagnostics::Debugger::Break();
-            auto propertyName = StringUtils::ToClr(name);
-            auto response = _getter->Invoke(propertyName);
-            retval = TypeUtils::ConvertToCef(response->Result, nullptr);
-            if(!response->Success)
-            {
-                exception = StringUtils::ToNative(response->Message);
-            }
-            //NOTE: Return true otherwise exception is ignored
-            return true;
-        }
-
-        virtual bool Set(const CefString& name, const CefRefPtr<CefV8Value> object, const CefRefPtr<CefV8Value> value,
-            CefString& exception) override
-        {
-            //System::Diagnostics::Debugger::Break();
-            auto propertyName = StringUtils::ToClr(name);
-            auto managedValue = TypeUtils::ConvertFromCef(value, nullptr);
-            auto response = _setter->Invoke(propertyName, managedValue);
-            if(!response->Success)
-            {
-                exception = StringUtils::ToNative(response->Message);
-            }
-            //NOTE: Return true otherwise exception is ignored
-            return true;
-        }
-
-        IMPLEMENT_REFCOUNTING(JavascriptPropertyHandler)
-    };
-}

+ 0 - 34
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyWrapper.cpp

@@ -1,34 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-
-#include "JavascriptPropertyWrapper.h"
-#include "JavascriptObjectWrapper.h"
-
-using namespace System;
-
-namespace CefSharp
-{
-    void JavascriptPropertyWrapper::Bind(JavascriptProperty^ javascriptProperty, const CefRefPtr<CefV8Value>& v8Value, JavascriptCallbackRegistry^ callbackRegistry)
-    {
-        auto propertyName = StringUtils::ToNative(javascriptProperty->JavascriptName);
-        auto clrPropertyName = javascriptProperty->JavascriptName;
-
-        if (javascriptProperty->IsComplexType)
-        {
-            auto javascriptObjectWrapper = gcnew JavascriptObjectWrapper(_browserProcess);
-            javascriptObjectWrapper->Bind(javascriptProperty->JsObject, v8Value, callbackRegistry);
-
-            _javascriptObjectWrapper = javascriptObjectWrapper;
-        }
-        else
-        {
-            auto propertyAttribute = javascriptProperty->IsReadOnly ? V8_PROPERTY_ATTRIBUTE_READONLY : V8_PROPERTY_ATTRIBUTE_NONE;
-
-            v8Value->SetValue(propertyName, V8_ACCESS_CONTROL_DEFAULT, propertyAttribute);
-        }
-    };
-}

+ 0 - 40
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptPropertyWrapper.h

@@ -1,40 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_v8.h"
-#include "JavascriptCallbackRegistry.h"
-
-namespace CefSharp
-{
-    private ref class JavascriptPropertyWrapper
-    {
-    private:
-        int64 _ownerId;
-        IBrowserProcess^ _browserProcess;
-        //TODO: Strongly type this variable - currently trying to include JavascriptObjectWrapper.h creates a circular reference, so won't compile
-        Object^ _javascriptObjectWrapper;
-
-    public:
-        JavascriptPropertyWrapper(int64 ownerId, IBrowserProcess^ browserProcess)
-        {
-            _ownerId = ownerId;
-            _browserProcess = browserProcess;
-            _javascriptObjectWrapper = nullptr;
-        }
-
-        ~JavascriptPropertyWrapper()
-        {
-            if (_javascriptObjectWrapper != nullptr)
-            {
-                delete _javascriptObjectWrapper;
-                _javascriptObjectWrapper = nullptr;
-            }
-        }
-
-        void Bind(JavascriptProperty^ javascriptProperty, const CefRefPtr<CefV8Value>& v8Value, JavascriptCallbackRegistry^ callbackRegistry);
-    };
-}

+ 0 - 63
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptRootObjectWrapper.cpp

@@ -1,63 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "JavascriptRootObjectWrapper.h"
-#include "CefAppUnmanagedWrapper.h"
-
-using namespace System::Threading;
-
-namespace CefSharp
-{
-    void JavascriptRootObjectWrapper::Bind(ICollection<JavascriptObject^>^ objects, const CefRefPtr<CefV8Value>& v8Value)
-    {
-        if (objects->Count > 0)
-        {
-            auto saveMethod = gcnew Func<JavascriptAsyncMethodCallback^, int64>(this, &JavascriptRootObjectWrapper::SaveMethodCallback);
-            auto promiseCreator = v8Value->GetValue(CefAppUnmanagedWrapper::kPromiseCreatorFunction);
-
-            for each (JavascriptObject^ obj in Enumerable::OfType<JavascriptObject^>(objects))
-            {
-                if (obj->IsAsync)
-                {
-                    auto wrapperObject = gcnew JavascriptAsyncObjectWrapper(_callbackRegistry, saveMethod);
-                    wrapperObject->Bind(obj, v8Value, promiseCreator);
-
-                    _wrappedAsyncObjects->Add(wrapperObject);
-                }
-                else
-                {
-                    auto wrapperObject = gcnew JavascriptObjectWrapper(_browserProcess);
-                    wrapperObject->Bind(obj, v8Value, _callbackRegistry);
-
-                    _wrappedObjects->Add(wrapperObject);
-                }
-            }
-        }
-    }
-
-    JavascriptCallbackRegistry^ JavascriptRootObjectWrapper::CallbackRegistry::get()
-    {
-        return _callbackRegistry;
-    }
-
-    int64 JavascriptRootObjectWrapper::SaveMethodCallback(JavascriptAsyncMethodCallback^ callback)
-    {
-        auto callbackId = Interlocked::Increment(_lastCallback);
-        _methodCallbacks->Add(callbackId, callback);
-        return callbackId;
-    }
-
-    bool JavascriptRootObjectWrapper::TryGetAndRemoveMethodCallback(int64 id, JavascriptAsyncMethodCallback^% callback)
-    {
-        bool result = false;
-        if (result = _methodCallbacks->TryGetValue(id, callback))
-        {
-            _methodCallbacks->Remove(id);
-        }
-        return result;
-    }
-}

+ 0 - 86
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/JavascriptRootObjectWrapper.h

@@ -1,86 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-#include "JavascriptCallbackRegistry.h"
-#include "JavascriptObjectWrapper.h"
-#include "Async/JavascriptAsyncObjectWrapper.h"
-
-using namespace System::Runtime::Serialization;
-using namespace System::Linq;
-using namespace System::Collections::Generic;
-
-using namespace CefSharp::Internals::Async;
-
-namespace CefSharp
-{
-    // This wraps the transmitted registered objects
-    // by binding the meta-data to V8 JavaScript objects
-    // and installing callbacks for changes to those
-    // objects.
-    private ref class JavascriptRootObjectWrapper
-    {
-    private:
-        initonly List<JavascriptObjectWrapper^>^ _wrappedObjects;
-        initonly List<JavascriptAsyncObjectWrapper^>^ _wrappedAsyncObjects;
-        initonly Dictionary<int64, JavascriptAsyncMethodCallback^>^ _methodCallbacks;
-        int64 _lastCallback;
-        IBrowserProcess^ _browserProcess;
-        // The entire set of possible JavaScript functions to
-        // call directly into.
-        JavascriptCallbackRegistry^ _callbackRegistry;
-
-        int64 SaveMethodCallback(JavascriptAsyncMethodCallback^ callback);
-
-    internal:
-        property JavascriptCallbackRegistry^ CallbackRegistry
-        {
-            CefSharp::Internals::JavascriptCallbackRegistry^ get();
-        }
-
-    public:
-        JavascriptRootObjectWrapper(int browserId, IBrowserProcess^ browserProcess)
-        {
-            _browserProcess = browserProcess;
-            _wrappedObjects = gcnew List<JavascriptObjectWrapper^>();
-            _wrappedAsyncObjects = gcnew List<JavascriptAsyncObjectWrapper^>();
-            _callbackRegistry = gcnew JavascriptCallbackRegistry(browserId);
-            _methodCallbacks = gcnew Dictionary<int64, JavascriptAsyncMethodCallback^>();
-        }
-
-        ~JavascriptRootObjectWrapper()
-        {
-            if (_callbackRegistry != nullptr)
-            {
-                delete _callbackRegistry;
-                _callbackRegistry = nullptr;
-            }
-
-            for each (JavascriptObjectWrapper^ var in _wrappedObjects)
-            {
-                delete var;
-            }
-            _wrappedObjects->Clear();
-
-            for each (JavascriptAsyncObjectWrapper^ var in _wrappedAsyncObjects)
-            {
-                delete var;
-            }
-            _wrappedAsyncObjects->Clear();
-
-            for each(JavascriptAsyncMethodCallback^ var in _methodCallbacks->Values)
-            {
-                delete var;
-            }
-            _methodCallbacks->Clear();
-        }
-
-        bool TryGetAndRemoveMethodCallback(int64 id, JavascriptAsyncMethodCallback^% callback);
-
-        void Bind(ICollection<JavascriptObject^>^ objects, const CefRefPtr<CefV8Value>& v8Value);
-    };
-}
-

+ 0 - 270
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/RegisterBoundObjectHandler.h

@@ -1,270 +0,0 @@
-
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-#include "RegisterBoundObjectRegistry.h"
-#include "..\CefSharp.Core\Internals\Messaging\Messages.h"
-#include "..\CefSharp.Core\Internals\Serialization\Primitives.h"
-
-using namespace System;
-using namespace CefSharp::Internals::Messaging;
-using namespace CefSharp::Internals::Serialization;
-
-namespace CefSharp
-{
-    private class RegisterBoundObjectHandler : public CefV8Handler
-    {
-    private:
-        gcroot<RegisterBoundObjectRegistry^> _callbackRegistry;
-        gcroot<Dictionary<String^, JavascriptObject^>^> _javascriptObjects;
-        gcroot<CefBrowserWrapper^> _browserWrapper;
-
-    public:
-        RegisterBoundObjectHandler(RegisterBoundObjectRegistry^ callbackRegistery, Dictionary<String^, JavascriptObject^>^ javascriptObjects, CefBrowserWrapper^ browserWrapper)
-        {
-            _callbackRegistry = callbackRegistery;
-            _javascriptObjects = javascriptObjects;
-            _browserWrapper = browserWrapper;
-        }
-
-        bool Execute(const CefString& name, CefRefPtr<CefV8Value> object, const CefV8ValueList& arguments, CefRefPtr<CefV8Value>& retval, CefString& exception) OVERRIDE
-        {
-            auto context = CefV8Context::GetCurrentContext();
-            if (context.get())
-            {
-                auto browser = context->GetBrowser();
-
-                if (context.get() && context->Enter())
-                {
-                    try
-                    {
-                        auto global = context->GetGlobal();
-
-                        if (name == "IsObjectCached")
-                        {
-                            if (arguments.size() == 0 || arguments.size() > 1)
-                            {
-                                //TODO: Improve error message
-                                exception = "Must specify the name of a single bound object to check the cache for";
-
-                                return true;
-                            }
-
-                            auto objectName = arguments[0]->GetStringValue();
-                            auto managedObjectName = StringUtils::ToClr(objectName);
-
-                            //Check to see if the object name is within the cache
-                            retval = CefV8Value::CreateBool(_javascriptObjects->ContainsKey(managedObjectName));
-                        }
-                        else if (name == "RemoveObjectFromCache")
-                        {
-                            if (arguments.size() == 0 || arguments.size() > 1)
-                            {
-                                //TODO: Improve error message
-                                exception = "Must specify the name of a single bound object to remove from cache";
-
-                                return true;
-                            }
-
-                            auto objectName = arguments[0]->GetStringValue();
-                            auto managedObjectName = StringUtils::ToClr(objectName);
-
-                            if (_javascriptObjects->ContainsKey(managedObjectName))
-                            {
-                                //Remove object from cache
-                                retval = CefV8Value::CreateBool(_javascriptObjects->Remove(managedObjectName));
-                            }
-                            else
-                            {
-                                retval = CefV8Value::CreateBool(false);
-                            }							
-                        }
-                        //TODO: Better name for this function
-                        //TODO: Make this a const
-                        else if (name == "DeleteBoundObject")
-                        {
-                            if (arguments.size() == 0 || arguments.size() > 1)
-                            {
-                                //TODO: Improve error message
-                                exception = "Must specify the name of a bound object to unbind, one object at a time.";
-
-                                return true;
-                            }
-
-                            auto objectName = arguments[0]->GetStringValue();
-
-                            auto global = context->GetGlobal();
-
-                            auto success = global->DeleteValue(objectName);
-
-                            retval = CefV8Value::CreateBool(success);
-                        }
-                        else if (name == "BindObjectAsync")
-                        {
-                            auto promiseCreator = global->GetValue(CefAppUnmanagedWrapper::kPromiseCreatorFunction);
-
-                            //this will create a promise and give us the reject/resolve functions {p: Promise, res: resolve(), rej: reject()}
-                            auto promiseData = promiseCreator->ExecuteFunctionWithContext(context, nullptr, CefV8ValueList());
-
-                            //return the promose
-                            retval = promiseData->GetValue("p");
-
-                            //References to the promise resolve and reject methods
-                            auto resolve = promiseData->GetValue("res");
-                            auto reject = promiseData->GetValue("rej");
-
-                            auto callback = gcnew JavascriptAsyncMethodCallback(context, resolve, reject);
-
-                            auto request = CefProcessMessage::Create(kJavascriptRootObjectRequest);
-                            auto argList = request->GetArgumentList();
-                            auto params = CefListValue::Create();
-
-                            auto boundObjectRequired = false;
-                            auto cachedObjects = gcnew List<JavascriptObject^>();
-
-                            if (arguments.size() > 0)
-                            {
-                                for (auto i = 0; i < arguments.size(); i++)
-                                {
-                                    auto objectName = arguments[i]->GetStringValue();
-
-                                    //Check if the object has already been bound
-                                    if (!global->HasValue(objectName))
-                                    {
-                                        //If no matching object found then we'll add the object name to the list
-                                        boundObjectRequired = true;
-                                        params->SetString(i, objectName);
-
-                                        auto managedObjectName = StringUtils::ToClr(objectName);
-
-                                        JavascriptObject^ obj;
-                                        if (_javascriptObjects->TryGetValue(managedObjectName, obj))
-                                        {
-                                            cachedObjects->Add(obj);
-                                        }
-                                    }								
-                                }
-                            }
-                            else
-                            {
-                                //No objects names were specified so we default to makeing the request
-                                boundObjectRequired = true;
-                            }
-
-                            if (boundObjectRequired)
-                            {
-                                //If the number of cached objects matches the number of args
-                                //then we'll immediately bind the cached objects
-                                if (cachedObjects->Count == (int)arguments.size())
-                                {
-                                    auto frame = context->GetFrame();
-                                    if (frame.get())
-                                    {
-                                        if (Object::ReferenceEquals(_browserWrapper, nullptr))
-                                        {
-                                            callback->Fail("Browser wrapper is null and unable to bind objects");
-                                        }
-                                        else
-                                        {
-                                            //TODO: JSB This code is almost exactly duplicated in CefAppUnmangedWrapper
-                                            //Need to extract into a common method
-                                            auto rootObjectWrappers = _browserWrapper->JavascriptRootObjectWrappers;
-
-                                            JavascriptRootObjectWrapper^ rootObject;
-                                            if (!rootObjectWrappers->TryGetValue(frame->GetIdentifier(), rootObject))
-                                            {
-                                                rootObject = gcnew JavascriptRootObjectWrapper(browser->GetIdentifier(), _browserWrapper->BrowserProcess);
-                                                rootObjectWrappers->TryAdd(frame->GetIdentifier(), rootObject);
-                                            }
-                                        
-                                            rootObject->Bind(cachedObjects, context->GetGlobal());
-
-                                            //Response object has no Accessor or Interceptor
-                                            auto response = CefV8Value::CreateObject(NULL, NULL);
-
-                                            response->SetValue("Count", CefV8Value::CreateInt(cachedObjects->Count), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                            response->SetValue("Success", CefV8Value::CreateBool(true), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                            response->SetValue("Message", CefV8Value::CreateString("OK"), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                            callback->Success(response);
-
-                                            //Send message notifying Browser Process of which objects were bound
-                                            //We do this after the objects have been created in the V8Context to gurantee
-                                            //they are accessible.
-                                            auto msg = CefProcessMessage::Create(kJavascriptObjectsBoundInJavascript);
-                                            auto args = msg->GetArgumentList();
-
-                                            auto names = CefListValue::Create();
-
-                                            for (auto i = 0; i < cachedObjects->Count; i++)
-                                            {
-                                                auto name = cachedObjects[i]->JavascriptName;
-                                                names->SetString(i, StringUtils::ToNative(name));
-                                            }
-
-                                            args->SetList(0, names);
-
-                                            browser->SendProcessMessage(CefProcessId::PID_BROWSER, msg);
-                                        }
-                                    }
-                                    
-                                }
-                                else
-                                {
-                                    //Obtain a callbackId then send off the Request
-                                    auto callbackId = _callbackRegistry->SaveMethodCallback(callback);
-
-                                    argList->SetInt(0, browser->GetIdentifier());
-                                    SetInt64(argList, 1, context->GetFrame()->GetIdentifier());
-                                    SetInt64(argList, 2, callbackId);
-                                    argList->SetList(3, params);
-
-                                    browser->SendProcessMessage(CefProcessId::PID_BROWSER, request);
-                                }
-                            }
-                            else
-                            {
-                                //Response object has no Accessor or Interceptor
-                                auto response = CefV8Value::CreateObject(NULL, NULL);
-
-
-                                //Objects already bound so we immediately resolve the Promise
-                                response->SetValue("Success", CefV8Value::CreateBool(false), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                response->SetValue("Count", CefV8Value::CreateInt(0), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-                                response->SetValue("Message", CefV8Value::CreateString("Object(s) already bound"), CefV8Value::PropertyAttribute::V8_PROPERTY_ATTRIBUTE_READONLY);
-
-                                CefV8ValueList returnArgs;
-                                returnArgs.push_back(response);
-                                //If all the requested objects are bound then we immediately execute resolve
-                                //with Success true and Count of 0
-                                resolve->ExecuteFunctionWithContext(context, nullptr, returnArgs);
-                            }
-                        }
-                    }
-                    finally
-                    {
-                        context->Exit();
-                    }
-                }
-                else
-                {
-                    exception = "Unable to Enter Context";
-                }
-            }
-            else
-            {
-                exception = "Unable to get current context";
-            }
-            
-
-            return true;
-        }
-
-
-        IMPLEMENT_REFCOUNTING(RegisterBoundObjectHandler)
-    };
-}
-

+ 0 - 61
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/RegisterBoundObjectRegistry.h

@@ -1,61 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-
-#include "Async/JavascriptAsyncMethodCallback.h"
-
-using namespace System::Runtime::Serialization;
-using namespace System::Linq;
-using namespace System::Threading;
-using namespace System::Collections::Generic;
-using namespace CefSharp::Internals::Async;
-
-namespace CefSharp
-{
-    //TODO: JSB Fix naming of this class, it's pretty horrible currently
-    private ref class RegisterBoundObjectRegistry
-    {
-    private:
-        initonly Dictionary<int64, JavascriptAsyncMethodCallback^>^ _methodCallbacks;
-        int64 _lastCallback;
-
-    public:
-        RegisterBoundObjectRegistry()
-        {
-            _methodCallbacks = gcnew Dictionary<int64, JavascriptAsyncMethodCallback^>();
-        }
-
-        ~RegisterBoundObjectRegistry()
-        {
-            for each(JavascriptAsyncMethodCallback^ var in _methodCallbacks->Values)
-            {
-                delete var;
-            }
-            _methodCallbacks->Clear();
-        }
-
-        int64 SaveMethodCallback(JavascriptAsyncMethodCallback^ callback)
-        {
-            auto callbackId = Interlocked::Increment(_lastCallback);
-            _methodCallbacks->Add(callbackId, callback);
-            return callbackId;
-        }
-
-        bool TryGetAndRemoveMethodCallback(int64 id, JavascriptAsyncMethodCallback^% callback)
-        {
-            bool result = false;
-            if (result = _methodCallbacks->TryGetValue(id, callback))
-            {
-                _methodCallbacks->Remove(id);
-            }
-            return result;
-        }
-    };
-}
-
-
-

+ 0 - 80
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/JsObjectsSerialization.cpp

@@ -1,80 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "stdafx.h"
-#include "JsObjectsSerialization.h"
-#include "../CefSharp.Core/Internals/Serialization/Primitives.h"
-#include "../CefSharp.Core/Internals/Serialization/ObjectsSerialization.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Serialization
-        {
-            JavascriptObject^ DeserializeJsObject(const CefRefPtr<CefListValue>& rootList, int index)
-            {
-                if (rootList->GetType(index) == VTYPE_INVALID ||
-                    rootList->GetType(index) == VTYPE_NULL)
-                {
-                    return nullptr;
-                }
-
-                auto list = rootList->GetList(index);
-                auto jsObject = gcnew JavascriptObject();
-                jsObject->Id = GetInt64(list, 0);
-                jsObject->Name = StringUtils::ToClr(list->GetString(1));
-                jsObject->JavascriptName = StringUtils::ToClr(list->GetString(2));
-                jsObject->IsAsync = list->GetBool(3);
-
-                auto methodList = list->GetList(4);
-                auto methodCount = methodList->GetInt(0);
-                auto k = 1;
-                for (auto j = 0; j < methodCount; j++)
-                {
-                    auto jsMethod = gcnew JavascriptMethod();
-
-                    jsMethod->Id = GetInt64(methodList, k++);
-                    jsMethod->ManagedName = StringUtils::ToClr(methodList->GetString(k++));
-                    jsMethod->JavascriptName = StringUtils::ToClr(methodList->GetString(k++));
-                    jsMethod->ParameterCount = methodList->GetInt(k++);
-
-                    jsObject->Methods->Add(jsMethod);
-                }
-
-                auto propertyList = list->GetList(5);
-                auto propertyCount = propertyList->GetInt(0);
-                k = 1;
-                for (auto j = 0; j < propertyCount; j++)
-                {
-                    auto jsProperty = gcnew JavascriptProperty();
-
-                    jsProperty->Id = GetInt64(propertyList, k++);
-                    jsProperty->ManagedName = StringUtils::ToClr(propertyList->GetString(k++));
-                    jsProperty->JavascriptName = StringUtils::ToClr(propertyList->GetString(k++));
-                    jsProperty->IsComplexType = propertyList->GetBool(k++);
-                    jsProperty->IsReadOnly = propertyList->GetBool(k++);
-
-                    jsProperty->JsObject = DeserializeJsObject(propertyList, k++);
-                    jsProperty->PropertyValue = DeserializeObject(propertyList, k++, nullptr);
-
-                    jsObject->Properties->Add(jsProperty);
-                }
-                return jsObject;
-            }
-
-            List<JavascriptObject^>^ DeserializeJsObjects(const CefRefPtr<CefListValue>& list, int index)
-            {
-                auto result = gcnew List<JavascriptObject^>();
-                auto subList = list->GetList(index);
-                for (auto i = 0; i < subList->GetSize(); i++)
-                {
-                    result->Add(DeserializeJsObject(subList, i));
-                }
-
-                return result;
-            }
-        }
-    }
-}

+ 0 - 19
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/JsObjectsSerialization.h

@@ -1,19 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_values.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Serialization
-        {
-            JavascriptObject^ DeserializeJsObject(const CefRefPtr<CefListValue>& list, int index);
-            List<JavascriptObject^>^ DeserializeJsObjects(const CefRefPtr<CefListValue>& list, int index);
-        }
-    }
-}

+ 0 - 190
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/V8Serialization.cpp

@@ -1,190 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include "V8Serialization.h"
-#include "JavascriptCallbackRegistry.h"
-#include "../CefSharp.Core/Internals/Serialization/Primitives.h"
-
-#include <deque>
-
-using namespace std;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        namespace Serialization
-        {
-            typedef deque<CefRefPtr<CefV8Value>> value_deque;
-
-            template<typename TList, typename TIndex>
-            void SerializeV8Object(const CefRefPtr<CefV8Value> &obj, const CefRefPtr<TList>& list, const TIndex& index, JavascriptCallbackRegistry^ callbackRegistry, value_deque &seen)
-            {
-                for (value_deque::const_iterator it = seen.begin(); it != seen.end(); ++it)
-                {
-                    if (obj->IsSame(*it))
-                    {
-                        throw exception("Cycle found");
-                    }
-                }
-                seen.push_back(obj);
-
-                if (obj->IsNull() || obj->IsUndefined())
-                {
-                    list->SetNull(index);
-                }
-                else if (obj->IsBool())
-                {
-                    list->SetBool(index, obj->GetBoolValue());
-                }
-                else if (obj->IsInt())
-                {
-                    list->SetInt(index, obj->GetIntValue());
-                }
-                else if (obj->IsDouble())
-                {
-                    list->SetDouble(index, obj->GetDoubleValue());
-                }
-                else if (obj->IsString())
-                {
-                    list->SetString(index, obj->GetStringValue());
-                }
-                else if (obj->IsDate())
-                {
-                    SetCefTime(list, index, obj->GetDateValue());
-                }
-                else if (obj->IsArray())
-                {
-                    int arrLength = obj->GetArrayLength();
-                    std::vector<CefString> keys;
-                    if (arrLength > 0 && obj->GetKeys(keys))
-                    {
-                        auto array = CefListValue::Create();
-                        for (int i = 0; i < arrLength; i++)
-                        {
-                            SerializeV8Object(obj->GetValue(keys[i]), array, i, callbackRegistry, seen);
-                        }
-
-                        list->SetList(index, array);
-                    }
-                    else
-                    {
-                        list->SetNull(index);
-                    }
-                }
-                else if (obj->IsFunction())
-                {
-                    auto context = CefV8Context::GetCurrentContext();
-                    auto jsCallback = callbackRegistry->Register(context, obj);
-                    SetJsCallback(list, index, jsCallback);
-                }
-                else if (obj->IsObject())
-                {
-                    std::vector<CefString> keys;
-                    if (obj->GetKeys(keys) && keys.size() > 0)
-                    {
-                        auto result = CefDictionaryValue::Create();
-                        for (int i = 0; i < keys.size(); i++)
-                        {
-                            auto p_keyStr = StringUtils::ToClr(keys[i].ToString());
-                            if ((obj->HasValue(keys[i])) && (!p_keyStr->StartsWith("__")))
-                            {
-                                SerializeV8Object(obj->GetValue(keys[i]), result, keys[i], callbackRegistry, seen);
-                            }
-                        }
-                        list->SetDictionary(index, result);
-                    }
-                }
-                else
-                {
-                    list->SetNull(index);
-                }
-                seen.pop_back();
-            }
-
-            template<typename TList, typename TIndex>
-            void SerializeV8Object(const CefRefPtr<CefV8Value> &obj, const CefRefPtr<TList>& list, const TIndex& index, JavascriptCallbackRegistry^ callbackRegistry)
-            {
-                try
-                {
-                    value_deque seen;
-                    SerializeV8Object(obj, list, index, callbackRegistry, seen);
-                }
-                catch (const exception&)
-                {
-                    list->SetNull(index);
-                }
-            }
-
-            template<typename TList, typename TIndex>
-            CefRefPtr<CefV8Value> DeserializeV8Object(const CefRefPtr<TList>& list, const TIndex& index)
-            {
-                auto type = list->GetType(index);
-
-                if (type == VTYPE_BOOL)
-                {
-                    return CefV8Value::CreateBool(list->GetBool(index));
-                }
-
-                if (type == VTYPE_INT)
-                {
-                    return CefV8Value::CreateInt(list->GetInt(index));
-                }
-
-                if (type == VTYPE_DOUBLE)
-                {
-                    return CefV8Value::CreateDouble(list->GetDouble(index));
-                }
-
-                if (type == VTYPE_STRING)
-                {
-                    return CefV8Value::CreateString(list->GetString(index));
-                }
-
-                if (IsCefTime(list, index))
-                {
-                    return CefV8Value::CreateDate(GetCefTime(list, index));
-                }
-
-                if (type == VTYPE_LIST)
-                {
-                    auto subList = list->GetList(index);
-                    auto size = subList->GetSize();
-                    auto result = CefV8Value::CreateArray(size);
-                    for (auto i = 0; i < size; i++)
-                    {
-                        result->SetValue(i, DeserializeV8Object(subList, i));
-                    }
-
-                    return result;
-                }
-
-                if (type == VTYPE_DICTIONARY)
-                {
-                    auto subDict = list->GetDictionary(index);
-                    auto size = subDict->GetSize();
-                    std::vector<CefString> keys;
-                    subDict->GetKeys(keys);
-                    auto result = CefV8Value::CreateObject(nullptr, nullptr);
-                    for (auto i = 0; i < size; i++)
-                    {
-                        result->SetValue(keys[i], DeserializeV8Object(subDict, keys[i]), V8_PROPERTY_ATTRIBUTE_NONE);
-                    }
-
-                    return result;
-                }
-
-                return CefV8Value::CreateNull();
-            }
-
-            template void SerializeV8Object(const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefListValue>& list, const int& index, JavascriptCallbackRegistry^ callbackRegistry);
-            template void SerializeV8Object(const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefDictionaryValue>& list, const CefString& index, JavascriptCallbackRegistry^ callbackRegistry);
-            template void SerializeV8Object(const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefListValue>& list, const int& index, JavascriptCallbackRegistry^ callbackRegistry, value_deque &visited);
-            template void SerializeV8Object(const CefRefPtr<CefV8Value> &value, const CefRefPtr<CefDictionaryValue>& list, const CefString& index, JavascriptCallbackRegistry^ callbackRegistry, value_deque &visited);
-            template CefRefPtr<CefV8Value> DeserializeV8Object(const CefRefPtr<CefListValue>& list, const int& index);
-            template CefRefPtr<CefV8Value> DeserializeV8Object(const CefRefPtr<CefDictionaryValue>& list, const CefString& index);
-        }
-    }
-}

+ 0 - 29
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Serialization/V8Serialization.h

@@ -1,29 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "include/cef_v8.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        ref class JavascriptCallbackRegistry;
-
-        namespace Serialization
-        {
-            //Functions to serialize/deserialize data sent to/received from the browser process.
-
-            //Serializes a V8 structure into a given index of a CefListValue or CefDictionaryValue
-            //JavascriptCallbackRegistry should be passed to save V8Values with function types
-            template<typename TList, typename TIndex>
-            void SerializeV8Object(const CefRefPtr<CefV8Value> &value, const CefRefPtr<TList>& list, const TIndex& index, JavascriptCallbackRegistry^ callbackRegistry);
-
-            //Deserializes data from a given index of a CefListValue or a CefDictionaryValue
-            template<typename TList, typename TIndex>
-            CefRefPtr<CefV8Value> DeserializeV8Object(const CefRefPtr<TList>& list, const TIndex& index);
-        }
-    }
-}

+ 0 - 3
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Stdafx.cpp

@@ -1,3 +0,0 @@
-#pragma once
-
-#include "Stdafx.h"

+ 0 - 23
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/Stdafx.h

@@ -1,23 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#ifdef EXPORT
-  #define DECL __declspec(dllexport)
-#else
-  #define DECL __declspec(dllimport)
-#endif
-
-#include <vector>
-
-#include <include/cef_base.h>
-
-#include ".\..\CefSharp.Core\Internals\MCefRefPtr.h"
-#include ".\..\CefSharp.Core\Internals\StringUtils.h"
-#include "vcclr_local.h"
-
-using namespace System;
-using namespace CefSharp;
-using namespace CefSharp::Internals;

+ 0 - 83
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/SubProcess.h

@@ -1,83 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_app.h"
-#include "include/cef_base.h"
-
-#include "CefBrowserWrapper.h"
-#include "CefAppUnmanagedWrapper.h"
-
-using namespace System::Collections::Generic;
-using namespace System::Linq;
-using namespace CefSharp::Internals;
-
-namespace CefSharp
-{
-    namespace BrowserSubprocess
-    {
-        // Wrap CefAppUnmangedWrapper in a nice managed wrapper
-        public ref class SubProcess
-        {
-        private:
-            MCefRefPtr<CefAppUnmanagedWrapper> _cefApp;
-
-        public:
-            SubProcess(IEnumerable<String^>^ args)
-            {
-                auto onBrowserCreated = gcnew Action<CefBrowserWrapper^>(this, &SubProcess::OnBrowserCreated);
-                auto onBrowserDestroyed = gcnew Action<CefBrowserWrapper^>(this, &SubProcess::OnBrowserDestroyed);
-                auto schemes = CefCustomScheme::ParseCommandLineArguments(args);
-                auto enableFocusedNodeChanged = CommandLineArgsParser::HasArgument(args, CefSharpArguments::FocusedNodeChangedEnabledArgument);
-
-                _cefApp = new CefAppUnmanagedWrapper(schemes, enableFocusedNodeChanged, onBrowserCreated, onBrowserDestroyed);
-            }
-
-            !SubProcess()
-            {
-                _cefApp = nullptr;
-            }
-
-            ~SubProcess()
-            {
-                this->!SubProcess();
-            }
-
-            int Run()
-            {
-                auto hInstance = Process::GetCurrentProcess()->Handle;
-
-                CefMainArgs cefMainArgs((HINSTANCE)hInstance.ToPointer());
-
-                return CefExecuteProcess(cefMainArgs, (CefApp*)_cefApp.get(), NULL);
-            }
-
-            virtual void OnBrowserCreated(CefBrowserWrapper^ cefBrowserWrapper)
-            {
-
-            }
-
-            virtual void OnBrowserDestroyed(CefBrowserWrapper^ cefBrowserWrapper)
-            {
-
-            }
-
-            static void EnableHighDPISupport()
-            {
-                CefEnableHighDPISupport();
-            }
-
-            static int ExecuteProcess()
-            {
-                auto hInstance = Process::GetCurrentProcess()->Handle;
-
-                CefMainArgs cefMainArgs((HINSTANCE)hInstance.ToPointer());
-
-                return CefExecuteProcess(cefMainArgs, NULL, NULL);
-            }
-        };
-    }
-}

+ 0 - 270
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/TypeUtils.cpp

@@ -1,270 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include ".\..\CefSharp.Core\Internals\StringUtils.h"
-#include "TypeUtils.h"
-
-using namespace System::Collections::Generic;
-
-namespace CefSharp
-{
-    CefRefPtr<CefV8Value> TypeUtils::ConvertToCef(Object^ obj, Type^ type)
-    {
-        if (type == Void::typeid)
-        {
-            return CefV8Value::CreateUndefined();
-        }
-        if (obj == nullptr)
-        {
-            return CefV8Value::CreateNull();
-        }
-
-        if (type == nullptr)
-        {
-            type = obj->GetType();
-        }
-
-        Type^ underlyingType = Nullable::GetUnderlyingType(type);
-        if (underlyingType != nullptr) type = underlyingType;
-
-        if (type == Boolean::typeid)
-        {
-            return CefV8Value::CreateBool(safe_cast<bool>(obj));
-        }
-        if (type == Int32::typeid)
-        {
-            return CefV8Value::CreateInt(safe_cast<int>(obj));
-        }
-        if (type == String::typeid)
-        {
-            CefString str = StringUtils::ToNative(safe_cast<String^>(obj));
-            return CefV8Value::CreateString(str);
-        }
-        if (type == Double::typeid)
-        {
-            return CefV8Value::CreateDouble(safe_cast<double>(obj));
-        }
-        if (type == Decimal::typeid)
-        {
-            return CefV8Value::CreateDouble(Convert::ToDouble(obj));
-        }
-        if (type == SByte::typeid)
-        {
-            return CefV8Value::CreateInt(Convert::ToInt32(obj));
-        }
-        if (type == Int16::typeid)
-        {
-            return CefV8Value::CreateInt(Convert::ToInt32(obj));
-        }
-        if (type == Int64::typeid)
-        {
-            return CefV8Value::CreateDouble(Convert::ToDouble(obj));
-        }
-        if (type == Byte::typeid)
-        {
-            return CefV8Value::CreateInt(Convert::ToInt32(obj));
-        }
-        if (type == UInt16::typeid)
-        {
-            return CefV8Value::CreateInt(Convert::ToInt32(obj));
-        }
-        if (type == UInt32::typeid)
-        {
-            return CefV8Value::CreateDouble(Convert::ToDouble(obj));
-        }
-        if (type == UInt64::typeid)
-        {
-            return CefV8Value::CreateDouble(Convert::ToDouble(obj));
-        }
-        if (type == Single::typeid)
-        {
-            return CefV8Value::CreateDouble(Convert::ToDouble(obj));
-        }
-        if (type == Char::typeid)
-        {
-            return CefV8Value::CreateInt(Convert::ToInt32(obj));
-        }
-        if (type == DateTime::typeid)
-        {
-            return CefV8Value::CreateDate(TypeUtils::ConvertDateTimeToCefTime(safe_cast<DateTime>(obj)));
-        }
-        if (type->IsArray)
-        {
-            Array^ managedArray = (Array^)obj;
-            CefRefPtr<CefV8Value> cefArray = CefV8Value::CreateArray(managedArray->Length);
-
-            for (int i = 0; i < managedArray->Length; i++)
-            {
-                Object^ arrObj;
-
-                arrObj = managedArray->GetValue(i);
-
-                if (arrObj != nullptr)
-                {
-                    CefRefPtr<CefV8Value> cefObj = TypeUtils::ConvertToCef(arrObj, arrObj->GetType());
-
-                    cefArray->SetValue(i, cefObj);
-                }
-                else
-                {
-                    cefArray->SetValue(i, CefV8Value::CreateNull());
-                }
-            }
-
-            return cefArray;
-        }
-        if (type->IsValueType && !type->IsPrimitive && !type->IsEnum)
-        {
-            cli::array<System::Reflection::FieldInfo^>^ fields = type->GetFields();
-            CefRefPtr<CefV8Value> cefArray = CefV8Value::CreateArray(fields->Length);
-
-            for (int i = 0; i < fields->Length; i++)
-            {
-                String^ fieldName = fields[i]->Name;
-
-                CefString strFieldName = StringUtils::ToNative(safe_cast<String^>(fieldName));
-
-                Object^ fieldVal = fields[i]->GetValue(obj);
-
-                if (fieldVal != nullptr)
-                {
-                    CefRefPtr<CefV8Value> cefVal = TypeUtils::ConvertToCef(fieldVal, fieldVal->GetType());
-
-                    cefArray->SetValue(strFieldName, cefVal, V8_PROPERTY_ATTRIBUTE_NONE);
-                }
-                else
-                {
-                    cefArray->SetValue(strFieldName, CefV8Value::CreateNull(), V8_PROPERTY_ATTRIBUTE_NONE);
-                }
-            }
-
-            return cefArray;
-        }
-        //TODO: What exception type?
-        throw gcnew Exception(String::Format("Cannot convert '{0}' object from CLR to CEF.", type->FullName));
-    }
-
-    Object^ TypeUtils::ConvertFromCef(CefRefPtr<CefV8Value> obj, JavascriptCallbackRegistry^ callbackRegistry)
-    {
-        if (obj->IsNull() || obj->IsUndefined())
-        {
-            return nullptr;
-        }
-
-        if (obj->IsBool())
-        {
-            return gcnew System::Boolean(obj->GetBoolValue());
-        }
-        if (obj->IsInt())
-        {
-            return gcnew System::Int32(obj->GetIntValue());
-        }
-        if (obj->IsDouble())
-        {
-            return gcnew System::Double(obj->GetDoubleValue());
-        }
-        if (obj->IsString())
-        {
-            return StringUtils::ToClr(obj->GetStringValue());
-        }
-        if (obj->IsDate())
-        {
-            return TypeUtils::ConvertCefTimeToDateTime(obj->GetDateValue());
-        }
-
-        if (obj->IsArray())
-        {
-            int arrLength = obj->GetArrayLength();
-
-            if (arrLength > 0)
-            {
-                std::vector<CefString> keys;
-                if (obj->GetKeys(keys))
-                {
-                    auto array = gcnew List<Object^>();
-
-                    for (int i = 0; i < arrLength; i++)
-                    {
-                        auto data = obj->GetValue(keys[i]);
-                        if (data != nullptr)
-                        {
-                            auto p_data = TypeUtils::ConvertFromCef(data, callbackRegistry);
-
-                            array->Add(p_data);
-                        }
-                    }
-
-                    return array->ToArray();
-                }
-            }
-
-            return nullptr;
-        }
-
-        if (obj->IsFunction())
-        {
-            if (callbackRegistry == nullptr)
-            {
-                return nullptr;
-            }
-
-            return callbackRegistry->Register(CefV8Context::GetCurrentContext(), obj);
-        }
-
-        if (obj->IsObject())
-        {
-            std::vector<CefString> keys;
-            if (obj->GetKeys(keys))
-            {
-                int objLength = keys.size();
-                if (objLength > 0)
-                {
-                    auto result = gcnew Dictionary<String^, Object^>();
-
-                    for (int i = 0; i < objLength; i++)
-                    {
-                        String^ p_keyStr = StringUtils::ToClr(keys[i].ToString());
-
-                        if ((obj->HasValue(keys[i])) && (!p_keyStr->StartsWith("__")))
-                        {
-                            CefRefPtr<CefV8Value> data = obj->GetValue(keys[i]);
-                            if (data != nullptr)
-                            {
-                                Object^ p_data = TypeUtils::ConvertFromCef(data, callbackRegistry);
-
-                                result->Add(p_keyStr, p_data);
-                            }
-                        }
-                    }
-
-                    return result;
-                }
-            }
-
-            return nullptr;
-        }
-
-        //TODO: What exception type?
-        throw gcnew Exception("Cannot convert object from Cef to CLR.");
-    }
-
-    DateTime TypeUtils::ConvertCefTimeToDateTime(CefTime time)
-    {
-        return DateTimeUtils::FromCefTime(time.year,
-            time.month,
-            time.day_of_month,
-            time.hour,
-            time.minute,
-            time.second,
-            time.millisecond);
-    }
-
-    CefTime TypeUtils::ConvertDateTimeToCefTime(DateTime dateTime)
-    {
-        return CefTime(DateTimeUtils::ToCefTime(dateTime));
-    }
-}

+ 0 - 52
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/TypeUtils.h

@@ -1,52 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_v8.h"
-#include "JavascriptCallbackRegistry.h"
-
-using namespace System;
-
-namespace CefSharp
-{
-    private class TypeUtils
-    {
-    public:
-        /// <summary>
-        /// Converts a .NET object to an (unmanaged) Chromium V8 object.
-        /// </summary>
-        /// <param name="obj">The .NET object that should be converted.</param>
-        /// <param name="type">The type of the source object. If this parameter is a null reference, the type will be determined
-        /// automatically.</param>
-        /// <returns>A corresponding V8 value.</returns>
-        static CefRefPtr<CefV8Value> ConvertToCef(Object^ obj, Type^ type);
-
-        /// <summary>
-        /// Converts a Chromium V8 value to a (managed) .NET object
-        /// using a JavascriptCallbackRegistry param to convert any
-        /// anonymous function to IJavascriptCallback, if callbackRegistry
-        /// is nullptr will use nullptr to each anonymous function instead.
-        /// </summary>
-        /// <param name="obj">The V8 value that should be converted.</param>
-        /// <param name="callbackRegistry">Instance of JavascriptCallbackRegistry to manage IJavascriptCallback instances.</param>
-        /// <returns>A corresponding .NET object.</returns>
-        static Object^ ConvertFromCef(CefRefPtr<CefV8Value> obj, JavascriptCallbackRegistry^ callbackRegistry);
-
-        /// <summary>
-        /// Converts a Chromium V8 CefTime (Date) to a (managed) .NET DateTime.
-        /// </summary>
-        /// <param name="obj">The CefTime value that should be converted.</param>
-        /// <returns>A corresponding .NET DateTime.</returns>
-        static DateTime ConvertCefTimeToDateTime(CefTime time);
-                
-        /// <summary>
-        /// Converts a a (managed) .NET DateTime to Chromium V8 CefTime (Date).
-        /// </summary>
-        /// <param name="obj">The DateTime value that should be converted.</param>
-        /// <returns>A corresponding CefTime (epoch).</returns>
-        static CefTime ConvertDateTimeToCefTime(DateTime dateTime);
-    };
-}

+ 0 - 90
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/WcfEnabledSubProcess.cpp

@@ -1,90 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-#pragma once
-
-#include "Stdafx.h"
-#include "WcfEnabledSubProcess.h"
-
-using namespace System::ServiceModel;
-
-namespace CefSharp
-{
-    namespace BrowserSubprocess
-    {
-        void WcfEnabledSubProcess::OnBrowserCreated(CefBrowserWrapper^ browser)
-        {
-            if (!parentBrowserId.HasValue)
-            {
-                parentBrowserId = browser->BrowserId;
-            }
-
-            if (!parentProcessId.HasValue || !parentBrowserId.HasValue)
-            {
-                return;
-            }
-
-            auto browserId = browser->IsPopup ? parentBrowserId.Value : browser->BrowserId;
-
-            auto serviceName = RenderprocessClientFactory::GetServiceName(parentProcessId.Value, browserId);
-
-            auto binding = BrowserProcessServiceHost::CreateBinding();
-
-            auto channelFactory = gcnew ChannelFactory<IBrowserProcess^>(
-                binding,
-                gcnew EndpointAddress(serviceName)
-                );
-
-            channelFactory->Open();
-
-            auto browserProcess = channelFactory->CreateChannel();
-            auto clientChannel = ((IClientChannel^)browserProcess);
-
-            try
-            {
-                clientChannel->Open();
-
-                browser->ChannelFactory = channelFactory;
-                browser->BrowserProcess = browserProcess;
-            }
-            catch (Exception^)
-            {
-            }
-        }
-
-        void WcfEnabledSubProcess::OnBrowserDestroyed(CefBrowserWrapper^ browser)
-        {
-            auto channelFactory = browser->ChannelFactory;
-
-            try
-            {
-                if (channelFactory->State == CommunicationState::Opened)
-                {
-                    channelFactory->Close();
-                }
-            }
-            catch (Exception^)
-            {
-                
-                channelFactory->Abort();
-            }
-
-            auto clientChannel = ((IClientChannel^)browser->BrowserProcess);
-
-            try
-            {
-                if (clientChannel->State == CommunicationState::Opened)
-                {
-                    clientChannel->Close();
-                }
-            }
-            catch (Exception^)
-            {
-                clientChannel->Abort();
-            }
-
-            browser->ChannelFactory = nullptr;
-            browser->BrowserProcess = nullptr;
-        }
-    }
-}

+ 0 - 38
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/WcfEnabledSubProcess.h

@@ -1,38 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "SubProcess.h"
-#include "CefBrowserWrapper.h"
-
-using namespace System;
-
-namespace CefSharp
-{
-    namespace BrowserSubprocess
-    {
-        public ref class WcfEnabledSubProcess : SubProcess
-        {
-        private:
-            Nullable<int> parentBrowserId;
-
-            /// <summary>
-            /// The PID for the parent (browser) process
-            /// </summary>
-            Nullable<int> parentProcessId;
-
-        public:
-            WcfEnabledSubProcess(IEnumerable<String^>^ args) : SubProcess(args)
-            {
-                parentProcessId = CommandLineArgsParser::LocateParentProcessId(args);
-            }
-
-            void OnBrowserCreated(CefBrowserWrapper^ browser) override;
-            void OnBrowserDestroyed(CefBrowserWrapper^ browser) override;
-
-        };
-    }
-}

+ 0 - 14
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/resource.h

@@ -1,14 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by Resource.rc
-
-// Next default values for new objects
-// 
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        101
-#define _APS_NEXT_COMMAND_VALUE         40001
-#define _APS_NEXT_CONTROL_VALUE         1001
-#define _APS_NEXT_SYMED_VALUE           101
-#endif
-#endif

+ 0 - 58
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess.Core/vcclr_local.h

@@ -1,58 +0,0 @@
-//
-//  vcclr_local.h - modified version of vcclr.h from c:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\vcclr.h.
-//  Modifications indicated below.
-//
-//	Copyright (C) Microsoft Corporation
-//	All rights reserved.
-//
-
-#if _MSC_VER > 1000
-#pragma once
-#endif
-
-#if !defined(_INC_VCCLR)
-#define _INC_VCCLR
-#ifndef RC_INVOKED
-
-// Deliberately disabled, since this causes mscorlib.dll to be referenced twice from two different locations, breaking
-// IntelliSense whenever this header file is included.
-//#using <mscorlib.dll>
-#include <gcroot.h>
-
-#pragma warning(push)
-#pragma warning(disable:4400)
-
-#ifdef __cplusplus_cli
-typedef cli::interior_ptr<const System::Char> __const_Char_ptr;
-typedef cli::interior_ptr<const System::Byte> __const_Byte_ptr;
-typedef cli::interior_ptr<System::Byte> _Byte_ptr;
-typedef const System::String^ __const_String_handle;
-#define _NULLPTR nullptr
-#else
-typedef const System::Char* __const_Char_ptr;
-typedef const System::Byte* __const_Byte_ptr;
-typedef System::Byte* _Byte_ptr;
-typedef const System::String* __const_String_handle;
-#define _NULLPTR 0
-#endif
-
-
-//
-// get an interior gc pointer to the first character contained in a System::String object
-//
-inline __const_Char_ptr PtrToStringChars(__const_String_handle s) {
-
-    _Byte_ptr bp = const_cast<_Byte_ptr>(reinterpret_cast<__const_Byte_ptr>(s));
-    if( bp != _NULLPTR ) {
-        unsigned offset = System::Runtime::CompilerServices::RuntimeHelpers::OffsetToStringData;
-        bp += offset;
-    }
-    return reinterpret_cast<__const_Char_ptr>(bp);
-}
-
-#pragma warning(pop)
-
-#undef _NULLPTR
-
-#endif /* RC_INVOKED */
-#endif //_INC_VCCLR

+ 0 - 48
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess/Program.cs

@@ -1,48 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Linq;
-using CefSharp.Internals;
-
-namespace CefSharp.BrowserSubprocess
-{
-    public class Program
-    {
-        public static int Main(string[] args)
-        {
-            Debug.WriteLine("BrowserSubprocess starting up with command line: " + String.Join("\n", args));
-
-            SubProcess.EnableHighDPISupport();
-
-            int result;
-
-            const string typePrefix = "--type=";
-            var typeArgument = args.SingleOrDefault(arg => arg.StartsWith(typePrefix));
-            var type = typeArgument.Substring(typePrefix.Length);
-
-            //Use our custom subProcess provides features like EvaluateJavascript
-            if (type == "renderer")
-            {
-                var wcfEnabled = args.HasArgument(CefSharpArguments.WcfEnabledArgument);
-                var subProcess = wcfEnabled ? new WcfEnabledSubProcess(args) : new SubProcess(args);
-
-                using (subProcess)
-                {
-                    result = subProcess.Run();
-                }
-            }
-            else
-            {
-                result = SubProcess.ExecuteProcess();
-            }
-
-            Debug.WriteLine("BrowserSubprocess shutting down.");
-
-            return result;
-        }
-    }
-}

+ 0 - 18
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.BrowserSubprocess/Properties/AssemblyInfo.cs

@@ -1,18 +0,0 @@
-using CefSharp;
-using System;
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-[assembly: AssemblyTitle("CefSharp.BrowserSubprocess")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-[assembly: AssemblyCompany(AssemblyInfo.AssemblyCompany)]
-[assembly: AssemblyProduct(AssemblyInfo.AssemblyProduct)]
-[assembly: AssemblyCopyright(AssemblyInfo.AssemblyCopyright)]
-[assembly: ComVisible(AssemblyInfo.ComVisible)]
-[assembly: AssemblyVersion(AssemblyInfo.AssemblyVersion)]
-[assembly: AssemblyFileVersion(AssemblyInfo.AssemblyFileVersion)]
-[assembly: CLSCompliant(AssemblyInfo.ClsCompliant)]

+ 0 - 32
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/AssemblyInfo.cpp

@@ -1,32 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-
-using namespace System;
-using namespace System::Reflection;
-using namespace System::Runtime::CompilerServices;
-using namespace System::Runtime::InteropServices;
-using namespace System::Security::Permissions;
-using namespace CefSharp;
-
-[assembly:AssemblyTitle("CefSharp.Core")];
-[assembly:AssemblyCompany(AssemblyInfo::AssemblyCompany)];
-[assembly:AssemblyProduct(AssemblyInfo::AssemblyProduct)];
-[assembly:AssemblyCopyright(AssemblyInfo::AssemblyCopyright)];
-
-[assembly:AssemblyVersion(AssemblyInfo::AssemblyVersion)];
-[assembly:ComVisible(AssemblyInfo::ComVisible)];
-[assembly:CLSCompliant(AssemblyInfo::ClsCompliant)];
-
-[assembly:AssemblyDescription("")];
-[assembly:AssemblyConfiguration("")];
-[assembly:AssemblyTrademark("")];
-[assembly:AssemblyCulture("")];
-
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpBrowserSubprocessCoreProject)];
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpBrowserSubprocessProject)];
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpWpfProject)];
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpWinFormsProject)];
-[assembly:InternalsVisibleTo(AssemblyInfo::CefSharpTestProject)];

+ 0 - 368
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/BrowserSettings.h

@@ -1,368 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "RequestContext.h"
-
-namespace CefSharp
-{
-    /// <summary>
-    /// Browser initialization settings. Specify NULL or 0 to get the recommended
-    /// default values. The consequences of using custom values may not be well
-    /// tested. Many of these and other settings can also configured using command-
-    /// line switches.
-    /// </summary>
-    public ref class BrowserSettings : IBrowserSettings
-    {
-    internal:
-        CefBrowserSettings* _browserSettings;
-
-        /// <summary>
-        /// Internal Constructor
-        /// </summary>
-        BrowserSettings(CefBrowserSettings* browserSettings)
-        {
-            _browserSettings = browserSettings;
-        }
-
-    public:
-        /// <summary>
-        /// Default Constructor
-        /// </summary>
-        BrowserSettings() : _browserSettings(new CefBrowserSettings())
-        {
-        }
-
-        !BrowserSettings()
-        {
-            _browserSettings = NULL;
-        }
-
-        ~BrowserSettings()
-        {
-            this->!BrowserSettings();
-        }
-
-        /// <summary>
-        /// StandardFontFamily
-        /// </summary>
-        virtual property String^ StandardFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->standard_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->standard_font_family, value); }
-        }
-
-        /// <summary>
-        /// FixedFontFamily
-        /// </summary>
-        virtual property String^ FixedFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->fixed_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->fixed_font_family, value); }
-        }
-
-        /// <summary>
-        /// SerifFontFamily
-        /// </summary>
-        virtual property String^ SerifFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->serif_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->serif_font_family, value); }
-        }
-
-        /// <summary>
-        /// SansSerifFontFamily
-        /// </summary>
-        virtual property String^ SansSerifFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->sans_serif_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->sans_serif_font_family, value); }
-        }
-
-        /// <summary>
-        /// CursiveFontFamily
-        /// </summary>
-        virtual property String^ CursiveFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->cursive_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->cursive_font_family, value); }
-        }
-
-        /// <summary>
-        /// FantasyFontFamily
-        /// </summary>
-        virtual property String^ FantasyFontFamily
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->fantasy_font_family); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->fantasy_font_family, value); }
-        }
-
-        /// <summary>
-        /// DefaultFontSize
-        /// </summary>
-        virtual property int DefaultFontSize
-        {
-            int get() { return _browserSettings->default_font_size; }
-            void set(int value) { _browserSettings->default_font_size = value; }
-        }
-
-        /// <summary>
-        /// DefaultFixedFontSize
-        /// </summary>
-        virtual property int DefaultFixedFontSize
-        {
-            int get() { return _browserSettings->default_fixed_font_size; }
-            void set(int value) { _browserSettings->default_fixed_font_size = value; }
-        }
-
-        /// <summary>
-        /// MinimumFontSize
-        /// </summary>
-        virtual property int MinimumFontSize
-        {
-            int get() { return _browserSettings->minimum_font_size; }
-            void set(int value) { _browserSettings->minimum_font_size = value; }
-        }
-
-        /// <summary>
-        /// MinimumLogicalFontSize
-        /// </summary>
-        virtual property int MinimumLogicalFontSize
-        {
-            int get() { return _browserSettings->minimum_logical_font_size; }
-            void set(int value) { _browserSettings->minimum_logical_font_size = value; }
-        }        
-
-        /// <summary>
-        /// Default encoding for Web content. If empty "ISO-8859-1" will be used. Also
-        /// configurable using the "default-encoding" command-line switch.
-        /// </summary>
-        virtual property String^ DefaultEncoding
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->default_encoding); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->default_encoding, value); }
-        }
-
-        /// <summary>
-        /// Controls the loading of fonts from remote sources. Also configurable using
-        /// the "disable-remote-fonts" command-line switch.
-        /// </summary>
-        virtual property CefState RemoteFonts
-        {
-            CefState get() { return (CefState)_browserSettings->remote_fonts; }
-            void set(CefState value) { _browserSettings->remote_fonts = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether JavaScript can be executed.
-        /// (Disable javascript)
-        /// </summary>
-        virtual property CefState Javascript
-        {
-            CefState get() { return (CefState)_browserSettings->javascript; }
-            void set(CefState value) { _browserSettings->javascript = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether JavaScript can be used to close windows that were not
-        /// opened via JavaScript. JavaScript can still be used to close windows that
-        /// were opened via JavaScript. Also configurable using the
-        /// "disable-javascript-close-windows" command-line switch.
-        /// </summary>
-        virtual property CefState JavascriptCloseWindows
-        {
-            CefState get() { return (CefState)_browserSettings->javascript_close_windows; }
-            void set(CefState value) { _browserSettings->javascript_close_windows = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether JavaScript can access the clipboard. Also configurable
-        /// using the "disable-javascript-access-clipboard" command-line switch.
-        /// </summary>
-        virtual property CefState JavascriptAccessClipboard
-        {
-            CefState get() { return (CefState)_browserSettings->javascript_access_clipboard; }
-            void set(CefState value) { _browserSettings->javascript_access_clipboard = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether DOM pasting is supported in the editor via
-        /// execCommand("paste"). The |javascript_access_clipboard| setting must also
-        /// be enabled. Also configurable using the "disable-javascript-dom-paste"
-        /// command-line switch.
-        /// </summary>
-        virtual property CefState JavascriptDomPaste
-        {
-            CefState get() { return (CefState)_browserSettings->javascript_dom_paste; }
-            void set(CefState value) { _browserSettings->javascript_dom_paste = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether any plugins will be loaded. Also configurable using the
-        /// "disable-plugins" command-line switch.
-        /// </summary>
-        virtual property CefState Plugins
-        {
-            CefState get() { return (CefState)_browserSettings->plugins; }
-            void set(CefState value) { _browserSettings->plugins = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether file URLs will have access to all URLs. Also configurable
-        /// using the "allow-universal-access-from-files" command-line switch.
-        /// </summary>
-        virtual property CefState UniversalAccessFromFileUrls
-        {
-            CefState get() { return (CefState)_browserSettings->universal_access_from_file_urls; }
-            void set(CefState value) { _browserSettings->universal_access_from_file_urls = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether file URLs will have access to other file URLs. Also
-        /// configurable using the "allow-access-from-files" command-line switch.
-        /// </summary>
-        virtual property CefState FileAccessFromFileUrls
-        {
-            CefState get() { return (CefState)_browserSettings->file_access_from_file_urls; }
-            void set(CefState value) { _browserSettings->file_access_from_file_urls = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether web security restrictions (same-origin policy) will be
-        /// enforced. Disabling this setting is not recommend as it will allow risky
-        /// security behavior such as cross-site scripting (XSS). Also configurable
-        /// using the "disable-web-security" command-line switch.
-        /// </summary>
-        virtual property CefState WebSecurity
-        {
-            CefState get() { return (CefState)_browserSettings->web_security; }
-            void set(CefState value) { _browserSettings->web_security = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether image URLs will be loaded from the network. A cached image
-        /// will still be rendered if requested. Also configurable using the
-        /// "disable-image-loading" command-line switch.
-        /// </summary>
-        virtual property CefState ImageLoading
-        {
-            CefState get() { return (CefState)_browserSettings->image_loading; }
-            void set(CefState value) { _browserSettings->image_loading = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether standalone images will be shrunk to fit the page. Also
-        /// configurable using the "image-shrink-standalone-to-fit" command-line
-        /// switch.
-        /// </summary>
-        virtual property CefState ImageShrinkStandaloneToFit
-        {
-            CefState get() { return (CefState)_browserSettings->image_shrink_standalone_to_fit; }
-            void set(CefState value) { _browserSettings->image_shrink_standalone_to_fit = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether text areas can be resized. Also configurable using the
-        /// "disable-text-area-resize" command-line switch.
-        /// </summary>
-        virtual property CefState TextAreaResize
-        {
-            CefState get() { return (CefState)_browserSettings->text_area_resize; }
-            void set(CefState value) { _browserSettings->text_area_resize = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether the tab key can advance focus to links. Also configurable
-        /// using the "disable-tab-to-links" command-line switch.
-        /// </summary>
-        virtual property CefState TabToLinks
-        {
-            CefState get() { return (CefState)_browserSettings->tab_to_links; }
-            void set(CefState value) { _browserSettings->tab_to_links = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether local storage can be used. Also configurable using the
-        /// "disable-local-storage" command-line switch.
-        /// </summary>
-        virtual property CefState LocalStorage
-        {
-            CefState get() { return (CefState)_browserSettings->local_storage; }
-            void set(CefState value) { _browserSettings->local_storage = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether databases can be used. Also configurable using the
-        /// "disable-databases" command-line switch.
-        /// </summary>
-        virtual property CefState Databases
-        {
-            CefState get() { return (CefState)_browserSettings->databases; }
-            void set(CefState value) { _browserSettings->databases = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether the application cache can be used. Also configurable using
-        /// the "disable-application-cache" command-line switch.
-        /// </summary>
-        virtual property CefState ApplicationCache
-        {
-            CefState get() { return (CefState)_browserSettings->application_cache; }
-            void set(CefState value) { _browserSettings->application_cache = (cef_state_t)value; }
-        }
-
-        /// <summary>
-        /// Controls whether WebGL can be used. Note that WebGL requires hardware
-        /// support and may not work on all systems even when enabled. Also
-        /// configurable using the "disable-webgl" command-line switch.
-        /// </summary>
-        virtual property CefState WebGl
-        {
-            CefState get() { return (CefState)_browserSettings->webgl; }
-            void set(CefState value) { _browserSettings->webgl = (cef_state_t)value; }
-        }
-        
-        /// <summary>
-        /// Opaque background color used for the browser before a document is loaded
-        /// and when no document color is specified. By default the background color
-        /// will be the same as CefSettings.BackgroundColor. Only the RGB compontents
-        /// of the specified value will be used. The alpha component must greater than
-        /// 0 to enable use of the background color but will be otherwise ignored.
-        /// </summary>
-        virtual property uint32 BackgroundColor
-        {
-            uint32 get() { return _browserSettings->background_color; }
-            void set(uint32 value) { _browserSettings->background_color = value; }
-        }
-
-        /// <summary>
-        /// Comma delimited ordered list of language codes without any whitespace that
-        /// will be used in the "Accept-Language" HTTP header. May be overridden on a
-        /// per-browser basis using the CefBrowserSettings.AcceptLanguageList value.
-        /// If both values are empty then "en-US,en" will be used. Can be overridden
-        /// for individual RequestContext instances via the
-        /// RequestContextSettings.AcceptLanguageList value.
-        /// </summary>
-        virtual property String^ AcceptLanguageList
-        {
-            String^ get() { return StringUtils::ToClr(_browserSettings->accept_language_list); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_browserSettings->accept_language_list, value); }
-        }
-
-        /// <summary>
-        /// The maximum rate in frames per second (fps) that CefRenderHandler::OnPaint
-        /// will be called for a windowless browser. The actual fps may be lower if
-        /// the browser cannot generate frames at the requested rate. The minimum
-        /// value is 1 and the maximum value is 60 (default 30). This value can also be
-        /// changed dynamically via IBrowserHost.SetWindowlessFrameRate.
-        /// </summary>
-        virtual property int WindowlessFrameRate
-        {
-            int get() { return _browserSettings->windowless_frame_rate; }
-            void set(int value) { _browserSettings->windowless_frame_rate = value; }
-        }		
-    };
-}

+ 0 - 735
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Cef.h

@@ -1,735 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include <msclr/lock.h>
-#include <msclr/marshal.h>
-#include <include/cef_version.h>
-#include <include/cef_origin_whitelist.h>
-#include <include/cef_web_plugin.h>
-#include <include/cef_crash_util.h>
-
-#include "Internals/CefSharpApp.h"
-#include "Internals/PluginVisitor.h"
-#include "Internals/CefTaskScheduler.h"
-#include "Internals/CefGetGeolocationCallbackAdapter.h"
-#include "Internals/CefRegisterCdmCallbackAdapter.h"
-#include "CookieManager.h"
-#include "CefSettings.h"
-#include "RequestContext.h"
-#include "SchemeHandlerFactoryWrapper.h"
-
-using namespace System::Collections::Generic; 
-using namespace System::Linq;
-using namespace System::Reflection;
-using namespace msclr::interop;
-
-namespace CefSharp
-{
-    public ref class Cef sealed
-    {
-    private:
-        static Object^ _sync;
-
-        static bool _initialized = false;
-        static HashSet<IDisposable^>^ _disposables;
-        static int _initializedThreadId;
-        static bool _multiThreadedMessageLoop = true;
-
-        static Cef()
-        {
-            _sync = gcnew Object();
-            _disposables = gcnew HashSet<IDisposable^>();
-        }
-
-    public:
-
-        static property TaskFactory^ UIThreadTaskFactory;
-        static property TaskFactory^ IOThreadTaskFactory;
-        static property TaskFactory^ FileThreadTaskFactory;
-
-        static void AddDisposable(IDisposable^ item)
-        {
-            msclr::lock l(_sync);
-
-            _disposables->Add(item);
-        }
-
-        static void RemoveDisposable(IDisposable^ item)
-        {
-            msclr::lock l(_sync);
-
-            _disposables->Remove(item);
-        }
-
-        /// <summary>Gets a value that indicates whether CefSharp is initialized.</summary>
-        /// <value>true if CefSharp is initialized; otherwise, false.</value>
-        static property bool IsInitialized
-        {
-            bool get()
-            {
-                return _initialized;
-            }
-
-        private:
-            void set(bool value)
-            {
-                _initialized = value;
-            }
-        }
-
-        /// <summary>Gets a value that indicates the version of CefSharp currently being used.</summary>
-        /// <value>The CefSharp version.</value>
-        static property String^ CefSharpVersion
-        {
-            String^ get()
-            {
-                Assembly^ assembly = Assembly::GetAssembly(Cef::typeid);
-                return assembly->GetName()->Version->ToString();
-            }
-        }
-
-        /// <summary>Gets a value that indicates the CEF version currently being used.</summary>
-        /// <value>The CEF Version</value>
-        static property String^ CefVersion
-        {
-            String^ get()
-            {
-                return String::Format("r{0}", CEF_VERSION);
-            }
-        }
-
-        /// <summary>Gets a value that indicates the Chromium version currently being used.</summary>
-        /// <value>The Chromium version.</value>
-        static property String^ ChromiumVersion
-        {
-            String^ get()
-            {
-                // Need explicit cast here to avoid C4965 warning when the minor version is zero.
-                return String::Format("{0}.{1}.{2}.{3}",
-                    CHROME_VERSION_MAJOR, (Object^) CHROME_VERSION_MINOR,
-                    CHROME_VERSION_BUILD, CHROME_VERSION_PATCH);
-            }
-        }
-
-        /// <summary>
-        /// Gets a value that indicates the Git Hash for CEF version currently being used.
-        /// </summary>
-        /// <value>The Git Commit Hash</value>
-        static property String^ CefCommitHash
-        {
-            String^ get()
-            {
-                return CEF_COMMIT_HASH;
-            }
-        }
-
-        /// <summary>
-        /// Initializes CefSharp with the default settings. 
-        /// This function can only be called once, subsiquent calls will result in an Exception.
-        /// It's important to note that Initialize and Shutdown <strong>MUST</strong> be called on your main
-        /// applicaiton thread (Typically the UI thead). If you call them on different
-        /// threads, your application will hang. See the documentation for Cef.Shutdown() for more details.
-        /// </summary>
-        /// <returns>true if successful; otherwise, false.</returns>
-        static bool Initialize()
-        {
-            auto cefSettings = gcnew CefSettings();
-            return Initialize(cefSettings);
-        }
-
-        /// <summary>
-        /// Initializes CefSharp with user-provided settings.
-        /// It's important to note that Initialize and Shutdown <strong>MUST</strong> be called on your main
-        /// applicaiton thread (Typically the UI thead). If you call them on different
-        /// threads, your application will hang. See the documentation for Cef.Shutdown() for more details.
-        /// </summary>
-        /// <param name="cefSettings">CefSharp configuration settings.</param>
-        /// <returns>true if successful; otherwise, false.</returns>
-        static bool Initialize(CefSettings^ cefSettings)
-        {
-            return Initialize(cefSettings, false, nullptr);
-        }
-
-        /// <summary>
-        /// Initializes CefSharp with user-provided settings.
-        /// It's important to note that Initialize/Shutdown <strong>MUST</strong> be called on your main
-        /// applicaiton thread (Typically the UI thead). If you call them on different
-        /// threads, your application will hang. See the documentation for Cef.Shutdown() for more details.
-        /// </summary>
-        /// <param name="cefSettings">CefSharp configuration settings.</param>
-        /// <param name="performDependencyCheck">Check that all relevant dependencies avaliable, throws exception if any are missing</param>
-        /// <returns>true if successful; otherwise, false.</returns>
-        static bool Initialize(CefSettings^ cefSettings, bool performDependencyCheck, IBrowserProcessHandler^ browserProcessHandler)
-        {
-            if (IsInitialized)
-            {
-                // NOTE: Can only initialize Cef once, to make this explicitly clear throw exception on subsiquent attempts
-                throw gcnew Exception("Cef can only be initialized once. Use Cef.IsInitialized to guard against this exception.");
-            }
-            
-            if (cefSettings->BrowserSubprocessPath == nullptr)
-            {
-                throw gcnew Exception("CefSettings BrowserSubprocessPath cannot be null.");
-            }
-
-            if(performDependencyCheck)
-            {
-                DependencyChecker::AssertAllDependenciesPresent(cefSettings->Locale, cefSettings->LocalesDirPath, cefSettings->ResourcesDirPath, cefSettings->PackLoadingDisabled, cefSettings->BrowserSubprocessPath);
-            }
-
-            if (CefSharpSettings::Proxy != nullptr && !cefSettings->CommandLineArgsDisabled)
-            {
-                cefSettings->CefCommandLineArgs->Add("proxy-server", CefSharpSettings::Proxy->IP + ":" + CefSharpSettings::Proxy->Port);
-
-                if (!String::IsNullOrEmpty(CefSharpSettings::Proxy->BypassList))
-                {
-                    cefSettings->CefCommandLineArgs->Add("proxy-bypass-list", CefSharpSettings::Proxy->BypassList);
-                }
-            }
-
-            UIThreadTaskFactory = gcnew TaskFactory(gcnew CefTaskScheduler(TID_UI));
-            IOThreadTaskFactory = gcnew TaskFactory(gcnew CefTaskScheduler(TID_IO));
-            FileThreadTaskFactory = gcnew TaskFactory(gcnew CefTaskScheduler(TID_FILE));
-
-            CefMainArgs main_args;
-            CefRefPtr<CefSharpApp> app(new CefSharpApp(cefSettings, browserProcessHandler));
-
-            auto success = CefInitialize(main_args, *(cefSettings->_cefSettings), app.get(), NULL);
-
-            //Register SchemeHandlerFactories - must be called after CefInitialize
-            for each (CefCustomScheme^ cefCustomScheme in cefSettings->CefCustomSchemes)
-            {
-                auto domainName = cefCustomScheme->DomainName ? cefCustomScheme->DomainName : String::Empty;
-
-                CefRefPtr<CefSchemeHandlerFactory> wrapper = new SchemeHandlerFactoryWrapper(cefCustomScheme->SchemeHandlerFactory);
-                CefRegisterSchemeHandlerFactory(StringUtils::ToNative(cefCustomScheme->SchemeName), StringUtils::ToNative(domainName), wrapper);
-            }
-
-            _initialized = success;
-            _multiThreadedMessageLoop = cefSettings->MultiThreadedMessageLoop;
-
-            _initializedThreadId = Thread::CurrentThread->ManagedThreadId;
-
-            return success;
-        }
-
-        /// <summary>
-        /// Run the CEF message loop. Use this function instead of an application-
-        /// provided message loop to get the best balance between performance and CPU
-        /// usage. This function should only be called on the main application thread and
-        /// only if Cef.Initialize() is called with a
-        /// CefSettings.MultiThreadedMessageLoop value of false. This function will
-        /// block until a quit message is received by the system.
-        /// </summary>
-        static void RunMessageLoop()
-        {
-            CefRunMessageLoop();
-        }
-
-        /// <summary>
-        /// Quit the CEF message loop that was started by calling Cef.RunMessageLoop().
-        /// This function should only be called on the main application thread and only
-        /// if Cef.RunMessageLoop() was used.
-        /// </summary>
-        static void QuitMessageLoop()
-        {
-            CefQuitMessageLoop();
-        }
-
-        /// <summary>
-        /// Perform a single iteration of CEF message loop processing.This function is
-        /// provided for cases where the CEF message loop must be integrated into an
-        /// existing application message loop. Use of this function is not recommended
-        /// for most users; use CefSettings.MultiThreadedMessageLoop if possible (the deault).
-        /// When using this function care must be taken to balance performance
-        /// against excessive CPU usage. It is recommended to enable the
-        /// CefSettings.ExternalMessagePump option when using
-        /// this function so that IBrowserProcessHandler.OnScheduleMessagePumpWork()
-        /// callbacks can facilitate the scheduling process. This function should only be
-        /// called on the main application thread and only if Cef.Initialize() is called
-        /// with a CefSettings.MultiThreadedMessageLoop value of false. This function
-        /// will not block.
-        /// </summary>
-        static void DoMessageLoopWork()
-        {
-            CefDoMessageLoopWork();
-        }
-
-
-        /// <summary>
-        /// This function should be called from the application entry point function to execute a secondary process.
-        /// It can be used to run secondary processes from the browser client executable (default behavior) or
-        /// from a separate executable specified by the CefSettings.browser_subprocess_path value.
-        /// If called for the browser process (identified by no "type" command-line value) it will return immediately with a value of -1.
-        /// If called for a recognized secondary process it will block until the process should exit and then return the process exit code.
-        /// The |application| parameter may be empty. The |windows_sandbox_info| parameter is only used on Windows and may be NULL (see cef_sandbox_win.h for details). 
-        /// </summary>
-        static int ExecuteProcess()
-        {
-            auto hInstance = Process::GetCurrentProcess()->Handle;
-
-            CefMainArgs cefMainArgs((HINSTANCE)hInstance.ToPointer());
-            //TODO: Look at ways to expose an instance of CefApp
-            //CefRefPtr<CefSharpApp> app(new CefSharpApp(nullptr, nullptr));
-
-            return CefExecuteProcess(cefMainArgs, NULL, NULL);
-        }
-
-        /// <summary>Add an entry to the cross-origin whitelist.</summary>
-        /// <param name="sourceOrigin">The origin allowed to be accessed by the target protocol/domain.</param>
-        /// <param name="targetProtocol">The target protocol allowed to access the source origin.</param>
-        /// <param name="targetDomain">The optional target domain allowed to access the source origin.</param>
-        /// <param name="allowTargetSubdomains">If set to true would allow a blah.example.com if the 
-        ///     <paramref name="targetDomain"/> was set to example.com
-        /// </param>
-        /// <remarks>
-        /// The same-origin policy restricts how scripts hosted from different origins
-        /// (scheme + domain + port) can communicate. By default, scripts can only access
-        /// resources with the same origin. Scripts hosted on the HTTP and HTTPS schemes
-        /// (but no other schemes) can use the "Access-Control-Allow-Origin" header to
-        /// allow cross-origin requests. For example, https://source.example.com can make
-        /// XMLHttpRequest requests on http://target.example.com if the
-        /// http://target.example.com request returns an "Access-Control-Allow-Origin:
-        /// https://source.example.com" response header.
-        //
-        /// Scripts in separate frames or iframes and hosted from the same protocol and
-        /// domain suffix can execute cross-origin JavaScript if both pages set the
-        /// document.domain value to the same domain suffix. For example,
-        /// scheme://foo.example.com and scheme://bar.example.com can communicate using
-        /// JavaScript if both domains set document.domain="example.com".
-        //
-        /// This method is used to allow access to origins that would otherwise violate
-        /// the same-origin policy. Scripts hosted underneath the fully qualified
-        /// <paramref name="sourceOrigin"/> URL (like http://www.example.com) will be allowed access to
-        /// all resources hosted on the specified <paramref name="targetProtocol"/> and <paramref name="targetDomain"/>.
-        /// If <paramref name="targetDomain"/> is non-empty and <paramref name="allowTargetSubdomains"/> if false only
-        /// exact domain matches will be allowed. If <paramref name="targetDomain"/> contains a top-
-        /// level domain component (like "example.com") and <paramref name="allowTargetSubdomains"/> is
-        /// true sub-domain matches will be allowed. If <paramref name="targetDomain"/> is empty and
-        /// <paramref name="allowTargetSubdomains"/> if true all domains and IP addresses will be
-        /// allowed.
-        //
-        /// This method cannot be used to bypass the restrictions on local or display
-        /// isolated schemes. See the comments on <see cref="CefCustomScheme"/> for more
-        /// information.
-        ///
-        /// This function may be called on any thread. Returns false if <paramref name="sourceOrigin"/>
-        /// is invalid or the whitelist cannot be accessed.
-        /// </remarks>
-        static bool AddCrossOriginWhitelistEntry(
-            String^ sourceOrigin,
-            String^ targetProtocol,
-            String^ targetDomain,
-            bool allowTargetSubdomains)
-        {
-            return CefAddCrossOriginWhitelistEntry(
-                    StringUtils::ToNative(sourceOrigin),
-                    StringUtils::ToNative(targetProtocol),
-                    StringUtils::ToNative(targetDomain),
-                    allowTargetSubdomains);
-        }
-
-        /// <summary>Remove entry from cross-origin whitelist</summary>
-        /// <param name="sourceOrigin">The origin allowed to be accessed by the target protocol/domain.</param>
-        /// <param name="targetProtocol">The target protocol allowed to access the source origin.</param>
-        /// <param name="targetDomain">The optional target domain allowed to access the source origin.</param>
-        /// <param name="allowTargetSubdomains">If set to true would allow a blah.example.com if the 
-        ///     <paramref name="targetDomain"/> was set to example.com
-        /// </param>
-        /// <remarks>
-        /// Remove an entry from the cross-origin access whitelist. Returns false if
-        /// <paramref name="sourceOrigin"/> is invalid or the whitelist cannot be accessed.
-        /// </remarks>
-        static bool RemoveCrossOriginWhitelistEntry(String^ sourceOrigin,
-            String^ targetProtocol,
-            String^ targetDomain,
-            bool allowTargetSubdomains)
-
-        {
-            return CefRemoveCrossOriginWhitelistEntry(
-                StringUtils::ToNative(sourceOrigin),
-                StringUtils::ToNative(targetProtocol),
-                StringUtils::ToNative(targetDomain),
-                allowTargetSubdomains);
-        }
-
-        /// <summary>Remove all entries from the cross-origin access whitelist.</summary>
-        /// <remarks>
-        /// Remove all entries from the cross-origin access whitelist. Returns false if
-        /// the whitelist cannot be accessed.
-        /// </remarks>
-        static bool ClearCrossOriginWhitelist()
-        {
-            return CefClearCrossOriginWhitelist();
-        }
-
-        /// <summary>
-        /// Returns the global cookie manager.
-        /// </summary>
-        static ICookieManager^ GetGlobalCookieManager()
-        {
-            auto cookieManager = CefCookieManager::GetGlobalManager(NULL);
-            if (cookieManager.get())
-            {
-                return gcnew CookieManager(cookieManager);
-            }
-            return nullptr;
-        }
-
-        /// <summary>
-        /// Shuts down CefSharp and the underlying CEF infrastructure. This method is safe to call multiple times; it will only
-        /// shut down CEF on the first call (all subsequent calls will be ignored).
-        /// This method should be called on the main application thread to shut down the CEF browser process before the application exits. 
-        /// If you are Using CefSharp.OffScreen then you must call this explicitly before your application exits or it will hang.
-        /// This method must be called on the same thread as Initialize. If you don't call Shutdown explicitly then CefSharp.Wpf and CefSharp.WinForms
-        /// versions will do their best to call Shutdown for you, if your application is having trouble closing then call thus explicitly.
-        /// </summary>
-        static void Shutdown()
-        {
-            if (IsInitialized)
-            {
-                msclr::lock l(_sync);
-
-                if (IsInitialized)
-                {
-                    if (_initializedThreadId != Thread::CurrentThread->ManagedThreadId)
-                    {
-                        throw gcnew Exception("Shutdown must be called on the same thread that Initialize was called - typically your UI thread. CefSharp was initialized on ManagedThreadId: " + Thread::CurrentThread->ManagedThreadId);
-                    }
-
-                    UIThreadTaskFactory = nullptr;
-                    IOThreadTaskFactory = nullptr;
-                    FileThreadTaskFactory = nullptr;
-
-                    for each(IDisposable^ diposable in Enumerable::ToList(_disposables))
-                    {
-                        delete diposable;
-                    }
-                
-                    GC::Collect();
-                    GC::WaitForPendingFinalizers();
-
-                    if (!_multiThreadedMessageLoop)
-                    {
-                        // We need to run the message pump until it is idle. However we don't have
-                        // that information here so we run the message loop "for a while".
-                        // See https://github.com/cztomczak/cefpython/issues/245 for an excellent description
-                        for (int i = 0; i < 10; i++)
-                        {
-                            DoMessageLoopWork();
-
-                            // Sleep to allow the CEF proc to do work.
-                            Sleep(50);
-                        }
-                    }
-
-                    CefShutdown();
-                    IsInitialized = false;
-                }
-            }
-        }
-
-        /// <summary>
-        /// This method should only be used by advanced users, if your unsure then use Cef.Shutdown().
-        /// This function should be called on the main application thread to shut down
-        /// the CEF browser process before the application exits. This method simply obtains a lock
-        /// and calls the native CefShutdown method, only IsInitialized is checked. All ChromiumWebBrowser
-        /// instances MUST be Disposed of before calling this method. If calling this method results in a crash
-        /// or hangs then you're likely hanging on to some unmanaged resources or haven't closed all of your browser
-        /// instances
-        /// </summary>
-        static void ShutdownWithoutChecks()
-        {
-            if (IsInitialized)
-            {
-                msclr::lock l(_sync);
-
-                if (IsInitialized)
-                {
-                    CefShutdown();
-                    IsInitialized = false;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Clear all registered scheme handler factories.
-        /// </summary>
-        /// <returns>Returns false on error.</returns>
-        static bool ClearSchemeHandlerFactories()
-        {
-            return CefClearSchemeHandlerFactories();
-        }
-
-        /// <summary>
-        /// Visit web plugin information. Can be called on any thread in the browser process.
-        /// </summary>
-        static void VisitWebPluginInfo(IWebPluginInfoVisitor^ visitor)
-        {
-            CefVisitWebPluginInfo(new PluginVisitor(visitor));
-        }
-
-        /// <summary>
-        /// Async returns a list containing Plugin Information
-        /// (Wrapper around CefVisitWebPluginInfo)
-        /// </summary>
-        /// <returns>Returns List of <see cref="Plugin"/> structs.</returns>
-        static Task<List<WebPluginInfo^>^>^ GetPlugins()
-        {
-            auto taskVisitor = gcnew TaskWebPluginInfoVisitor();
-            CefRefPtr<PluginVisitor> visitor = new PluginVisitor(taskVisitor);
-            
-            CefVisitWebPluginInfo(visitor);
-
-            return taskVisitor->Task;
-        }
-
-        /// <summary>
-        /// Cause the plugin list to refresh the next time it is accessed regardless of whether it has already been loaded.
-        /// </summary>
-        static void RefreshWebPlugins()
-        {
-            CefRefreshWebPlugins();
-        }
-
-        /// <summary>
-        /// Unregister an internal plugin. This may be undone the next time RefreshWebPlugins() is called. 
-        /// </summary>
-        /// <param name="path">Path (directory + file).</param>
-        static void UnregisterInternalWebPlugin(String^ path)
-        {
-            CefUnregisterInternalWebPlugin(StringUtils::ToNative(path));
-        }
-
-        /// <summary>
-        /// Call during process startup to enable High-DPI support on Windows 7 or newer.
-        /// Older versions of Windows should be left DPI-unaware because they do not
-        /// support DirectWrite and GDI fonts are kerned very badly.
-        /// </summary>
-        static void EnableHighDPISupport()
-        {
-            CefEnableHighDPISupport();
-        }
-
-        /// <summary>
-        /// Request a one-time geolocation update.
-        /// This function bypasses any user permission checks so should only be
-        /// used by code that is allowed to access location information. 
-        /// </summary>
-        /// <returns>Returns 'best available' location info or, if the location update failed, with error info.</returns>
-        static bool GetGeolocation(IGetGeolocationCallback^ callback)
-        {
-            CefRefPtr<CefGetGeolocationCallback> wrapper = callback == nullptr ? NULL : new CefGetGeolocationCallbackAdapter(callback);
-
-            return CefGetGeolocation(wrapper);
-        }
-
-        /// <summary>
-        /// Request a one-time geolocation update.
-        /// This function bypasses any user permission checks so should only be
-        /// used by code that is allowed to access location information. 
-        /// </summary>
-        /// <returns>Returns 'best available' location info or, if the location update failed, with error info.</returns>
-        static Task<Geoposition^>^ GetGeolocationAsync()
-        {
-            auto callback = gcnew TaskGetGeolocationCallback();
-            
-            GetGeolocation(callback);
-
-            return callback->Task;
-        }
-
-        /// <summary>
-        /// Returns true if called on the specified CEF thread.
-        /// </summary>
-        /// <returns>Returns true if called on the specified thread.</returns>
-        static bool CurrentlyOnThread(CefThreadIds threadId)
-        {
-            return CefCurrentlyOn((CefThreadId)threadId);
-        }
-
-        /// <summary>
-        /// Gets the Global Request Context. Make sure to Dispose of this object when finished.
-        /// </summary>
-        /// <returns>Returns the global request context or null.</returns>
-        static IRequestContext^ GetGlobalRequestContext()
-        {
-            auto context = CefRequestContext::GetGlobalContext();
-
-            if (context.get())
-            {
-                return gcnew RequestContext(context);
-            }
-
-            return nullptr;
-        }
-
-        /// <summary>
-        /// Crash reporting is configured using an INI-style config file named
-        /// crash_reporter.cfg. This file must be placed next to
-        /// the main application executable. File contents are as follows:
-        ///
-        ///  # Comments start with a hash character and must be on their own line.
-        ///
-        ///  [Config]
-        ///  ProductName=<Value of the "prod" crash key; defaults to "cef">
-        ///  ProductVersion=<Value of the "ver" crash key; defaults to the CEF version>
-        ///  AppName=<Windows only; App-specific folder name component for storing crash
-        ///           information; default to "CEF">
-        ///  ExternalHandler=<Windows only; Name of the external handler exe to use
-        ///                   instead of re-launching the main exe; default to empty>
-        ///  ServerURL=<crash server URL; default to empty>
-        ///  RateLimitEnabled=<True if uploads should be rate limited; default to true>
-        ///  MaxUploadsPerDay=<Max uploads per 24 hours, used if rate limit is enabled;
-        ///                    default to 5>
-        ///  MaxDatabaseSizeInMb=<Total crash report disk usage greater than this value
-        ///                       will cause older reports to be deleted; default to 20>
-        ///  MaxDatabaseAgeInDays=<Crash reports older than this value will be deleted;
-        ///                        default to 5>
-        ///
-        ///  [CrashKeys]
-        ///  my_key1=<small|medium|large>
-        ///  my_key2=<small|medium|large>
-        ///
-        /// Config section:
-        ///
-        /// If "ProductName" and/or "ProductVersion" are set then the specified values
-        /// will be included in the crash dump metadata. 
-        ///
-        /// If "AppName" is set on Windows then crash report information (metrics,
-        /// database and dumps) will be stored locally on disk under the
-        /// "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other
-        /// platforms the CefSettings.user_data_path value will be used.
-        ///
-        /// If "ExternalHandler" is set on Windows then the specified exe will be
-        /// launched as the crashpad-handler instead of re-launching the main process
-        /// exe. The value can be an absolute path or a path relative to the main exe
-        /// directory. 
-        ///
-        /// If "ServerURL" is set then crashes will be uploaded as a multi-part POST
-        /// request to the specified URL. Otherwise, reports will only be stored locally
-        /// on disk.
-        ///
-        /// If "RateLimitEnabled" is set to true then crash report uploads will be rate
-        /// limited as follows:
-        ///  1. If "MaxUploadsPerDay" is set to a positive value then at most the
-        ///     specified number of crashes will be uploaded in each 24 hour period.
-        ///  2. If crash upload fails due to a network or server error then an
-        ///     incremental backoff delay up to a maximum of 24 hours will be applied for
-        ///     retries.
-        ///  3. If a backoff delay is applied and "MaxUploadsPerDay" is > 1 then the
-        ///     "MaxUploadsPerDay" value will be reduced to 1 until the client is
-        ///     restarted. This helps to avoid an upload flood when the network or
-        ///     server error is resolved.
-        ///
-        /// If "MaxDatabaseSizeInMb" is set to a positive value then crash report storage
-        /// on disk will be limited to that size in megabytes. For example, on Windows
-        /// each dump is about 600KB so a "MaxDatabaseSizeInMb" value of 20 equates to
-        /// about 34 crash reports stored on disk.
-        ///
-        /// If "MaxDatabaseAgeInDays" is set to a positive value then crash reports older
-        /// than the specified age in days will be deleted.
-        ///
-        /// CrashKeys section:
-        ///
-        /// Any number of crash keys can be specified for use by the application. Crash
-        /// key values will be truncated based on the specified size (small = 63 bytes,
-        /// medium = 252 bytes, large = 1008 bytes). The value of crash keys can be set
-        /// from any thread or process using the Cef.SetCrashKeyValue function. These
-        /// key/value pairs will be sent to the crash server along with the crash dump
-        /// file. Medium and large values will be chunked for submission. For example,
-        /// if your key is named "mykey" then the value will be broken into ordered
-        /// chunks and submitted using keys named "mykey-1", "mykey-2", etc.
-        /// </summary>
-        /// <returns>Returns the global request context or null.</returns>
-        static property bool CrashReportingEnabled
-        {
-            bool get()
-            {
-                return CefCrashReportingEnabled();
-            }
-        }
-
-        /// <summary>
-        /// Sets or clears a specific key-value pair from the crash metadata.
-        /// </summary>
-        static void SetCrashKeyValue(String^ key, String^ value)
-        {
-            CefSetCrashKeyValue(StringUtils::ToNative(key), StringUtils::ToNative(value));
-        }
-
-        /// <summary>
-        /// Register the Widevine CDM plugin.
-        /// 
-        /// The client application is responsible for downloading an appropriate
-        /// platform-specific CDM binary distribution from Google, extracting the
-        /// contents, and building the required directory structure on the local machine.
-        /// The <see cref="IBrowserHost.StartDownload"/> method class can be used
-        /// to implement this functionality in CefSharp. Contact Google via
-        /// https://www.widevine.com/contact.html for details on CDM download.
-        /// 
-        /// 
-        /// path is a directory that must contain the following files:
-        ///   1. manifest.json file from the CDM binary distribution (see below).
-        ///   2. widevinecdm file from the CDM binary distribution (e.g.
-        ///      widevinecdm.dll on Windows).
-        ///   3. widevidecdmadapter file from the CEF binary distribution (e.g.
-        ///      widevinecdmadapter.dll on Windows).
-        ///
-        /// If any of these files are missing or if the manifest file has incorrect
-        /// contents the registration will fail and callback will receive an ErrorCode
-        /// value of <see cref="CdmRegistrationErrorCode.IncorrectContents"/>.
-        ///
-        /// The manifest.json file must contain the following keys:
-        ///   A. "os": Supported OS (e.g. "mac", "win" or "linux").
-        ///   B. "arch": Supported architecture (e.g. "ia32" or "x64").
-        ///   C. "x-cdm-module-versions": Module API version (e.g. "4").
-        ///   D. "x-cdm-interface-versions": Interface API version (e.g. "8").
-        ///   E. "x-cdm-host-versions": Host API version (e.g. "8").
-        ///   F. "version": CDM version (e.g. "1.4.8.903").
-        ///   G. "x-cdm-codecs": List of supported codecs (e.g. "vp8,vp9.0,avc1").
-        ///
-        /// A through E are used to verify compatibility with the current Chromium
-        /// version. If the CDM is not compatible the registration will fail and
-        /// callback will receive an ErrorCode value of <see cref="CdmRegistrationErrorCode.Incompatible"/>.
-        ///
-        /// If registration is not supported at the time that Cef.RegisterWidevineCdm() is called then callback
-        /// will receive an ErrorCode value of <see cref="CdmRegistrationErrorCode.NotSupported"/>.
-        /// </summary>
-        /// <param name="path"> is a directory that contains the Widevine CDM files</param>
-        /// <param name="callback">optional callback - <see cref="IRegisterCdmCallback.OnRegistrationCompletecallback"/> 
-        /// will be executed asynchronously once registration is complete</param>
-        static void RegisterWidevineCdm(String^ path, [Optional] IRegisterCdmCallback^ callback)
-        {
-            CefRefPtr<CefRegisterCdmCallbackAdapter> adapter = NULL;
-
-            if (callback != nullptr)
-            {
-                adapter = new CefRegisterCdmCallbackAdapter(callback);
-            }
-
-            CefRegisterWidevineCdm(StringUtils::ToNative(path), adapter);
-        }
-
-        /// <summary>
-        /// Register the Widevine CDM plugin.
-        ///
-        /// See <see cref="RegisterWidevineCdm(String, IRegisterCdmCallback)"/> for more details.
-        /// </summary>
-        /// <param name="path"> is a directory that contains the Widevine CDM files</param>
-        /// <returns>Returns a Task that can be awaited to receive the <see cref="CdmRegistration"/> response.</returns>
-        static Task<CdmRegistration^>^ RegisterWidevineCdmAsync(String^ path)
-        {
-            auto callback = gcnew TaskRegisterCdmCallback();
-            
-            RegisterWidevineCdm(path, callback);
-
-            return callback->Task;
-        }
-    };
-}

+ 0 - 434
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CefSettings.h

@@ -1,434 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-using namespace System::Collections::Generic;
-
-namespace CefSharp
-{
-    /// <summary>
-    /// Initialization settings. Many of these and other settings can also configured
-    /// using command-line switches.
-    /// </summary>
-    public ref class CefSettings
-    {
-    private:
-        List<CefExtension^>^ _cefExtensions;
-        IDictionary<String^, String^>^ _cefCommandLineArgs;
-
-    internal:
-        ::CefSettings* _cefSettings;
-        List<CefCustomScheme^>^ _cefCustomSchemes;
-        bool _focusedNodeChangedEnabled;
-
-    public:
-        /// <summary>
-        /// Default Constructor
-        /// </summary>
-        CefSettings() : _cefSettings(new ::CefSettings())
-        {
-            _cefSettings->multi_threaded_message_loop = true;
-            _cefSettings->no_sandbox = true;
-            BrowserSubprocessPath = "CefSharp.BrowserSubprocess.exe";
-            _cefCustomSchemes = gcnew List<CefCustomScheme^>();
-            _cefExtensions = gcnew List<CefExtension^>();
-            _cefCommandLineArgs = gcnew Dictionary<String^, String^>();
-
-            //Automatically discovered and load a system-wide installation of Pepper Flash.
-            _cefCommandLineArgs->Add("enable-system-flash", "1");
-
-            _focusedNodeChangedEnabled = false;
-        }
-
-        !CefSettings()
-        {
-            delete _cefSettings;
-        }
-
-        ~CefSettings()
-        {
-            this->!CefSettings();
-        }
-
-        /// <summary>
-        /// Add Customs schemes to this collection
-        /// </summary>
-        property IEnumerable<CefCustomScheme^>^ CefCustomSchemes
-        {
-            IEnumerable<CefCustomScheme^>^ get() { return _cefCustomSchemes; }
-        }
-
-        /// <summary>
-        /// Add CefExtensions to be registered
-        /// </summary>
-        virtual property IEnumerable<CefExtension^>^ Extensions
-        {
-            IEnumerable<CefExtension^>^ get() { return _cefExtensions; }
-        }
-
-        /// <summary>
-        /// Add custom command line argumens to this collection, they will be
-        /// added in OnBeforeCommandLineProcessing.
-        // The CefSettings.command_line_args_disabled value can be used to start with an empty command-line object. Any values specified in CefSettings that equate to command-line arguments will be set before this method is called.
-        /// </summary>
-        virtual property IDictionary<String^, String^>^ CefCommandLineArgs
-        {
-            IDictionary<String^, String^>^ get() { return _cefCommandLineArgs; }
-        }
-        
-        /// <summary>
-        /// Set to true to disable configuration of browser process features using
-        /// standard CEF and Chromium command-line arguments. Configuration can still
-        /// be specified using CEF data structures or by adding to CefCommandLineArgs
-        /// </summary>
-        property bool CommandLineArgsDisabled
-        {
-            bool get() { return _cefSettings->command_line_args_disabled == 1; }
-            void set(bool value) { _cefSettings->command_line_args_disabled = value; }
-        }
-
-        /// <summary>
-        /// Set to true to control browser process main (UI) thread message pump
-        /// scheduling via the IBrowserProcessHandler.OnScheduleMessagePumpWork
-        /// callback. This option is recommended for use in combination with the
-        /// Cef.DoMessageLoopWork() function in cases where the CEF message loop must be
-        /// integrated into an existing application message loop (see additional
-        /// comments and warnings on Cef.DoMessageLoopWork). Enabling this option is not
-        /// recommended for most users; leave this option disabled and use either
-        /// MultiThreadedMessageLoop (the default) if possible.
-        /// </summary>
-        property bool ExternalMessagePump
-        {
-            bool get() { return _cefSettings->external_message_pump == 1; }
-            void set(bool value) { _cefSettings->external_message_pump = value; }
-        }		
-
-        /// <summary>
-        //// Set to true to have the browser process message loop run in a separate
-        /// thread. If false than the CefDoMessageLoopWork() function must be
-        /// called from your application message loop. This option is only supported on
-        /// Windows. The default value is true
-        /// </summary>
-        property bool MultiThreadedMessageLoop
-        {
-            bool get() { return _cefSettings->multi_threaded_message_loop == 1; }
-            void set(bool value) { _cefSettings->multi_threaded_message_loop = value; }
-        }
-
-        /// <summary>
-        /// The path to a separate executable that will be launched for sub-processes.
-        /// By default the browser process executable is used. See the comments on
-        /// Cef.ExecuteProcess() for details. Also configurable using the
-        /// "browser-subprocess-path" command-line switch. Default is CefSharp.BrowserSubprocess.exe
-        /// </summary>
-        property String^ BrowserSubprocessPath
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->browser_subprocess_path); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->browser_subprocess_path, value); }
-        }
-
-        /// <summary>
-        /// The location where cache data will be stored on disk. If empty then
-        /// browsers will be created in "incognito mode" where in-memory caches are
-        /// used for storage and no data is persisted to disk. HTML5 databases such as
-        /// localStorage will only persist across sessions if a cache path is
-        /// specified. Can be overridden for individual CefRequestContext instances via
-        /// the RequestContextSettings.CachePath value.
-        /// </summary>
-        property String^ CachePath
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->cache_path); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->cache_path, value); }
-        }
-
-        /// <summary>
-        /// The location where user data such as spell checking dictionary files will
-        /// be stored on disk. If empty then the default platform-specific user data
-        /// directory will be used ("~/.cef_user_data" directory on Linux,
-        /// "~/Library/Application Support/CEF/User Data" directory on Mac OS X,
-        /// "Local Settings\Application Data\CEF\User Data" directory under the user
-        /// profile directory on Windows).
-        /// </summary>
-        property String^ UserDataPath
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->user_data_path); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->user_data_path, value); }
-        }
-
-        /// <summary>
-        /// Set to true in order to completely ignore SSL certificate errors.
-        /// This is NOT recommended.
-        /// </summary>
-        property bool IgnoreCertificateErrors
-        {
-            bool get() { return _cefSettings->ignore_certificate_errors == 1; }
-            void set(bool value) { _cefSettings->ignore_certificate_errors = value; }
-        }
-
-        /// <summary>
-        /// The locale string that will be passed to WebKit. If empty the default
-        /// locale of "en-US" will be used. Also configurable using the "lang"
-        /// command-line switch.
-        /// </summary>
-        property String^ Locale
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->locale); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->locale, value); }
-        }
-
-        /// <summary>
-        /// The fully qualified path for the locales directory. If this value is empty
-        /// the locales directory must be located in the module directory.
-        /// Also configurable using the "locales-dir-path" command-line switch.
-        /// </summary>
-        property String^ LocalesDirPath
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->locales_dir_path); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->locales_dir_path, value); }
-        }
-
-        /// <summary>
-        /// The fully qualified path for the resources directory. If this value is
-        /// empty the cef.pak and/or devtools_resources.pak files must be located in
-        /// the module directory. Also configurable using the "resources-dir-path" command-line
-        /// switch.
-        /// </summary>
-        property String^ ResourcesDirPath
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->resources_dir_path); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->resources_dir_path, value); }
-        }		
-
-        /// <summary>
-        /// The directory and file name to use for the debug log. If empty a default
-        /// log file name and location will be used. On Windows and Linux a "debug.log"
-        /// file will be written in the main executable directory.
-        /// Also configurable using the"log-file" command-line switch.
-        /// </summary>
-        property String^ LogFile
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->log_file); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->log_file, value); }
-        }
-
-        /// <summary>
-        /// The log severity. Only messages of this severity level or higher will be
-        /// logged. Also configurable using the "log-severity" command-line switch with
-        /// a value of "verbose", "info", "warning", "error", "error-report" or
-        /// "disable".
-        /// </summary>
-        property CefSharp::LogSeverity LogSeverity
-        {
-            CefSharp::LogSeverity get() { return (CefSharp::LogSeverity)_cefSettings->log_severity; }
-            void set(CefSharp::LogSeverity value) { _cefSettings->log_severity = (cef_log_severity_t)value; }
-        }
-
-        /// <summary>
-        /// Custom flags that will be used when initializing the V8 JavaScript engine.
-        /// The consequences of using custom flags may not be well tested. Also
-        /// configurable using the "js-flags" command-line switch.
-        /// </summary>
-        property String^ JavascriptFlags
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->javascript_flags); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->javascript_flags, value); }
-        }
-
-        /// <summary>
-        /// Set to true to disable loading of pack files for resources and locales.
-        /// A resource bundle handler must be provided for the browser and render
-        /// processes via CefApp::GetResourceBundleHandler() if loading of pack files
-        /// is disabled. Also configurable using the "disable-pack-loading" command-
-        /// line switch.
-        /// </summary>
-        property bool PackLoadingDisabled
-        {
-            bool get() { return _cefSettings->pack_loading_disabled == 1; }
-            void set(bool value) { _cefSettings->pack_loading_disabled = value; }
-        }
-
-        /// <summary>
-        /// Value that will be inserted as the product portion of the default
-        /// User-Agent string. If empty the Chromium product version will be used. If
-        /// |userAgent| is specified this value will be ignored. Also configurable
-        /// using the "product-version" command-line switch.
-        /// </summary>
-        property String^ ProductVersion
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->product_version); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->product_version, value); }
-        }
-
-        /// <summary>
-        /// Set to a value between 1024 and 65535 to enable remote debugging on the
-        /// specified port. For example, if 8080 is specified the remote debugging URL
-        /// will be http://localhost:8080. CEF can be remotely debugged from any CEF or
-        /// Chrome browser window. Also configurable using the "remote-debugging-port"
-        /// command-line switch.
-        /// </summary>
-        property int RemoteDebuggingPort
-        {
-            int get() { return _cefSettings->remote_debugging_port; }
-            void set(int value) { _cefSettings->remote_debugging_port = value; }
-        }
-
-        /// <summary>
-        /// The number of stack trace frames to capture for uncaught exceptions.
-        /// Specify a positive value to enable the CefRenderProcessHandler::
-        /// OnUncaughtException() callback. Specify 0 (default value) and
-        /// OnUncaughtException() will not be called. Also configurable using the
-        /// "uncaught-exception-stack-size" command-line switch.
-        /// </summary>
-        property int UncaughtExceptionStackSize
-        {
-            int get() { return _cefSettings->uncaught_exception_stack_size; }
-            void set(int value) { _cefSettings->uncaught_exception_stack_size = value; }
-        }		
-
-        /// <summary>
-        /// Value that will be returned as the User-Agent HTTP header. If empty the
-        /// default User-Agent string will be used. Also configurable using the
-        /// "user-agent" command-line switch.
-        /// </summary>
-        property String^ UserAgent
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->user_agent); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->user_agent, value); }
-        }
-
-        /// <summary>
-        /// Set to true (1) to enable windowless (off-screen) rendering support. Do not
-        /// enable this value if the application does not use windowless rendering as
-        /// it may reduce rendering performance on some systems.
-        /// </summary>
-        property bool WindowlessRenderingEnabled
-        {
-            bool get() { return _cefSettings->windowless_rendering_enabled == 1; }
-            void set(bool value) { _cefSettings->windowless_rendering_enabled = value; }
-        }
-
-        /// <summary>
-        /// To persist session cookies (cookies without an expiry date or validity
-        /// interval) by default when using the global cookie manager set this value to
-        /// true. Session cookies are generally intended to be transient and most
-        /// Web browsers do not persist them. A CachePath value must also be
-        /// specified to enable this feature. Also configurable using the
-        /// "persist-session-cookies" command-line switch. Can be overridden for
-        /// individual RequestContext instances via the
-        /// RequestContextSettings.PersistSessionCookies value.
-        /// </summary>
-        property bool PersistSessionCookies
-        {
-            bool get() { return _cefSettings->persist_session_cookies == 1; }
-            void set(bool value) { _cefSettings->persist_session_cookies = value; }
-        }
-
-        /// <summary>
-        /// To persist user preferences as a JSON file in the cache path directory set
-        /// this value to true. A CachePath value must also be specified
-        /// to enable this feature. Also configurable using the
-        /// "persist-user-preferences" command-line switch. Can be overridden for
-        /// individual RequestContext instances via the
-        /// RequestContextSettings.PersistUserPreferences value.
-        /// </summary>
-        property bool PersistUserPreferences
-        {
-            bool get() { return _cefSettings->persist_user_preferences == 1; }
-            void set(bool value) { _cefSettings->persist_user_preferences = value; }
-        }
-        
-        /// <summary>
-        /// Comma delimited ordered list of language codes without any whitespace that
-        /// will be used in the "Accept-Language" HTTP header. May be set globally
-        /// using the CefSettings.AcceptLanguageList value. If both values are
-        /// empty then "en-US,en" will be used.
-        /// </summary>
-        property String^ AcceptLanguageList
-        {
-            String^ get() { return StringUtils::ToClr(_cefSettings->accept_language_list); }
-            void set(String^ value) { StringUtils::AssignNativeFromClr(_cefSettings->accept_language_list, value); }
-        }
-
-        /// <summary>
-        /// If true a message will be sent from the render subprocess to the
-        /// browser when a DOM node (or no node) gets focus. The default is
-        /// false.
-        /// </summary>
-        property bool FocusedNodeChangedEnabled
-        {
-            bool get() { return _focusedNodeChangedEnabled; }
-            void set(bool value) { _focusedNodeChangedEnabled = value; }
-        }
-
-        /// <summary>
-        /// Registers a custom scheme using the provided settings.
-        /// </summary>
-        /// <param name="cefCustomScheme">The CefCustomScheme which provides the details about the scheme.</param>
-        void RegisterScheme(CefCustomScheme^ cefCustomScheme)
-        {
-            _cefCustomSchemes->Add(cefCustomScheme);
-        }
-
-        /// <summary>
-        /// Registers an extension with the provided settings.
-        /// </summary>
-        /// <param name="extension">The CefExtension that contains the extension code.</param>
-        void RegisterExtension(CefExtension^ extension)
-        {
-            if (_cefExtensions->Contains(extension))
-            {
-                throw gcnew ArgumentException("An extension with the same name is already registered.", "extension");
-            }
-            _cefExtensions->Add(extension);
-        }
-
-        /// <summary>
-        /// Set command line argument to disable GPU Acceleration, this will disable WebGL.
-        /// </summary>
-        void DisableGpuAcceleration()
-        {
-            if (!_cefCommandLineArgs->ContainsKey("disable-gpu"))
-            {
-                _cefCommandLineArgs->Add("disable-gpu", "1");
-            }
-        }
-
-        /// <summary>
-        /// Set command line arguments for best OSR (Offscreen and WPF) Rendering performance
-        /// This will disable WebGL, look at the source to determine which flags best suite
-        /// your requirements.
-        /// </summary>
-        void SetOffScreenRenderingBestPerformanceArgs()
-        {
-            // Use software rendering and compositing (disable GPU) for increased FPS
-            // and decreased CPU usage. This will also disable WebGL so remove these
-            // switches if you need that capability.
-            // See https://bitbucket.org/chromiumembedded/cef/issues/1257 for details.
-            if (!_cefCommandLineArgs->ContainsKey("disable-gpu"))
-            {
-                _cefCommandLineArgs->Add("disable-gpu", "1");
-            }
-
-            if (!_cefCommandLineArgs->ContainsKey("disable-gpu-compositing"))
-            {
-                _cefCommandLineArgs->Add("disable-gpu-compositing", "1");
-            }
-
-            // Synchronize the frame rate between all processes. This results in
-            // decreased CPU usage by avoiding the generation of extra frames that
-            // would otherwise be discarded. The frame rate can be set at browser
-            // creation time via CefBrowserSettings.windowless_frame_rate or changed
-            // dynamically using CefBrowserHost::SetWindowlessFrameRate. In cefclient
-            // it can be set via the command-line using `--off-screen-frame-rate=XX`.
-            // See https://bitbucket.org/chromiumembedded/cef/issues/1368 for details.
-            if (!_cefCommandLineArgs->ContainsKey("enable-begin-frame-scheduling"))
-            {
-                _cefCommandLineArgs->Add("enable-begin-frame-scheduling", "1");
-            }
-        }
-    };
-}

+ 0 - 105
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CookieManager.cpp

@@ -1,105 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include "CookieManager.h"
-
-#include "Internals\CookieVisitor.h"
-#include "Internals\CefCompletionCallbackAdapter.h"
-#include "Internals\CefSetCookieCallbackAdapter.h"
-#include "Internals\CefDeleteCookiesCallbackAdapter.h"
-#include "Cef.h"
-
-using namespace CefSharp::Internals;
-
-namespace CefSharp
-{
-	void CookieManager::ThrowIfDisposed()
-	{
-		if (_cookieManager.get() == nullptr)
-		{
-			throw gcnew ObjectDisposedException("CookieManager");
-		}
-	}
-
-	bool CookieManager::DeleteCookies(String^ url, String^ name, IDeleteCookiesCallback^ callback)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CefDeleteCookiesCallback> wrapper = callback == nullptr ? NULL : new CefDeleteCookiesCallbackAdapter(callback);
-
-		return _cookieManager->DeleteCookies(StringUtils::ToNative(url), StringUtils::ToNative(name), wrapper);
-	}
-
-	bool CookieManager::SetCookie(String^ url, Cookie^ cookie, ISetCookieCallback^ callback)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CefSetCookieCallback> wrapper = callback == nullptr ? NULL : new CefSetCookieCallbackAdapter(callback);
-
-		CefCookie c;
-		StringUtils::AssignNativeFromClr(c.name, cookie->Name);
-		StringUtils::AssignNativeFromClr(c.value, cookie->Value);
-		StringUtils::AssignNativeFromClr(c.domain, cookie->Domain);
-		StringUtils::AssignNativeFromClr(c.path, cookie->Path);
-		c.secure = cookie->Secure;
-		c.httponly = cookie->HttpOnly;
-		c.has_expires = cookie->Expires.HasValue;
-		if (cookie->Expires.HasValue)
-		{
-			auto expires = cookie->Expires.Value;
-			c.expires = CefTime(DateTimeUtils::ToCefTime(expires));
-		}
-
-		c.creation = CefTime(DateTimeUtils::ToCefTime(cookie->Creation));
-		c.last_access = CefTime(DateTimeUtils::ToCefTime(cookie->LastAccess));
-
-		return _cookieManager->SetCookie(StringUtils::ToNative(url), c, wrapper);
-	}
-
-	bool CookieManager::SetStoragePath(String^ path, bool persistSessionCookies, ICompletionCallback^ callback)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CefCompletionCallback> wrapper = callback == nullptr ? NULL : new CefCompletionCallbackAdapter(callback);
-
-		return _cookieManager->SetStoragePath(StringUtils::ToNative(path), persistSessionCookies, wrapper);
-	}
-
-	void CookieManager::SetSupportedSchemes(cli::array<String^>^ schemes, ICompletionCallback^ callback)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CefCompletionCallback> wrapper = callback == nullptr ? NULL : new CefCompletionCallbackAdapter(callback);
-
-		_cookieManager->SetSupportedSchemes(StringUtils::ToNative(schemes), wrapper);
-	}
-
-	bool CookieManager::VisitAllCookies(ICookieVisitor^ visitor)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CookieVisitor> cookieVisitor = new CookieVisitor(visitor);
-
-		return _cookieManager->VisitAllCookies(cookieVisitor);
-	}
-
-	bool CookieManager::VisitUrlCookies(String^ url, bool includeHttpOnly, ICookieVisitor^ visitor)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CookieVisitor> cookieVisitor = new CookieVisitor(visitor);
-
-		return _cookieManager->VisitUrlCookies(StringUtils::ToNative(url), includeHttpOnly, cookieVisitor);
-	}
-
-	bool CookieManager::FlushStore(ICompletionCallback^ callback)
-	{
-		ThrowIfDisposed();
-
-		CefRefPtr<CefCompletionCallback> wrapper = callback == nullptr ? NULL : new CefCompletionCallbackAdapter(callback);
-
-		return _cookieManager->FlushStore(wrapper);
-	}
-}

+ 0 - 81
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/CookieManager.h

@@ -1,81 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include/cef_cookie.h"
-#include "internals\CefCompletionCallbackAdapter.h"
-
-namespace CefSharp
-{
-	public ref class CookieManager : public ICookieManager
-	{
-	private:
-		MCefRefPtr<CefCookieManager> _cookieManager;
-
-		void ThrowIfDisposed();
-
-	internal:
-		CookieManager(const CefRefPtr<CefCookieManager> &cookieManager)
-			:_cookieManager(cookieManager.get())
-		{
-
-		}
-
-		operator CefRefPtr<CefCookieManager>()
-		{
-			if (this == nullptr)
-			{
-				return NULL;
-			}
-			return _cookieManager.get();
-		}
-
-	public:
-		///
-		// Creates a new cookie manager. If |path| is empty data will be stored in
-		// memory only. Otherwise, data will be stored at the specified |path|. To
-		// persist session cookies (cookies without an expiry date or validity
-		// interval) set |persist_session_cookies| to true. Session cookies are
-		// generally intended to be transient and most Web browsers do not persist
-		// them. If |callback| is non-NULL it will be executed asnychronously on the
-		// IO thread after the manager's storage has been initialized.
-		///
-		/*--cef(optional_param=path,optional_param=callback)--*/
-		CookieManager(String^ path, bool persistSessionCookies, ICompletionCallback^ callback)
-		{
-			CefRefPtr<CefCompletionCallback> wrapper = callback == nullptr ? NULL : new CefCompletionCallbackAdapter(callback);
-
-			_cookieManager = CefCookieManager::CreateManager(StringUtils::ToNative(path), persistSessionCookies, wrapper);
-		}
-
-		!CookieManager()
-		{
-			this->_cookieManager = nullptr;
-		}
-
-		~CookieManager()
-		{
-			this->!CookieManager();
-		}
-
-		virtual bool DeleteCookies(String^ url, String^ name, IDeleteCookiesCallback^ callback);
-		virtual bool SetCookie(String^ url, Cookie^ cookie, ISetCookieCallback^ callback);
-		virtual bool SetStoragePath(String^ path, bool persistSessionSookies, ICompletionCallback^ callback);
-		virtual void SetSupportedSchemes(cli::array<String^>^ schemes, ICompletionCallback^ callback);
-		virtual bool VisitAllCookies(ICookieVisitor^ visitor);
-		virtual bool VisitUrlCookies(String^ url, bool includeHttpOnly, ICookieVisitor^ visitor);
-		virtual bool FlushStore(ICompletionCallback^ callback);
-
-		virtual property bool IsDisposed
-		{
-			bool get()
-			{
-				return !_cookieManager.get();
-			}
-		}
-	};
-}

+ 0 - 62
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefAuthCallbackWrapper.h

@@ -1,62 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_auth_callback.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefAuthCallbackWrapper : public IAuthCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefAuthCallback> _callback;
-            IFrame^ _frame;
-
-        public:
-            CefAuthCallbackWrapper(CefRefPtr<CefAuthCallback> &callback, IFrame^ frame)
-                : _callback(callback), _frame(frame)
-            {
-            
-            }
-
-            !CefAuthCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefAuthCallbackWrapper()
-            {
-                this->!CefAuthCallbackWrapper();
-                delete _frame;
-                _frame = nullptr;
-
-                _disposed = true;
-            }
-
-            virtual void Cancel()
-            {
-                ThrowIfDisposed();
-
-                _callback->Cancel();
-
-                delete this;
-            }
-
-            virtual void Continue(String^ username, String^ password)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(StringUtils::ToNative(username), StringUtils::ToNative(password));
-
-                delete this;
-            }
-        };
-    }
-}

+ 0 - 51
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBeforeDownloadCallbackWrapper.h

@@ -1,51 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_download_handler.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefBeforeDownloadCallbackWrapper : public IBeforeDownloadCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefBeforeDownloadCallback> _callback;
-
-        public:
-            CefBeforeDownloadCallbackWrapper(CefRefPtr<CefBeforeDownloadCallback> &callback)
-                : _callback(callback)
-            {
-            
-            }
-
-            !CefBeforeDownloadCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefBeforeDownloadCallbackWrapper()
-            {
-                this->!CefBeforeDownloadCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Continue(String^ downloadPath, bool showDialog)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(StringUtils::ToNative(downloadPath), showDialog);
-
-                delete this;
-            }
-        };
-    }
-}
-

+ 0 - 620
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBrowserHostWrapper.cpp

@@ -1,620 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include "include\cef_client.h"
-
-#include "CefBrowserHostWrapper.h"
-#include "CefDragDataWrapper.h"
-#include "CefPdfPrintCallbackWrapper.h"
-#include "WindowInfo.h"
-#include "CefTaskScheduler.h"
-#include "Cef.h"
-#include "RequestContext.h"
-#include "CefNavigationEntryVisitorAdapter.h"
-
-void CefBrowserHostWrapper::DragTargetDragEnter(IDragData^ dragData, MouseEvent mouseEvent, DragOperationsMask allowedOperations)
-{
-    ThrowIfDisposed();
-
-    auto dragDataWrapper = static_cast<CefDragDataWrapper^>(dragData);
-    dragDataWrapper->ResetFileContents(); // Recommended by documentation to reset before calling DragEnter
-    _browserHost->DragTargetDragEnter(static_cast<CefRefPtr<CefDragData>>(dragDataWrapper), GetCefMouseEvent(mouseEvent), (CefBrowserHost::DragOperationsMask) allowedOperations);
-}
-
-void CefBrowserHostWrapper::DragTargetDragOver(MouseEvent mouseEvent, DragOperationsMask allowedOperations)
-{
-    ThrowIfDisposed();
-
-    _browserHost->DragTargetDragOver(GetCefMouseEvent(mouseEvent), (CefBrowserHost::DragOperationsMask) allowedOperations);
-}
-
-void CefBrowserHostWrapper::DragTargetDragDrop(MouseEvent mouseEvent)
-{
-    ThrowIfDisposed();
-
-    _browserHost->DragTargetDrop(GetCefMouseEvent(mouseEvent));
-}
-
-void CefBrowserHostWrapper::DragSourceEndedAt(int x, int y, DragOperationsMask op)
-{
-    ThrowIfDisposed();
-
-    _browserHost->DragSourceEndedAt(x, y, (CefBrowserHost::DragOperationsMask)op);
-}
-
-void CefBrowserHostWrapper::DragTargetDragLeave()
-{
-    ThrowIfDisposed();
-
-    _browserHost->DragTargetDragLeave();
-}
-
-void CefBrowserHostWrapper::DragSourceSystemDragEnded()
-{
-    ThrowIfDisposed();
-
-    _browserHost->DragSourceSystemDragEnded();
-}
-
-void CefBrowserHostWrapper::StartDownload(String^ url)
-{
-    ThrowIfDisposed();
-
-    _browserHost->StartDownload(StringUtils::ToNative(url));
-}
-
-void CefBrowserHostWrapper::Print()
-{
-    ThrowIfDisposed();
-
-    _browserHost->Print();
-}
-
-void CefBrowserHostWrapper::PrintToPdf(String^ path, PdfPrintSettings^ settings, IPrintToPdfCallback^ callback)
-{
-    ThrowIfDisposed();
-
-    CefPdfPrintSettings nativeSettings;
-    if (settings != nullptr)
-    {
-        StringUtils::AssignNativeFromClr(nativeSettings.header_footer_title, settings->HeaderFooterTitle);
-        StringUtils::AssignNativeFromClr(nativeSettings.header_footer_url, settings->HeaderFooterUrl);
-        nativeSettings.backgrounds_enabled = settings->BackgroundsEnabled ? 1 : 0;
-        nativeSettings.header_footer_enabled = settings->HeaderFooterEnabled ? 1 : 0;
-        nativeSettings.landscape = settings->Landscape ? 1 : 0;
-        nativeSettings.selection_only = settings->SelectionOnly ? 1 : 0;
-        nativeSettings.margin_bottom = settings->MarginBottom;
-        nativeSettings.margin_top = settings->MarginTop;
-        nativeSettings.margin_left = settings->MarginLeft;
-        nativeSettings.margin_right = settings->MarginRight;
-        nativeSettings.scale_factor = settings->ScaleFactor;
-        nativeSettings.page_height = settings->PageHeight;
-        nativeSettings.page_width = settings->PageWidth;
-        nativeSettings.margin_type = static_cast<cef_pdf_print_margin_type_t>(settings->MarginType);
-    }
-
-    _browserHost->PrintToPDF(StringUtils::ToNative(path), nativeSettings, new CefPdfPrintCallbackWrapper(callback));
-}
-
-void CefBrowserHostWrapper::SetZoomLevel(double zoomLevel)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetZoomLevel(zoomLevel);
-}
-
-Task<double>^ CefBrowserHostWrapper::GetZoomLevelAsync()
-{
-    ThrowIfDisposed();
-
-    if (CefCurrentlyOn(TID_UI))
-    {
-        auto taskSource = gcnew TaskCompletionSource<double>();
-
-        CefSharp::Internals::TaskExtensions::TrySetResultAsync<double>(taskSource, GetZoomLevelOnUI());
-        return taskSource->Task;
-    }
-    return Cef::UIThreadTaskFactory->StartNew(gcnew Func<double>(this, &CefBrowserHostWrapper::GetZoomLevelOnUI));
-}
-
-IntPtr CefBrowserHostWrapper::GetWindowHandle()
-{
-    ThrowIfDisposed();
-
-    return IntPtr(_browserHost->GetWindowHandle());
-}
-
-void CefBrowserHostWrapper::CloseBrowser(bool forceClose)
-{
-    ThrowIfDisposed();
-
-    _browserHost->CloseBrowser(forceClose);
-}
-
-void CefBrowserHostWrapper::ShowDevTools(IWindowInfo^ windowInfo, int inspectElementAtX, int inspectElementAtY)
-{
-    ThrowIfDisposed();
-
-    CefBrowserSettings settings;
-    CefWindowInfo nativeWindowInfo;
-
-    if(windowInfo == nullptr)
-    {
-        nativeWindowInfo.SetAsPopup(_browserHost->GetWindowHandle(), "DevTools");
-    }
-    else
-    {
-        auto cefWindowInfoWrapper = static_cast<WindowInfo^>(windowInfo);
-
-        nativeWindowInfo = *cefWindowInfoWrapper->GetWindowInfo();
-    }
-
-    _browserHost->ShowDevTools(nativeWindowInfo, _browserHost->GetClient(), settings, CefPoint(inspectElementAtX, inspectElementAtY));
-}
-
-void CefBrowserHostWrapper::CloseDevTools()
-{
-    ThrowIfDisposed();
-
-    _browserHost->CloseDevTools();
-}
-
-bool CefBrowserHostWrapper::HasDevTools::get()
-{
-    ThrowIfDisposed();
-
-    return _browserHost->HasDevTools();
-}
-
-void CefBrowserHostWrapper::AddWordToDictionary(String^ word)
-{
-    ThrowIfDisposed();
-
-    _browserHost->AddWordToDictionary(StringUtils::ToNative(word));
-}
-
-void CefBrowserHostWrapper::ReplaceMisspelling(String^ word)
-{
-    ThrowIfDisposed();
-
-    _browserHost->ReplaceMisspelling(StringUtils::ToNative(word));
-}
-
-void CefBrowserHostWrapper::Find(int identifier, String^ searchText, bool forward, bool matchCase, bool findNext)
-{
-    ThrowIfDisposed();
-
-    _browserHost->Find(identifier, StringUtils::ToNative(searchText), forward, matchCase, findNext);
-}
-
-void CefBrowserHostWrapper::StopFinding(bool clearSelection)
-{
-    ThrowIfDisposed();
-
-    _browserHost->StopFinding(clearSelection);
-}
-
-void CefBrowserHostWrapper::SetFocus(bool focus)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetFocus(focus);
-}
-
-void CefBrowserHostWrapper::SendFocusEvent(bool setFocus)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SendFocusEvent(setFocus);
-}
-
-void CefBrowserHostWrapper::SendKeyEvent(KeyEvent keyEvent)
-{
-    ThrowIfDisposed();
-
-    CefKeyEvent nativeKeyEvent;
-    nativeKeyEvent.focus_on_editable_field = keyEvent.FocusOnEditableField == 1;
-    nativeKeyEvent.is_system_key = keyEvent.IsSystemKey == 1;
-    nativeKeyEvent.modifiers = (uint32)keyEvent.Modifiers;
-    nativeKeyEvent.type = (cef_key_event_type_t)keyEvent.Type;
-    nativeKeyEvent.native_key_code = keyEvent.NativeKeyCode;
-    nativeKeyEvent.windows_key_code = keyEvent.WindowsKeyCode;
-        
-    _browserHost->SendKeyEvent(nativeKeyEvent);
-}
-
-void CefBrowserHostWrapper::SendKeyEvent(int message, int wParam, int lParam)
-{
-    ThrowIfDisposed();
-
-    CefKeyEvent keyEvent;
-    keyEvent.windows_key_code = wParam;
-    keyEvent.native_key_code = lParam;
-    keyEvent.is_system_key = message == WM_SYSCHAR ||
-        message == WM_SYSKEYDOWN ||
-        message == WM_SYSKEYUP;
-
-    if (message == WM_KEYDOWN || message == WM_SYSKEYDOWN)
-    {
-        keyEvent.type = KEYEVENT_RAWKEYDOWN;
-    }
-    else if (message == WM_KEYUP || message == WM_SYSKEYUP)
-    {
-        keyEvent.type = KEYEVENT_KEYUP;
-    }
-    else
-    {
-        keyEvent.type = KEYEVENT_CHAR;
-    }
-    keyEvent.modifiers = GetCefKeyboardModifiers(wParam, lParam);
-
-    _browserHost->SendKeyEvent(keyEvent);
-}
-
-double CefBrowserHostWrapper::GetZoomLevelOnUI()
-{
-    if (_disposed)
-    {
-        return 0.0;
-    }
-
-    CefTaskScheduler::EnsureOn(TID_UI, "CefBrowserHostWrapper::GetZoomLevel");
-
-    //Don't throw exception if no browser host here as it's not easy to handle
-    if(_browserHost.get())
-    {
-        return _browserHost->GetZoomLevel();
-    }
-
-    return 0.0;	
-}
-
-void CefBrowserHostWrapper::SendMouseWheelEvent(MouseEvent mouseEvent, int deltaX, int deltaY)
-{
-    ThrowIfDisposed();
-
-    if (_browserHost.get())
-    {
-        CefMouseEvent m;
-        m.x = mouseEvent.X;
-        m.y = mouseEvent.Y;
-        m.modifiers = (uint32)mouseEvent.Modifiers;
-
-        _browserHost->SendMouseWheelEvent(m, deltaX, deltaY);
-    }
-}
-
-void CefBrowserHostWrapper::SetAccessibilityState(CefState accessibilityState)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetAccessibilityState((cef_state_t)accessibilityState);
-}
-
-void CefBrowserHostWrapper::SetAutoResizeEnabled(bool enabled, Size minSize, Size maxSize)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetAutoResizeEnabled(enabled, CefSize(minSize.Width, minSize.Height), CefSize(maxSize.Width, maxSize.Height));
-}
-
-void CefBrowserHostWrapper::Invalidate(PaintElementType type)
-{
-    ThrowIfDisposed();
-
-    _browserHost->Invalidate((CefBrowserHost::PaintElementType)type);
-}
-
-void CefBrowserHostWrapper::ImeSetComposition(String^ text, cli::array<CompositionUnderline>^ underlines, Nullable<Range> selectionRange)
-{
-    ThrowIfDisposed();
-
-    std::vector<CefCompositionUnderline> underlinesVector = std::vector<CefCompositionUnderline>();
-    CefRange range;
-
-    if (underlines != nullptr && underlines->Length > 0)
-    {
-        for each (CompositionUnderline underline in underlines)
-        {
-            auto c = CefCompositionUnderline();
-            c.range = CefRange(underline.Range.From, underline.Range.To);
-            c.color = underline.Color;
-            c.background_color = underline.BackgroundColor;
-            c.thick = (int)underline.Thick;
-            underlinesVector.push_back(c);
-        }
-    }
-
-    if (selectionRange.HasValue)
-    {
-        range = CefRange(selectionRange.Value.From, selectionRange.Value.To);
-    }
-
-    //Replacement Range is Mac OSX only
-    _browserHost->ImeSetComposition(StringUtils::ToNative(text), underlinesVector, CefRange(), range);
-}
-
-void CefBrowserHostWrapper::ImeCommitText(String^ text)
-{
-    ThrowIfDisposed();
-
-    //Range and cursor position are Mac OSX only
-    _browserHost->ImeCommitText(StringUtils::ToNative(text), CefRange(), NULL);
-}
-
-void CefBrowserHostWrapper::ImeFinishComposingText(bool keepSelection)
-{
-    ThrowIfDisposed();
-
-    _browserHost->ImeFinishComposingText(keepSelection);
-}
-
-void CefBrowserHostWrapper::ImeCancelComposition()
-{
-    ThrowIfDisposed();
-
-    _browserHost->ImeCancelComposition();
-}
-
-void CefBrowserHostWrapper::SendMouseClickEvent(MouseEvent mouseEvent, MouseButtonType mouseButtonType, bool mouseUp, int clickCount)
-{
-    ThrowIfDisposed();
-
-    CefMouseEvent m;
-    m.x = mouseEvent.X;
-    m.y = mouseEvent.Y;
-    m.modifiers = (uint32)mouseEvent.Modifiers;
-
-    _browserHost->SendMouseClickEvent(m, (CefBrowserHost::MouseButtonType) mouseButtonType, mouseUp, clickCount);
-}
-
-void CefBrowserHostWrapper::SendMouseMoveEvent(MouseEvent mouseEvent, bool mouseLeave)
-{
-    ThrowIfDisposed();
-
-    CefMouseEvent m;
-    m.x = mouseEvent.X;
-    m.y = mouseEvent.Y;
-    m.modifiers = (uint32)mouseEvent.Modifiers;
-
-    _browserHost->SendMouseMoveEvent(m, mouseLeave);
-}
-
-void CefBrowserHostWrapper::WasResized()
-{
-    ThrowIfDisposed();
-
-    _browserHost->WasResized();
-}
-
-void CefBrowserHostWrapper::WasHidden(bool hidden)
-{
-    ThrowIfDisposed();
-
-    _browserHost->WasHidden(hidden);
-}
-
-void CefBrowserHostWrapper::GetNavigationEntries(INavigationEntryVisitor^ visitor, bool currentOnly)
-{
-    ThrowIfDisposed();
-
-    auto navEntryVisitor = new CefNavigationEntryVisitorAdapter(visitor);
-
-    _browserHost->GetNavigationEntries(navEntryVisitor, currentOnly);
-}
-
-NavigationEntry^ CefBrowserHostWrapper::GetVisibleNavigationEntry()
-{
-    ThrowIfDisposed();
-
-    auto entry = _browserHost->GetVisibleNavigationEntry();
-
-    NavigationEntry^ navEntry;
-    SslStatus^ sslStatus;
-
-    //TODO: This code is duplicated in CefNavigationEntryVisitor
-    //TODO: NavigationEntry is a struct and so is SslStatus, this should
-    // be reviewed as it's likely not ideal.
-    if (entry->IsValid())
-    {
-        auto time = entry->GetCompletionTime();
-        DateTime completionTime = CefTimeUtils::ConvertCefTimeToDateTime(time.GetDoubleT());
-        auto ssl = entry->GetSSLStatus();
-        X509Certificate2^ sslCertificate;
-
-        if (ssl.get())
-        {
-            auto certificate = ssl->GetX509Certificate();
-            if (certificate.get())
-            {
-                auto derEncodedCertificate = certificate->GetDEREncoded();
-                auto byteCount = derEncodedCertificate->GetSize();
-                if (byteCount > 0)
-                {
-                    auto bytes = gcnew cli::array<Byte>(byteCount);
-                    pin_ptr<Byte> src = &bytes[0]; // pin pointer to first element in arr
-
-                    derEncodedCertificate->GetData(static_cast<void*>(src), byteCount, 0);
-
-                    sslCertificate = gcnew X509Certificate2(bytes);
-                }
-            }
-            sslStatus = gcnew SslStatus(ssl->IsSecureConnection(), (CertStatus)ssl->GetCertStatus(), (SslVersion)ssl->GetSSLVersion(), (SslContentStatus)ssl->GetContentStatus(), sslCertificate);
-        }
-
-        navEntry = gcnew NavigationEntry(true, completionTime, StringUtils::ToClr(entry->GetDisplayURL()), entry->GetHttpStatusCode(), StringUtils::ToClr(entry->GetOriginalURL()), StringUtils::ToClr(entry->GetTitle()), (TransitionType)entry->GetTransitionType(), StringUtils::ToClr(entry->GetURL()), entry->HasPostData(), true, sslStatus);
-    }
-    else
-    {
-        //Invalid nav entry
-        navEntry = gcnew NavigationEntry(true, DateTime::MinValue, nullptr, -1, nullptr, nullptr, (TransitionType)-1, nullptr, false, false, sslStatus);
-    }
-
-    return navEntry;
-}
-
-void CefBrowserHostWrapper::NotifyMoveOrResizeStarted()
-{
-    ThrowIfDisposed();
-
-    _browserHost->NotifyMoveOrResizeStarted();
-}
-
-void CefBrowserHostWrapper::NotifyScreenInfoChanged()
-{
-    ThrowIfDisposed();
-
-    _browserHost->NotifyScreenInfoChanged();
-}
-
-int CefBrowserHostWrapper::WindowlessFrameRate::get()
-{
-    ThrowIfDisposed();
-
-    return _browserHost->GetWindowlessFrameRate();
-}
-
-void CefBrowserHostWrapper::WindowlessFrameRate::set(int val)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetWindowlessFrameRate(val);
-}
-
-bool CefBrowserHostWrapper::MouseCursorChangeDisabled::get()
-{
-    ThrowIfDisposed();
-
-    return _browserHost->IsMouseCursorChangeDisabled();
-}
-
-void CefBrowserHostWrapper::MouseCursorChangeDisabled::set(bool val)
-{
-    ThrowIfDisposed();
-
-    _browserHost->SetMouseCursorChangeDisabled(val);
-}
-
-bool CefBrowserHostWrapper::WindowRenderingDisabled::get()
-{
-    ThrowIfDisposed();
-
-    return _browserHost->IsWindowRenderingDisabled();
-}
-
-IntPtr CefBrowserHostWrapper::GetOpenerWindowHandle()
-{
-    ThrowIfDisposed();
-
-    return IntPtr(_browserHost->GetOpenerWindowHandle());
-}
-
-void CefBrowserHostWrapper::SendCaptureLostEvent()
-{
-    ThrowIfDisposed();
-
-    _browserHost->SendCaptureLostEvent();
-}
-
-
-IRequestContext^ CefBrowserHostWrapper::RequestContext::get()
-{
-    ThrowIfDisposed();
-
-    return gcnew CefSharp::RequestContext(_browserHost->GetRequestContext());
-}
-
-CefMouseEvent CefBrowserHostWrapper::GetCefMouseEvent(MouseEvent mouseEvent)
-{
-    CefMouseEvent cefMouseEvent;
-    cefMouseEvent.x = mouseEvent.X;
-    cefMouseEvent.y = mouseEvent.Y;
-    cefMouseEvent.modifiers = (uint32)mouseEvent.Modifiers;
-    return cefMouseEvent;
-}
-
-//Code imported from
-//https://bitbucket.org/chromiumembedded/branches-2062-cef3/src/a073e92426b3967f1fc2f1d3fd7711d809eeb03a/tests/cefclient/cefclient_osr_widget_win.cpp?at=master#cl-361
-int CefBrowserHostWrapper::GetCefKeyboardModifiers(WPARAM wparam, LPARAM lparam)
-{
-    int modifiers = 0;
-    if (IsKeyDown(VK_SHIFT))
-        modifiers |= EVENTFLAG_SHIFT_DOWN;
-    if (IsKeyDown(VK_CONTROL))
-        modifiers |= EVENTFLAG_CONTROL_DOWN;
-    if (IsKeyDown(VK_MENU))
-        modifiers |= EVENTFLAG_ALT_DOWN;
-
-    // Low bit set from GetKeyState indicates "toggled".
-    if (::GetKeyState(VK_NUMLOCK) & 1)
-        modifiers |= EVENTFLAG_NUM_LOCK_ON;
-    if (::GetKeyState(VK_CAPITAL) & 1)
-        modifiers |= EVENTFLAG_CAPS_LOCK_ON;
-
-    switch (wparam)
-    {
-    case VK_RETURN:
-        if ((lparam >> 16) & KF_EXTENDED)
-            modifiers |= EVENTFLAG_IS_KEY_PAD;
-        break;
-    case VK_INSERT:
-    case VK_DELETE:
-    case VK_HOME:
-    case VK_END:
-    case VK_PRIOR:
-    case VK_NEXT:
-    case VK_UP:
-    case VK_DOWN:
-    case VK_LEFT:
-    case VK_RIGHT:
-        if (!((lparam >> 16) & KF_EXTENDED))
-            modifiers |= EVENTFLAG_IS_KEY_PAD;
-        break;
-    case VK_NUMLOCK:
-    case VK_NUMPAD0:
-    case VK_NUMPAD1:
-    case VK_NUMPAD2:
-    case VK_NUMPAD3:
-    case VK_NUMPAD4:
-    case VK_NUMPAD5:
-    case VK_NUMPAD6:
-    case VK_NUMPAD7:
-    case VK_NUMPAD8:
-    case VK_NUMPAD9:
-    case VK_DIVIDE:
-    case VK_MULTIPLY:
-    case VK_SUBTRACT:
-    case VK_ADD:
-    case VK_DECIMAL:
-    case VK_CLEAR:
-        modifiers |= EVENTFLAG_IS_KEY_PAD;
-        break;
-    case VK_SHIFT:
-        if (IsKeyDown(VK_LSHIFT))
-            modifiers |= EVENTFLAG_IS_LEFT;
-        else if (IsKeyDown(VK_RSHIFT))
-            modifiers |= EVENTFLAG_IS_RIGHT;
-        break;
-    case VK_CONTROL:
-        if (IsKeyDown(VK_LCONTROL))
-            modifiers |= EVENTFLAG_IS_LEFT;
-        else if (IsKeyDown(VK_RCONTROL))
-            modifiers |= EVENTFLAG_IS_RIGHT;
-        break;
-    case VK_MENU:
-        if (IsKeyDown(VK_LMENU))
-            modifiers |= EVENTFLAG_IS_LEFT;
-        else if (IsKeyDown(VK_RMENU))
-            modifiers |= EVENTFLAG_IS_RIGHT;
-        break;
-    case VK_LWIN:
-        modifiers |= EVENTFLAG_IS_LEFT;
-        break;
-    case VK_RWIN:
-        modifiers |= EVENTFLAG_IS_RIGHT;
-        break;
-    }
-    return modifiers;
-}

+ 0 - 148
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefBrowserHostWrapper.h

@@ -1,148 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "CefWrapper.h"
-
-using namespace System::Threading::Tasks;
-using namespace CefSharp::Structs;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefBrowserHostWrapper : public IBrowserHost, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefBrowserHost> _browserHost;
-            
-            double GetZoomLevelOnUI();
-
-        internal:
-            CefBrowserHostWrapper(CefRefPtr<CefBrowserHost> &browserHost) : _browserHost(browserHost)
-            {
-            }
-            
-            !CefBrowserHostWrapper()
-            {
-                _browserHost = NULL;
-            }
-
-            ~CefBrowserHostWrapper()
-            {
-                this->!CefBrowserHostWrapper();
-
-                _disposed = true;
-            }
-
-        public:
-            virtual void StartDownload(String^ url);
-            virtual void Print();
-            virtual void PrintToPdf(String^ path, PdfPrintSettings^ settings, IPrintToPdfCallback^ callback);
-            virtual void SetZoomLevel(double zoomLevel);
-            virtual Task<double>^ GetZoomLevelAsync();
-            virtual IntPtr GetWindowHandle();
-            virtual void CloseBrowser(bool forceClose);
-
-            virtual void DragTargetDragEnter(IDragData^ dragData, MouseEvent mouseEvent, DragOperationsMask allowedOperations);
-            virtual void DragTargetDragOver(MouseEvent mouseEvent, DragOperationsMask allowedOperations);
-            virtual void DragTargetDragDrop(MouseEvent mouseEvent);
-            virtual void DragSourceEndedAt(int x, int y, DragOperationsMask op);
-            virtual void DragTargetDragLeave();
-            virtual void DragSourceSystemDragEnded();
-        
-            virtual void ShowDevTools(IWindowInfo^ windowInfo, int inspectElementAtX, int inspectElementAtY);
-            virtual void CloseDevTools();
-            ///
-            // Returns true if this browser currently has an associated DevTools browser.
-            // Must be called on the browser process UI thread.
-            ///
-            /*--cef()--*/
-            virtual property bool HasDevTools
-            {
-                bool get();
-            }
-
-            virtual void AddWordToDictionary(String^ word);
-            virtual void ReplaceMisspelling(String^ word);
-
-            virtual void Find(int identifier, String^ searchText, bool forward, bool matchCase, bool findNext);
-            virtual void StopFinding(bool clearSelection);
-
-            virtual void SetFocus(bool focus);
-            virtual void SendFocusEvent(bool setFocus);
-            virtual void SendKeyEvent(KeyEvent keyEvent);
-            virtual void SendKeyEvent(int message, int wParam, int lParam);
-
-            virtual void SendMouseWheelEvent(MouseEvent mouseEvent, int deltaX, int deltaY);
-
-            virtual void Invalidate(PaintElementType type);
-
-            virtual void ImeSetComposition(String^ text, cli::array<CompositionUnderline>^ underlines, Nullable<Range> selectionRange);
-            virtual void ImeCommitText(String^ text);
-            virtual void ImeFinishComposingText(bool keepSelection);
-            virtual void ImeCancelComposition();
-
-            virtual void SendMouseClickEvent(MouseEvent mouseEvent, MouseButtonType mouseButtonType, bool mouseUp, int clickCount);
-
-            virtual void SendMouseMoveEvent(MouseEvent mouseEvent, bool mouseLeave);
-
-            virtual void SetAccessibilityState(CefState accessibilityState);
-
-            virtual void SetAutoResizeEnabled(bool enabled, Size minSize, Size maxSize);
-
-            virtual void NotifyMoveOrResizeStarted();
-
-            virtual void NotifyScreenInfoChanged();
-
-            virtual void WasResized();
-
-            virtual void WasHidden(bool hidden);
-
-            virtual void GetNavigationEntries(INavigationEntryVisitor^ visitor, bool currentOnly);
-
-            virtual NavigationEntry^ GetVisibleNavigationEntry();
-
-            virtual property int WindowlessFrameRate
-            {
-                int get();
-                void set(int val);
-            }
-
-            virtual property bool MouseCursorChangeDisabled
-            {
-                bool get();
-                void set(bool val);
-            }
-
-            virtual property bool WindowRenderingDisabled
-            {
-                bool get();
-            }
-
-            virtual IntPtr GetOpenerWindowHandle();
-
-            virtual void SendCaptureLostEvent();
-
-            virtual property IRequestContext^ RequestContext
-            {
-                IRequestContext^ get();
-            }
-
-            // Misc. private functions:
-            CefMouseEvent GetCefMouseEvent(MouseEvent mouseEvent);
-            int GetCefKeyboardModifiers(WPARAM wparam, LPARAM lparam);
-
-            // Private keyboard functions:
-            bool IsKeyDown(WPARAM wparam)
-            {
-                return (GetKeyState(wparam) & 0x8000) != 0;
-            }
-        };
-    }
-}
-

+ 0 - 59
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCallbackWrapper.h

@@ -1,59 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_callback.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefCallbackWrapper : public ICallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefCallback> _callback;
-
-        public:
-            CefCallbackWrapper(CefRefPtr<CefCallback> &callback) :
-                _callback(callback)
-            {
-            
-            }
-
-            !CefCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefCallbackWrapper()
-            {
-                this->!CefCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Cancel()
-            {
-                ThrowIfDisposed();
-
-                _callback->Cancel();
-
-                delete this;
-            }
-
-            virtual void Continue()
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue();
-
-                delete this;
-            }
-        };
-    }
-}

+ 0 - 98
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCertificateCallbackWrapper.h

@@ -1,98 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_request_handler.h"
-#include "CefWrapper.h"
-
-using namespace System::Security::Cryptography::X509Certificates;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefCertificateCallbackWrapper : public ISelectClientCertificateCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefSelectClientCertificateCallback> _callback;
-            const CefRequestHandler::X509CertificateList& _certificateList;
-
-        public:
-            CefCertificateCallbackWrapper(CefRefPtr<CefSelectClientCertificateCallback>& callback, const CefRequestHandler::X509CertificateList& certificates)
-                : _callback(callback), _certificateList(certificates)
-            {
-
-            }
-
-            !CefCertificateCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefCertificateCallbackWrapper()
-            {
-                this->!CefCertificateCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Select(X509Certificate2^ cert)
-            {
-                ThrowIfDisposed();
-
-                if (cert == nullptr)
-                {
-                    _callback->Select(NULL);
-                }
-                else
-                {
-                    auto certSerial = cert->SerialNumber;
-
-                    std::vector<CefRefPtr<CefX509Certificate>>::const_iterator it =
-                        _certificateList.begin();
-                    for (; it != _certificateList.end(); ++it) 
-                    {
-
-                        // TODO: Need to make this logic of comparing serial number of the certificate (*it)
-                        // with the selected certificate returned by the user selection (cert).
-                        // Better and more performant way would be to read the serial number from
-                        // (*it) and convert it into System::String, so that it can directly compared
-                        // with certSerial. This is how I tried it but the Encoding class garbled up
-                        // the string when converting it from CefRefPtr<CefBinaryValue> to System::String
-                        // Try to find a better way to do this
-                        //
-                        //auto serialNum((*it)->GetSerialNumber());
-                        //auto byteSize = serialNum->GetSize();
-                        //auto bufferByte = gcnew cli::array<Byte>(byteSize);
-                        //pin_ptr<Byte> src = &bufferByte[0]; // pin pointer to first element in arr
-                        //serialNum->GetData(static_cast<void*>(src), byteSize, 0);
-                        //UTF8Encoding^ encoding = gcnew UTF8Encoding;
-                        //auto serialStr(encoding->GetString(bufferByte));
-
-                        auto bytes((*it)->GetDEREncoded());
-                        auto byteSize = bytes->GetSize();
-
-                        auto bufferByte = gcnew cli::array<Byte>(byteSize);
-                        pin_ptr<Byte> src = &bufferByte[0]; // pin pointer to first element in arr
-
-                        bytes->GetData(static_cast<void*>(src), byteSize, 0);
-                        auto newcert = gcnew System::Security::Cryptography::X509Certificates::X509Certificate2(bufferByte);
-                        auto serialStr = newcert->SerialNumber;
-
-                        if (certSerial == serialStr)
-                        {
-                            _callback->Select(*it);
-                            break;
-                        }
-                    }
-                }
-
-                delete this;
-            }
-        };
-    }
-}

+ 0 - 39
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefCompletionCallbackAdapter.h

@@ -1,39 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_cookie.h"
-
-namespace CefSharp
-{
-	namespace Internals
-	{
-		private class CefCompletionCallbackAdapter : public CefCompletionCallback
-		{
-		private:
-			gcroot<ICompletionCallback^> _handler;
-
-		public:
-			CefCompletionCallbackAdapter(ICompletionCallback^ handler)
-			{
-				_handler = handler;
-			}
-
-			~CefCompletionCallbackAdapter()
-			{
-				delete _handler;
-				_handler = nullptr;
-			}
-
-			void OnComplete() OVERRIDE
-			{
-				_handler->OnComplete();
-			}
-
-			IMPLEMENT_REFCOUNTING(CefCompletionCallbackAdapter);
-		};
-	}
-}

+ 0 - 155
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefContextMenuParamsWrapper.cpp

@@ -1,155 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include "CefContextMenuParamsWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        int CefContextMenuParamsWrapper::YCoord::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->GetYCoord();
-        }
-
-        int CefContextMenuParamsWrapper::XCoord::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->GetXCoord();
-        }
-
-        ContextMenuType CefContextMenuParamsWrapper::TypeFlags::get()
-        {
-            ThrowIfDisposed();
-
-            return (ContextMenuType)_wrappedInfo->GetTypeFlags();
-        }
-
-        String^ CefContextMenuParamsWrapper::LinkUrl::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetLinkUrl());
-        }
-
-        String^ CefContextMenuParamsWrapper::UnfilteredLinkUrl::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetUnfilteredLinkUrl());
-        }
-
-        String^ CefContextMenuParamsWrapper::SourceUrl::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetSourceUrl());
-        }
-
-        bool CefContextMenuParamsWrapper::HasImageContents::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->HasImageContents();
-        }
-
-        String^ CefContextMenuParamsWrapper::PageUrl::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetPageUrl());
-        }
-
-        String^ CefContextMenuParamsWrapper::FrameUrl::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetFrameUrl());
-        }
-
-        String^ CefContextMenuParamsWrapper::FrameCharset::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetFrameCharset());
-        }
-
-        ContextMenuMediaType CefContextMenuParamsWrapper::MediaType::get()
-        {
-            ThrowIfDisposed();
-
-            return (ContextMenuMediaType)_wrappedInfo->GetMediaType();
-        }
-
-        ContextMenuMediaState CefContextMenuParamsWrapper::MediaStateFlags::get()
-        {
-            ThrowIfDisposed();
-
-            return (ContextMenuMediaState)_wrappedInfo->GetMediaStateFlags();
-        }
-
-        String^ CefContextMenuParamsWrapper::SelectionText::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetSelectionText());
-        }
-
-        String^ CefContextMenuParamsWrapper::MisspelledWord::get()
-        {
-            ThrowIfDisposed();
-
-            return StringUtils::ToClr(_wrappedInfo->GetMisspelledWord());
-        }
-
-        List<String^>^ CefContextMenuParamsWrapper::DictionarySuggestions::get()
-        {
-            ThrowIfDisposed();
-
-            std::vector<CefString>& dictionarySuggestions = std::vector<CefString>();
-            bool result = _wrappedInfo->GetDictionarySuggestions(dictionarySuggestions);
-
-            return StringUtils::ToClr(dictionarySuggestions);
-        }
-
-        bool CefContextMenuParamsWrapper::IsEditable::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->IsEditable();
-        }
-
-        bool CefContextMenuParamsWrapper::IsSpellCheckEnabled::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->IsSpellCheckEnabled();
-        }
-
-        ContextMenuEditState CefContextMenuParamsWrapper::EditStateFlags::get()
-        {
-            ThrowIfDisposed();
-
-            return (ContextMenuEditState)_wrappedInfo->GetEditStateFlags();
-        }
-
-        bool CefContextMenuParamsWrapper::IsCustomMenu::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->IsCustomMenu();
-        }
-
-        bool CefContextMenuParamsWrapper::IsPepperMenu::get()
-        {
-            ThrowIfDisposed();
-
-            return _wrappedInfo->IsPepperMenu();
-        }
-    }
-}

+ 0 - 63
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefContextMenuParamsWrapper.h

@@ -1,63 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "CefWrapper.h"
-
-#include "include\cef_context_menu_handler.h"
-
-using namespace System::Collections::Generic;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefContextMenuParamsWrapper : public IContextMenuParams, public CefWrapper
-        {
-            MCefRefPtr<CefContextMenuParams> _wrappedInfo;
-
-        internal:
-            CefContextMenuParamsWrapper(CefRefPtr<CefContextMenuParams> &cefParams) :
-                _wrappedInfo(cefParams)
-            {
-            }
-
-            !CefContextMenuParamsWrapper()
-            {
-                _wrappedInfo = NULL;
-            }
-
-            ~CefContextMenuParamsWrapper()
-            {
-                this->!CefContextMenuParamsWrapper();
-
-                _disposed = true;
-            }
-
-        public:
-            virtual property int YCoord { int get(); }
-            virtual property int XCoord { int get(); }
-            virtual property ContextMenuType TypeFlags { ContextMenuType get(); }
-            virtual property String^ LinkUrl { String^ get(); }
-            virtual property String^ UnfilteredLinkUrl { String^ get(); }
-            virtual property String^ SourceUrl { String^ get(); }
-            virtual property bool HasImageContents { bool get(); }
-            virtual property String^ PageUrl { String^ get(); }
-            virtual property String^ FrameUrl { String^ get(); }
-            virtual property String^ FrameCharset { String^ get(); }
-            virtual property ContextMenuMediaType MediaType { ContextMenuMediaType get(); }
-            virtual property ContextMenuMediaState MediaStateFlags { ContextMenuMediaState get(); }
-            virtual property String^ SelectionText { String^ get(); }
-            virtual property String^ MisspelledWord { String^ get(); }
-            virtual property List<String^>^ DictionarySuggestions { List<String^>^ get(); }
-            virtual property bool IsEditable { bool get(); }
-            virtual property bool IsSpellCheckEnabled { bool get(); }
-            virtual property ContextMenuEditState EditStateFlags  { ContextMenuEditState get(); }
-            virtual property bool IsCustomMenu { bool get(); }
-            virtual property bool IsPepperMenu { bool get(); }
-        };
-    }
-}

+ 0 - 40
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDeleteCookiesCallbackAdapter.h

@@ -1,40 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_cookie.h"
-
-namespace CefSharp
-{
-	namespace Internals
-	{
-		private class CefDeleteCookiesCallbackAdapter : public CefDeleteCookiesCallback
-		{
-		private:
-			gcroot<IDeleteCookiesCallback^> _handler;
-
-		public:
-			CefDeleteCookiesCallbackAdapter(IDeleteCookiesCallback^ handler)
-			{
-				_handler = handler;
-			}
-
-			~CefDeleteCookiesCallbackAdapter()
-			{
-				delete _handler;
-				_handler = nullptr;
-			}
-
-			void OnComplete(int numDeleted) OVERRIDE
-			{
-				_handler->OnComplete(numDeleted);
-			}
-
-			IMPLEMENT_REFCOUNTING(CefDeleteCookiesCallbackAdapter);
-		};
-	}
-}
-

+ 0 - 69
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDownloadItemCallbackWrapper.h

@@ -1,69 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_download_handler.h"
-
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefDownloadItemCallbackWrapper : public IDownloadItemCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefDownloadItemCallback> _callback;
-
-        public:
-            CefDownloadItemCallbackWrapper(CefRefPtr<CefDownloadItemCallback> &callback) 
-                : _callback(callback)
-            {
-            }
-
-            !CefDownloadItemCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefDownloadItemCallbackWrapper()
-            {
-                this->!CefDownloadItemCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Cancel()
-            {
-                ThrowIfDisposed();
-
-                _callback->Cancel();
-
-                delete this;
-            }
-
-            virtual void Pause()
-            {
-                ThrowIfDisposed();
-
-                _callback->Pause();
-
-                delete this;
-            }
-
-            virtual void Resume()
-            {
-                ThrowIfDisposed();
-
-                _callback->Resume();
-
-                _callback = NULL;
-            }
-        };
-    }
-}
-

+ 0 - 175
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefDragDataWrapper.h

@@ -1,175 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include/cef_drag_data.h"
-
-#include "CefWrapper.h"
-
-using namespace std;
-using namespace System::IO;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        public ref class CefDragDataWrapper : public IDragData, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefDragData> _wrappedDragData;
-
-        internal:
-            CefDragDataWrapper(CefRefPtr<CefDragData> &dragData) :
-                _wrappedDragData(dragData)
-            {
-                IsReadOnly = dragData->IsReadOnly();
-                FileName = StringUtils::ToClr(dragData->GetFileName());
-                IsFile = dragData->IsFile();
-                IsFragment = dragData->IsFragment();
-                IsLink = dragData->IsLink();
-            }
-
-            !CefDragDataWrapper()
-            {
-                _wrappedDragData = nullptr;
-            }
-
-            ~CefDragDataWrapper()
-            {
-                this->!CefDragDataWrapper();
-
-                _disposed = true;
-            }
-
-        public:
-            virtual property bool IsReadOnly;
-            virtual property String^ FileName;
-            virtual property bool IsFile;
-            virtual property bool IsFragment;
-            virtual property bool IsLink;
-
-            ///
-            // Create a new CefDragData object.
-            ///
-            /*--cef()--*/
-            static CefDragDataWrapper^ Create()
-            {
-                CefRefPtr<CefDragData> cefDragData = CefDragData::Create();
-                return gcnew CefDragDataWrapper(cefDragData);
-            }
-
-            //TODO: Vector is a pointer, so can potentially be updated (items may be possibly removed)
-            virtual property IList<String^>^ FileNames
-            {
-                IList<String^>^ get()
-                {
-                    auto names = vector<CefString>();
-                    _wrappedDragData->GetFileNames(names);
-
-                    return StringUtils::ToClr(names);
-                }
-            }
-
-            virtual property String^ FragmentBaseUrl
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetFragmentBaseURL());
-                }
-                void set(String^ fragmentBaseUrl)
-                {
-                    _wrappedDragData->SetFragmentBaseURL(StringUtils::ToNative(fragmentBaseUrl));
-                }
-            }
-
-            virtual property String^ FragmentHtml
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetFragmentHtml());
-                }
-                void set(String^ fragmentHtml)
-                {
-                    _wrappedDragData->SetFragmentHtml(StringUtils::ToNative(fragmentHtml));
-                }
-            }
-
-            virtual property String^ FragmentText
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetFragmentText());
-                }
-                void set(String^ fragmentText)
-                {
-                    _wrappedDragData->SetFragmentText(StringUtils::ToNative(fragmentText));
-                }
-            }
-
-            virtual property String^ LinkMetaData
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetLinkMetadata());
-                }
-                void set(String^ linkMetaData)
-                {
-                    _wrappedDragData->SetLinkMetadata(StringUtils::ToNative(linkMetaData));
-                }
-            }
-
-            virtual property String^ LinkTitle
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetLinkTitle());
-                }
-                void set(String^ linkTitle)
-                {
-                    _wrappedDragData->SetLinkTitle(StringUtils::ToNative(linkTitle));
-                }
-            }
-
-            virtual property String^ LinkUrl
-            {
-                String^ get()
-                {
-                    return StringUtils::ToClr(_wrappedDragData->GetLinkURL());
-                }
-                void set(String^ linkUrl)
-                {
-                    _wrappedDragData->SetLinkURL(StringUtils::ToNative(linkUrl));
-                }
-            }
-
-            virtual void AddFile(String^ path, String^ displayName)
-            {
-                _wrappedDragData->AddFile(StringUtils::ToNative(path), StringUtils::ToNative(displayName));
-            }
-
-            virtual void ResetFileContents()
-            {
-                _wrappedDragData->ResetFileContents();
-            }
-
-            virtual Stream^ GetFileContents()
-            {
-                //_wrappedDragData->GetFileContents()
-                throw gcnew NotImplementedException("Need to implement a Wrapper around CefStreamWriter before this method can be implemented.");
-            }
-
-            operator CefRefPtr<CefDragData>()
-            {
-                if (this == nullptr)
-                {
-                    return NULL;
-                }
-                return _wrappedDragData.get();
-            }
-        };
-    }
-}

+ 0 - 59
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFileDialogCallbackWrapper.h

@@ -1,59 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_dialog_handler.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefFileDialogCallbackWrapper : public IFileDialogCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefFileDialogCallback> _callback;
-
-        public:
-            CefFileDialogCallbackWrapper(CefRefPtr<CefFileDialogCallback> &callback) :
-                _callback(callback)
-            {
-            
-            }
-
-            !CefFileDialogCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefFileDialogCallbackWrapper()
-            {
-                this->!CefFileDialogCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Continue(int selectedAcceptFilter, List<String^>^ filePaths)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(selectedAcceptFilter, StringUtils::ToNative(filePaths));
-
-                delete this;
-            }
-        
-            virtual void Cancel()
-            {
-                ThrowIfDisposed();
-
-                _callback->Cancel();
-
-                delete this;
-            }
-        };
-    }
-}
-

+ 0 - 391
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFrameWrapper.cpp

@@ -1,391 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#include "Stdafx.h"
-#include <msclr/lock.h>
-
-#include "Internals\CefSharpBrowserWrapper.h"
-#include "Internals\CefRequestWrapper.h"
-#include "Internals\CefFrameWrapper.h"
-#include "Internals\StringVisitor.h"
-#include "Internals\ClientAdapter.h"
-
-///
-// True if this object is currently attached to a valid frame.
-///
-/*--cef()--*/
-bool CefFrameWrapper::IsValid::get()
-{
-    ThrowIfDisposed();
-
-    return _frame->IsValid();
-}
-
-///
-// Execute undo in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::Undo()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Undo();
-}
-
-///
-// Execute redo in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::Redo()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Redo();
-}
-
-///
-// Execute cut in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::Cut()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Cut();
-}
-
-///
-// Execute copy in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::Copy()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Copy();
-}
-
-///
-// Execute paste in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::Paste()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Paste();
-}
-
-///
-// Execute delete in this frame.
-///
-/*--cef(capi_name=del)--*/
-void CefFrameWrapper::Delete()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->Delete();
-}
-
-///
-// Execute select all in this frame.
-///
-/*--cef()--*/
-void CefFrameWrapper::SelectAll()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->SelectAll();
-}
-
-///
-// Save this frame's HTML source to a temporary file and open it in the
-// default text viewing application. This method can only be called from the
-// browser process.
-///
-/*--cef()--*/
-void CefFrameWrapper::ViewSource()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->ViewSource();
-}
-
-///
-// Retrieve this frame's HTML source as a string sent to the specified
-// visitor.
-///
-/*--cef()--*/
-Task<String^>^ CefFrameWrapper::GetSourceAsync()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    auto taskStringVisitor = gcnew TaskStringVisitor();
-    _frame->GetSource(new StringVisitor(taskStringVisitor));
-    return taskStringVisitor->Task;
-}
-
-///
-// Retrieve this frame's HTML source as a string sent to the specified
-// visitor.
-///
-/*--cef()--*/
-void CefFrameWrapper::GetSource(IStringVisitor^ visitor)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->GetSource(new StringVisitor(visitor));
-}
-
-///
-// Retrieve this frame's display text as a string sent to the specified
-// visitor.
-///
-/*--cef()--*/
-Task<String^>^ CefFrameWrapper::GetTextAsync()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    auto taskStringVisitor = gcnew TaskStringVisitor();
-    _frame->GetText(new StringVisitor(taskStringVisitor));
-    return taskStringVisitor->Task;
-}
-
-///
-// Retrieve this frame's display text as a string sent to the specified
-// visitor.
-///
-/*--cef()--*/
-void CefFrameWrapper::GetText(IStringVisitor^ visitor)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->GetText(new StringVisitor(visitor));
-}
-
-
-///
-// Load the request represented by the |request| object.
-///
-/*--cef()--*/
-void CefFrameWrapper::LoadRequest(IRequest^ request)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    auto requestWrapper = (CefRequestWrapper^)request;
-    _frame->LoadRequest(requestWrapper);
-}
-
-///
-// Load the specified |url|.
-///
-/*--cef()--*/
-void CefFrameWrapper::LoadUrl(String^ url)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->LoadURL(StringUtils::ToNative(url));
-}
-
-///
-// Load the contents of |html| with the specified dummy |url|. |url|
-// should have a standard scheme (for example, http scheme) or behaviors like
-// link clicks and web security restrictions may not behave as expected.
-///
-/*--cef()--*/
-void CefFrameWrapper::LoadStringForUrl(String^ html, String^ url)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->LoadString(StringUtils::ToNative(html), StringUtils::ToNative(url));
-}
-
-///
-// Execute a string of JavaScript code in this frame. The |script_url|
-// parameter is the URL where the script in question can be found, if any.
-// The renderer may request this URL to show the developer the source of the
-// error.  The |start_line| parameter is the base line number to use for error
-// reporting.
-///
-/*--cef(optional_param=script_url)--*/
-void CefFrameWrapper::ExecuteJavaScriptAsync(String^ code, String^ scriptUrl, int startLine)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    _frame->ExecuteJavaScript(StringUtils::ToNative(code), StringUtils::ToNative(scriptUrl), startLine);
-}
-
-Task<JavascriptResponse^>^ CefFrameWrapper::EvaluateScriptAsync(String^ script, String^ scriptUrl, int startLine, Nullable<TimeSpan> timeout)
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    auto browser = _frame->GetBrowser();
-    auto host = browser->GetHost();
-
-    auto client = static_cast<ClientAdapter*>(host->GetClient().get());
-
-    return client->EvaluateScriptAsync(browser->GetIdentifier(), browser->IsPopup(), _frame->GetIdentifier(), script, scriptUrl, startLine, timeout);
-}
-
-///
-// Returns true if this is the main (top-level) frame.
-///
-/*--cef()--*/
-bool CefFrameWrapper::IsMain::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    return _frame->IsMain();
-}
-
-///
-// Returns true if this is the focused frame.
-///
-/*--cef()--*/
-bool CefFrameWrapper::IsFocused::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    return _frame->IsFocused();
-}
-
-///
-// Returns the name for this frame. If the frame has an assigned name (for
-// example, set via the iframe "name" attribute) then that value will be
-// returned. Otherwise a unique name will be constructed based on the frame
-// parent hierarchy. The main (top-level) frame will always have an empty name
-// value.
-///
-/*--cef()--*/
-String^ CefFrameWrapper::Name::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    return StringUtils::ToClr(_frame->GetName());
-}
-
-///
-// Returns the globally unique identifier for this frame.
-///
-/*--cef()--*/
-Int64 CefFrameWrapper::Identifier::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    return _frame->GetIdentifier();
-}
-
-///
-// Returns the parent of this frame or NULL if this is the main (top-level)
-// frame.
-///
-/*--cef()--*/
-IFrame^ CefFrameWrapper::Parent::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    if (_parentFrame != nullptr)
-    {
-        return _parentFrame;
-    }
-
-    // Be paranoid about creating the cached IFrame.
-    msclr::lock sync(_syncRoot);
-
-    if (_parentFrame != nullptr)
-    {
-        return _parentFrame;
-    }
-
-    auto parent = _frame->GetParent();
-
-    if (parent == nullptr)
-    {
-        return nullptr;
-    }
-
-    _parentFrame = gcnew CefFrameWrapper(parent);
-
-    return _parentFrame;
-}
-
-///
-// Returns the URL currently loaded in this frame.
-///
-/*--cef()--*/
-String^ CefFrameWrapper::Url::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    return StringUtils::ToClr(_frame->GetURL());
-}
-
-///
-// Returns the browser that this frame belongs to.
-///
-/*--cef()--*/
-IBrowser^ CefFrameWrapper::Browser::get()
-{
-    ThrowIfDisposed();
-    ThrowIfFrameInvalid();
-
-    if (_owningBrowser != nullptr)
-    {
-        return _owningBrowser;
-    }
-
-    // Be paranoid about creating the cached IBrowser.
-    msclr::lock sync(_syncRoot);
-
-    if (_owningBrowser != nullptr)
-    {
-        return _owningBrowser;
-    }
-
-    _owningBrowser = gcnew CefSharpBrowserWrapper(_frame->GetBrowser());
-    return _owningBrowser;
-}
-
-IRequest^ CefFrameWrapper::CreateRequest(bool initializePostData)
-{
-    auto request = CefRequest::Create();
-
-    if (initializePostData)
-    {
-        request->SetPostData(CefPostData::Create());
-    }
-
-    return gcnew CefRequestWrapper(request);
-}
-
-void CefFrameWrapper::ThrowIfFrameInvalid()
-{
-    if (_frame->IsValid() == false)
-    {
-        throw gcnew Exception(L"The underlying frame is no longer valid - please check the IsValid property before calling!");
-    }
-}

+ 0 - 261
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefFrameWrapper.h

@@ -1,261 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_frame.h"
-#include "include\cef_v8.h"
-#include "CefWrapper.h"
-
-using namespace System::Threading::Tasks;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        ///
-        // Class used to represent a frame in the browser window. When used in the
-        // browser process the methods of this class may be called on any thread unless
-        // otherwise indicated in the comments. When used in the render process the
-        // methods of this class may only be called on the main thread.
-        ///
-        /*--cef(source=library)--*/
-        private ref class CefFrameWrapper : public IFrame, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefFrame> _frame;
-            IFrame^ _parentFrame;
-            IBrowser^ _owningBrowser;
-            Object^ _syncRoot;
-
-        internal:
-            CefFrameWrapper::CefFrameWrapper(CefRefPtr<CefFrame> &frame)
-                : _frame(frame), _parentFrame(nullptr),
-                _owningBrowser(nullptr), _syncRoot(gcnew Object())
-            {
-            }
-
-            !CefFrameWrapper()
-            {
-                _frame = NULL;
-            }
-
-            ~CefFrameWrapper()
-            {
-                this->!CefFrameWrapper();
-
-                delete _parentFrame;
-                delete _owningBrowser;
-                _parentFrame = nullptr;
-                _owningBrowser = nullptr;
-                _syncRoot = nullptr;
-                _disposed = true;
-            }
-
-        public:
-            ///
-            // True if this object is currently attached to a valid frame.
-            ///
-            /*--cef()--*/
-            virtual property bool IsValid
-            {
-                bool get();
-            }
-
-            ///
-            // Execute undo in this frame.
-            ///
-            /*--cef()--*/
-            virtual void Undo();
-
-            ///
-            // Execute redo in this frame.
-            ///
-            /*--cef()--*/
-            virtual void Redo();
-
-            ///
-            // Execute cut in this frame.
-            ///
-            /*--cef()--*/
-            virtual void Cut();
-
-            ///
-            // Execute copy in this frame.
-            ///
-            /*--cef()--*/
-            virtual void Copy();
-
-            ///
-            // Execute paste in this frame.
-            ///
-            /*--cef()--*/
-            virtual void Paste();
-
-            ///
-            // Execute delete in this frame.
-            ///
-            /*--cef(capi_name=del)--*/
-            virtual void Delete();
-
-            ///
-            // Execute select all in this frame.
-            ///
-            /*--cef()--*/
-            virtual void SelectAll();
-
-            ///
-            // Save this frame's HTML source to a temporary file and open it in the
-            // default text viewing application. This method can only be called from the
-            // browser process.
-            ///
-            /*--cef()--*/
-            virtual void ViewSource();
-
-            ///
-            // Retrieve this frame's HTML source as a string sent to the specified
-            // visitor.
-            ///
-            /*--cef()--*/
-            virtual Task<String^>^ GetSourceAsync();
-
-            ///
-            // Retrieve this frame's HTML source as a string sent to the specified
-            // visitor.
-            ///
-            /*--cef()--*/
-            virtual void GetSource(IStringVisitor^ visitor);
-
-            ///
-            // Retrieve this frame's display text as a string sent to the specified
-            // visitor.
-            ///
-            /*--cef()--*/
-            virtual Task<String^>^ GetTextAsync();
-
-            ///
-            // Retrieve this frame's display text as a string sent to the specified
-            // visitor.
-            ///
-            /*--cef()--*/
-            virtual void GetText(IStringVisitor^ visitor);
-
-            ///
-            /// Load the request represented by the |request| object.
-            ///
-            /*--cef()--*/
-            virtual void LoadRequest(IRequest^ request);
-
-            ///
-            // Load the specified |url|.
-            ///
-            /*--cef()--*/
-            virtual void LoadUrl(String^ url);
-
-            ///
-            // Load the contents of |html| with the specified dummy |url|. |url|
-            // should have a standard scheme (for example, http scheme) or behaviors like
-            // link clicks and web security restrictions may not behave as expected.
-            ///
-            /*--cef()--*/
-            virtual void LoadStringForUrl(String^ html, String^ url);
-
-            ///
-            // Execute a string of JavaScript code in this frame. The |script_url|
-            // parameter is the URL where the script in question can be found, if any.
-            // The renderer may request this URL to show the developer the source of the
-            // error.  The |start_line| parameter is the base line number to use for error
-            // reporting.
-            ///
-            /*--cef(optional_param=script_url)--*/
-            virtual void ExecuteJavaScriptAsync(String^ code, String^ scriptUrl, int startLine);
-
-            virtual Task<JavascriptResponse^>^ EvaluateScriptAsync(String^ script, String^ scriptUrl, int startLine, Nullable<TimeSpan> timeout);
-
-            ///
-            // Returns true if this is the main (top-level) frame.
-            ///
-            /*--cef()--*/
-            virtual property bool IsMain
-            {
-                bool get();
-            }
-
-            ///
-            // Returns true if this is the focused frame.
-            ///
-            /*--cef()--*/
-            virtual property bool IsFocused
-            {
-                bool get();
-            }
-
-            ///
-            // Returns the name for this frame. If the frame has an assigned name (for
-            // example, set via the iframe "name" attribute) then that value will be
-            // returned. Otherwise a unique name will be constructed based on the frame
-            // parent hierarchy. The main (top-level) frame will always have an empty name
-            // value.
-            ///
-            /*--cef()--*/
-            virtual property String^ Name
-            {
-                String^ get();
-            }
-
-            ///
-            // Returns the globally unique identifier for this frame.
-            ///
-            /*--cef()--*/
-            virtual property Int64 Identifier
-            {
-                Int64 get();
-            }
-
-            ///
-            // Returns the parent of this frame or NULL if this is the main (top-level)
-            // frame.
-            ///
-            /*--cef()--*/
-            virtual property IFrame^ Parent
-            {
-                IFrame^ get();
-            }
-
-            ///
-            // Returns the URL currently loaded in this frame.
-            ///
-            /*--cef()--*/
-            virtual property String^ Url
-            {
-                String^ get();
-            }
-
-            ///
-            // Returns the browser that this frame belongs to.
-            ///
-            /*--cef()--*/
-            virtual property IBrowser^ Browser
-            {
-                IBrowser^ get();
-            }
-
-            ///
-            // Get the V8 context associated with the frame. This method can only be
-            // called from the render process.
-            ///
-            /*--cef()--*/
-            virtual CefRefPtr<CefV8Context> GetV8Context()
-            {
-                return _frame->GetV8Context();
-            }
-
-            virtual IRequest^ CreateRequest(bool initializePostData);
-
-            void ThrowIfFrameInvalid();
-        };
-    }
-}

+ 0 - 51
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefGeolocationCallbackWrapper.h

@@ -1,51 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_geolocation_handler.h"
-
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefGeolocationCallbackWrapper : public IGeolocationCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefGeolocationCallback> _callback;
-
-        public:
-            CefGeolocationCallbackWrapper(CefRefPtr<CefGeolocationCallback> &callback)
-                : _callback(callback)
-            {
-            }
-
-            !CefGeolocationCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefGeolocationCallbackWrapper()
-            {
-                this->!CefGeolocationCallbackWrapper();
-
-                _disposed = true;
-            }
-
-            virtual void Continue(bool allow)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(allow);
-
-                delete this;
-            }
-        };
-    }
-}
-

+ 0 - 66
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefGetGeolocationCallbackAdapter.h

@@ -1,66 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_geolocation.h"
-
-using namespace System::Threading::Tasks;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private class CefGetGeolocationCallbackAdapter : public CefGetGeolocationCallback
-        {
-        private:
-            gcroot<IGetGeolocationCallback^> _callback;
-
-        public:
-            CefGetGeolocationCallbackAdapter(IGetGeolocationCallback^ callback)
-            {
-                _callback = callback;
-            }
-
-            ~CefGetGeolocationCallbackAdapter()
-            {
-                delete _callback;
-                _callback = nullptr;
-            }
-
-            virtual void OnLocationUpdate(const CefGeoposition& position) OVERRIDE
-            {
-                auto p = gcnew Geoposition();
-                p->Accuracy = position.accuracy;
-                p->Altitude = position.altitude;
-                p->AltitudeAccuracy = position.altitude_accuracy;
-                p->ErrorCode = (CefGeoPositionErrorCode)position.error_code;
-                p->ErrorMessage = StringUtils::ToClr(position.error_message);
-                p->Heading = position.heading;
-                p->Latitude = position.latitude;
-                p->Longitude = position.longitude;
-                p->Speed = position.speed;
-                p->Timestamp = ConvertCefTimeToDateTime(position.timestamp);
-
-                _callback->OnLocationUpdate(p);
-            };
-
-            DateTime ConvertCefTimeToDateTime(CefTime time)
-            {
-                auto epoch = time.GetDoubleT();
-                if (epoch == 0)
-                {
-                    return DateTime::MinValue;
-                }
-                return DateTime(1970, 1, 1, 0, 0, 0).AddSeconds(epoch).ToLocalTime();
-            }
-
-            IMPLEMENT_REFCOUNTING(CefGetGeolocationCallbackAdapter)
-        };
-    }
-}
-
-

+ 0 - 56
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefJSDialogCallbackWrapper.h

@@ -1,56 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefJSDialogCallbackWrapper : public IJsDialogCallback, public CefWrapper
-        {
-            MCefRefPtr<CefJSDialogCallback> _callback;
-
-        internal:
-            CefJSDialogCallbackWrapper(CefRefPtr<CefJSDialogCallback> &callback)
-                : _callback(callback)
-            {
-            }
-
-            !CefJSDialogCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefJSDialogCallbackWrapper()
-            {
-                this->!CefJSDialogCallbackWrapper();
-
-                _disposed = true;
-            }
-
-        public:
-            virtual void Continue(bool success, String^ userInput)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(success, StringUtils::ToNative(userInput));
-
-                delete this;
-            }
-
-            virtual void Continue(bool success)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(success, CefString());
-
-                delete this;
-            }
-        };
-    }
-}

+ 0 - 440
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefMenuModelWrapper.h

@@ -1,440 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_menu_model.h"
-
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefMenuModelWrapper : public IMenuModel, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefMenuModel> _menu;
-
-        public:
-            CefMenuModelWrapper(CefRefPtr<CefMenuModel> &menu) :
-                _menu(menu)
-            {
-            
-            }
-
-            !CefMenuModelWrapper()
-            {
-                _menu = NULL;
-            }
-
-            ~CefMenuModelWrapper()
-            {
-                this->!CefMenuModelWrapper();
-
-                _disposed = true;
-            }
-
-            virtual property int Count
-            {
-                int get()
-                {
-                    ThrowIfDisposed();
-
-                    return _menu->GetCount();
-                }
-            }
-
-            virtual bool Clear()
-            {
-                ThrowIfDisposed();
-
-                return _menu->Clear();
-            }
-
-            virtual String^ GetLabelAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return StringUtils::ToClr(_menu->GetLabelAt(index));
-            }
-
-            virtual CefMenuCommand GetCommandIdAt(int index) 
-            {
-                ThrowIfDisposed();
-
-                return (CefMenuCommand)_menu->GetCommandIdAt(index);
-            }
-
-            virtual bool Remove(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->Remove((int)commandId);
-            }
-
-            virtual bool AddSeparator()
-            {
-                ThrowIfDisposed();
-
-                return _menu->AddSeparator();
-            }
-
-            virtual bool AddItem(CefMenuCommand commandId, String^ label) 
-            {
-                ThrowIfDisposed();
-
-                return _menu->AddItem((int)commandId, StringUtils::ToNative(label));
-            }
-
-            virtual bool AddCheckItem(CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                return _menu->AddCheckItem((int)commandId, StringUtils::ToNative(label));
-            }
-
-            virtual bool AddRadioItem(CefMenuCommand commandId, String^ label, int groupId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->AddRadioItem((int)commandId, StringUtils::ToNative(label), groupId);
-            }
-
-            virtual IMenuModel^ AddSubMenu(CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                auto subMenu =_menu->AddSubMenu((int)commandId, StringUtils::ToNative(label));
-
-                if (subMenu.get())
-                {
-                    return gcnew CefMenuModelWrapper(subMenu);
-                }
-
-                return nullptr;
-            }
-
-            virtual bool InsertSeparatorAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->InsertSeparatorAt(index);
-            }
-
-            virtual bool InsertItemAt(int index, CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                return _menu->InsertItemAt(index, (int)commandId, StringUtils::ToNative(label));
-            }
-
-            virtual bool InsertCheckItemAt(int index, CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                return _menu->InsertCheckItemAt(index, (int)commandId, StringUtils::ToNative(label));
-            }
-
-            virtual bool InsertRadioItemAt(int index, CefMenuCommand commandId, String^ label, int groupId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->InsertRadioItemAt(index, (int)commandId, StringUtils::ToNative(label), groupId);
-            }
-
-            virtual IMenuModel^ InsertSubMenuAt(int index, CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                auto subMenu = _menu->InsertSubMenuAt(index, (int)commandId, StringUtils::ToNative(label));
-
-                if (subMenu.get())
-                {
-                    return gcnew CefMenuModelWrapper(subMenu);
-                }
-
-                return nullptr;
-            }
-
-            virtual bool RemoveAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->RemoveAt(index);
-            }
-
-            virtual int GetIndexOf(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->GetIndexOf((int)commandId);
-            }
-
-            virtual bool SetCommandIdAt(int index, CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetCommandIdAt(index, (int)commandId);
-            }
-
-            virtual String^ GetLabel(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return StringUtils::ToClr(_menu->GetLabel((int)commandId));
-            }
-
-            virtual bool SetLabel(CefMenuCommand commandId, String^ label)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetLabel((int)commandId, StringUtils::ToNative(label));
-            }
-
-            virtual bool SetLabelAt(int index, String^ label)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetLabelAt(index, StringUtils::ToNative(label));
-            }
-
-            virtual MenuItemType GetType(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return (CefSharp::MenuItemType)_menu->GetType((int)commandId);
-            }
-
-            virtual MenuItemType GetTypeAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return (MenuItemType)_menu->GetTypeAt(index);
-            }
-
-            virtual int GetGroupId(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->GetGroupId((int)commandId);
-            }
-
-            virtual int GetGroupIdAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->GetGroupIdAt(index);
-            }
-
-            virtual bool SetGroupId(CefMenuCommand commandId, int groupId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetGroupId((int)commandId, groupId);
-            }
-
-            virtual bool SetGroupIdAt(int index, int groupId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetGroupIdAt(index, groupId);
-            }
-
-            virtual IMenuModel^ GetSubMenu(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                auto subMenu =_menu->GetSubMenu((int)commandId);
-
-                if (subMenu.get())
-                {
-                    return gcnew CefMenuModelWrapper(subMenu);
-                }
-
-                return nullptr;
-            }
-
-            virtual IMenuModel^ GetSubMenuAt(int index)
-            {
-                ThrowIfDisposed();
-
-                auto subMenu = _menu->GetSubMenuAt(index);
-
-                if (subMenu.get())
-                {
-                    return gcnew CefMenuModelWrapper(subMenu);
-                }
-
-                return nullptr;
-            }
-
-            virtual bool IsVisible(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsVisible((int)commandId);
-            }
-
-            virtual bool IsVisibleAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsVisibleAt(index);
-            }
-
-            virtual bool SetVisible(CefMenuCommand commandId, bool visible)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetVisible((int)commandId, visible);
-            }
-
-            virtual bool SetVisibleAt(int index, bool visible)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetVisibleAt(index, visible);
-            }
-
-            virtual bool IsEnabled(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsEnabled((int)commandId);
-            }
-
-            virtual bool IsEnabledAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsEnabledAt(index);
-            }
-
-            virtual bool SetEnabled(CefMenuCommand commandId, bool enabled)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetEnabled((int)commandId, enabled);
-            }
-
-            virtual bool SetEnabledAt(int index, bool enabled)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetEnabledAt(index, enabled);
-            }
-            
-            virtual bool IsChecked(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsChecked((int)commandId);
-            }
-
-            virtual bool IsCheckedAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->IsCheckedAt(index);
-            }
-
-            virtual bool SetChecked(CefMenuCommand commandId, bool isChecked)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetChecked((int)commandId, isChecked);
-            }
-
-            virtual bool SetCheckedAt(int index, bool isChecked)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetCheckedAt(index, isChecked);
-            }
-
-            virtual bool HasAccelerator(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->HasAccelerator((int)commandId);
-            }
-
-            virtual bool HasAcceleratorAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->HasAcceleratorAt(index);
-            }
-
-            virtual bool SetAccelerator(CefMenuCommand commandId, int keyCode, bool shiftPressed, bool ctrlPressed, bool altPressed)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetAccelerator((int)commandId, keyCode, shiftPressed, ctrlPressed, altPressed);
-            }
-
-            virtual bool SetAcceleratorAt(int index, int keyCode, bool shiftPressed, bool ctrlPressed, bool altPressed)
-            {
-                ThrowIfDisposed();
-
-                return _menu->SetAcceleratorAt(index, keyCode, shiftPressed, ctrlPressed, altPressed);
-            }
-
-            virtual bool RemoveAccelerator(CefMenuCommand commandId)
-            {
-                ThrowIfDisposed();
-
-                return _menu->RemoveAccelerator((int)commandId);
-            }
-
-            virtual bool RemoveAcceleratorAt(int index)
-            {
-                ThrowIfDisposed();
-
-                return _menu->RemoveAcceleratorAt(index);
-            }
-
-            virtual bool GetAccelerator(CefMenuCommand commandId, int% keyCode, bool% shiftPressed, bool% ctrlPressed, bool% altPressed)
-            {
-                ThrowIfDisposed();
-
-                int key;
-                bool shift;
-                bool ctrl;
-                bool alt;
-
-                auto result = _menu->GetAccelerator((int)commandId, key, shift, ctrl, alt);
-
-                keyCode = key;
-                shiftPressed = shift;
-                ctrlPressed = ctrl;
-                altPressed = alt;
-
-                return result;
-            }
-
-            virtual bool GetAcceleratorAt(int index, int% keyCode, bool% shiftPressed, bool% ctrlPressed, bool% altPressed)
-            {
-                ThrowIfDisposed();
-
-                int key;
-                bool shift;
-                bool ctrl;
-                bool alt;
-
-                auto result = _menu->GetAcceleratorAt(index, key, shift, ctrl, alt);
-
-                keyCode = key;
-                shiftPressed = shift;
-                ctrlPressed = ctrl;
-                altPressed = alt;
-
-                return result;
-            }
-        };
-    }
-}

+ 0 - 83
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefNavigationEntryVisitorAdapter.h

@@ -1,83 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include\cef_browser.h"
-
-using namespace System::Security::Cryptography::X509Certificates;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private class CefNavigationEntryVisitorAdapter : public CefNavigationEntryVisitor
-        {
-        private:
-            gcroot<INavigationEntryVisitor^> _handler;
-
-        public:
-            CefNavigationEntryVisitorAdapter(INavigationEntryVisitor^ handler)
-            {
-                _handler = handler;
-            }
-
-            ~CefNavigationEntryVisitorAdapter()
-            {
-                delete _handler;
-                _handler = nullptr;
-            }
-
-            bool Visit(CefRefPtr<CefNavigationEntry> entry,
-                bool current,
-                int index,
-                int total) OVERRIDE
-            {
-                NavigationEntry^ navEntry;
-                SslStatus^ sslStatus;
-
-                if (entry->IsValid())
-                {
-                    auto time = entry->GetCompletionTime();
-                    DateTime completionTime = CefSharp::Internals::CefTimeUtils::ConvertCefTimeToDateTime(time.GetDoubleT());
-                    auto ssl = entry->GetSSLStatus();
-                    X509Certificate2^ sslCertificate;
-
-                    if (ssl.get())
-                    {
-                        auto certificate = ssl->GetX509Certificate();
-                        if (certificate.get())
-                        {
-                            auto derEncodedCertificate = certificate->GetDEREncoded();
-                            auto byteCount = derEncodedCertificate->GetSize();
-                            if (byteCount > 0)
-                            {
-                                auto bytes = gcnew cli::array<Byte>(byteCount);
-                                pin_ptr<Byte> src = &bytes[0]; // pin pointer to first element in arr
-
-                                derEncodedCertificate->GetData(static_cast<void*>(src), byteCount, 0);
-
-                                sslCertificate = gcnew X509Certificate2(bytes);
-                            }
-                        }
-                        sslStatus = gcnew SslStatus(ssl->IsSecureConnection(), (CertStatus)ssl->GetCertStatus(), (SslVersion)ssl->GetSSLVersion(), (SslContentStatus)ssl->GetContentStatus(), sslCertificate);
-                    }
-
-                    navEntry = gcnew NavigationEntry(current, completionTime, StringUtils::ToClr(entry->GetDisplayURL()), entry->GetHttpStatusCode(), StringUtils::ToClr(entry->GetOriginalURL()), StringUtils::ToClr(entry->GetTitle()), (TransitionType)entry->GetTransitionType(), StringUtils::ToClr(entry->GetURL()), entry->HasPostData(), true, sslStatus);
-                }
-                else
-                {
-                    //Invalid nav entry
-                    navEntry = gcnew NavigationEntry(current, DateTime::MinValue, nullptr, -1, nullptr, nullptr, (TransitionType)-1, nullptr, false, false, sslStatus);
-                }
-
-                return _handler->Visit(navEntry, current, index, total);
-            }
-
-            IMPLEMENT_REFCOUNTING(CefNavigationEntryVisitorAdapter);
-        };
-    }
-}
-

+ 0 - 43
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPdfPrintCallbackWrapper.h

@@ -1,43 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "include/cef_browser.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private class CefPdfPrintCallbackWrapper : public CefPdfPrintCallback
-        {
-        private:
-            gcroot<IPrintToPdfCallback^> _callback;
-
-        public:
-            CefPdfPrintCallbackWrapper(IPrintToPdfCallback^ callback)
-                :_callback(callback)
-            {
-                
-            }
-
-            ~CefPdfPrintCallbackWrapper()
-            {
-                delete _callback;
-                _callback = nullptr;
-            }
-
-            virtual void OnPdfPrintFinished(const CefString& path, bool ok) OVERRIDE
-            {
-                if (static_cast<IPrintToPdfCallback^>(_callback) != nullptr)
-                {
-                    _callback->OnPdfPrintFinished(StringUtils::ToClr(path), ok);
-                }
-            }
-
-            IMPLEMENT_REFCOUNTING(CefPdfPrintCallbackWrapper);
-        };
-    }
-}

+ 0 - 123
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPostDataElementWrapper.h

@@ -1,123 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_request.h"
-#include "Internals\TypeConversion.h"
-#include "CefWrapper.h"
-
-using namespace System::Collections::Specialized;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefPostDataElementWrapper : public IPostDataElement, public CefWrapper
-        {
-            MCefRefPtr<CefPostDataElement> _postDataElement;
-        internal:
-            CefPostDataElementWrapper(CefRefPtr<CefPostDataElement> postDataElement) :
-                _postDataElement(postDataElement)
-            {
-                
-            }
-
-            !CefPostDataElementWrapper()
-            {
-                _postDataElement = nullptr;
-            }
-
-            ~CefPostDataElementWrapper()
-            {
-                this->!CefPostDataElementWrapper();
-
-                _disposed = true;
-            }
-
-        public:
-            virtual property bool IsReadOnly
-            {
-                bool get()
-                {
-                    ThrowIfDisposed();
-
-                    return _postDataElement->IsReadOnly();
-                }
-            }
-
-            virtual property String^ File
-            {
-                String^ get()
-                {
-                    ThrowIfDisposed();
-
-                    return StringUtils::ToClr(_postDataElement->GetFile());
-                }
-                void set(String^ val)
-                {
-                    ThrowIfDisposed();
-
-                    _postDataElement->SetToFile(StringUtils::ToNative(val));
-                }
-            }
-
-            virtual void SetToEmpty()
-            {
-                ThrowIfDisposed();
-
-                _postDataElement->SetToEmpty();
-            }
-
-            virtual property PostDataElementType Type
-            {
-                PostDataElementType get()
-                {
-                    ThrowIfDisposed();
-
-                    return (PostDataElementType)_postDataElement->GetType();
-                }
-            }
-
-            virtual property cli::array<Byte>^ Bytes
-            {
-                cli::array<Byte>^ get()
-                {
-                    ThrowIfDisposed();
-
-                    auto byteCount = _postDataElement->GetBytesCount();
-                    if (byteCount == 0)
-                    {
-                        return nullptr;
-                    }
-
-                    auto bytes = gcnew cli::array<Byte>(byteCount);
-                    pin_ptr<Byte> src = &bytes[0]; // pin pointer to first element in arr
-
-                    _postDataElement->GetBytes(byteCount, static_cast<void*>(src));
-
-                    return bytes;
-                }
-                void set(cli::array<Byte>^ val)
-                {
-                    ThrowIfDisposed();
-
-                    pin_ptr<Byte> src = &val[0];
-                    _postDataElement->SetToBytes(val->Length, static_cast<void*>(src));
-                }
-            }
-
-            operator CefRefPtr<CefPostDataElement>()
-            {
-                if (this == nullptr)
-                {
-                    return NULL;
-                }
-                return _postDataElement.get();
-            }
-        };
-    }
-}

+ 0 - 177
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefPostDataWrapper.h

@@ -1,177 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-
-#include "include\cef_request.h"
-
-#include "Internals\TypeConversion.h"
-#include "CefPostDataElementWrapper.h"
-#include "CefWrapper.h"
-
-using namespace System::Collections::Generic;
-using namespace System::Collections::ObjectModel;
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefPostDataWrapper : public IPostData, public CefWrapper
-        {
-            MCefRefPtr<CefPostData> _postData;
-            List<IPostDataElement^>^ _postDataElements;
-
-        internal:
-            CefPostDataWrapper(CefRefPtr<CefPostData> &postData) :
-                _postData(postData)
-            {
-                
-            }
-
-            !CefPostDataWrapper()
-            {
-                _postData = nullptr;
-            }
-
-            ~CefPostDataWrapper()
-            {
-                this->!CefPostDataWrapper();
-
-                if (_postDataElements != nullptr)
-                {
-                    //Make sure the unmanaged resources are handled
-                    for each (IPostDataElement^ element in _postDataElements)
-                    {
-                        delete element;
-                    }
-
-                    _postDataElements = nullptr;
-                }
-
-                _disposed = true;
-            }
-
-        public:
-            virtual property bool IsReadOnly
-            {
-                bool get()
-                {
-                    ThrowIfDisposed();
-
-                    return _postData->IsReadOnly();
-                }
-            }
-
-            virtual property IList<IPostDataElement^>^ Elements
-            {
-                IList<IPostDataElement^>^ get()
-                {
-                    ThrowIfDisposed();
-
-                    if (_postDataElements == nullptr)
-                    {
-                        _postDataElements = gcnew List<IPostDataElement^>();
-
-                        auto elementCount = _postData.get() ? _postData->GetElementCount() : 0;
-                        if (elementCount == 0)
-                        {
-                            return gcnew ReadOnlyCollection<IPostDataElement^>(_postDataElements);
-                        }
-                        CefPostData::ElementVector ev;
-
-                        _postData->GetElements(ev);
-
-                        for (CefPostData::ElementVector::iterator it = ev.begin(); it != ev.end(); ++it)
-                        {
-                            CefPostDataElement *el = it->get();
-
-                            _postDataElements->Add(gcnew CefPostDataElementWrapper(el));
-                        }
-                    }
-
-                    return gcnew ReadOnlyCollection<IPostDataElement^>(_postDataElements);
-                }
-            }
-
-            virtual bool AddElement(IPostDataElement^ element)
-            {
-                ThrowIfDisposed();
-
-                ThrowIfReadOnly();
-
-                //Access the Elements collection to initialize the underlying _postDataElements collection
-                auto elements = Elements;
-
-                //If the element has already been added then don't add it again
-                if (elements->Contains(element))
-                {
-                    return false;
-                }
-
-                _postDataElements->Add(element);
-
-                auto elementWrapper = (CefPostDataElementWrapper^)element;
-
-                return _postData->AddElement(elementWrapper);
-            }
-
-            virtual bool RemoveElement(IPostDataElement^ element)
-            {
-                ThrowIfDisposed();
-
-                ThrowIfReadOnly();
-
-                //Access the Elements collection to initialize the underlying _postDataElements collection
-                auto elements = Elements;
-
-                if (!elements->Contains(element))
-                {
-                    return false;
-                }
-
-                _postDataElements->Remove(element);
-
-                auto elementWrapper = (CefPostDataElementWrapper^)element;
-
-                return _postData->RemoveElement(elementWrapper);
-            }
-
-            virtual void RemoveElements()
-            {
-                ThrowIfDisposed();
-
-                ThrowIfReadOnly();
-
-                _postData->RemoveElements();
-            }
-
-            virtual IPostDataElement^ CreatePostDataElement()
-            {
-                auto element = CefPostDataElement::Create();
-
-                return gcnew CefPostDataElementWrapper(element);
-            }
-
-            virtual property bool HasExcludedElements
-            {
-                bool get()
-                {
-                    ThrowIfDisposed();
-
-                    return _postData->HasExcludedElements();
-                }
-            }
-
-            void ThrowIfReadOnly()
-            {
-                if (IsReadOnly)
-                {
-                    throw gcnew Exception(gcnew String(L"This IPostDataWrapper is readonly and cannot be modified."));
-                }
-            }
-        };
-    }
-}

+ 0 - 48
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRegisterCdmCallbackAdapter.h

@@ -1,48 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private class CefRegisterCdmCallbackAdapter : public CefRegisterCdmCallback
-        {
-        private:
-            gcroot<IRegisterCdmCallback^> _callback;
-
-        public:
-            CefRegisterCdmCallbackAdapter(IRegisterCdmCallback^ callback)
-            {
-                _callback = callback;
-            }
-
-            ~CefRegisterCdmCallbackAdapter()
-            {
-                delete _callback;
-                _callback = nullptr;
-            }
-
-            /// <summary>
-            /// Method that will be called when CDM registration is complete. |result|
-            /// will be CEF_CDM_REGISTRATION_ERROR_NONE if registration completed
-            /// successfully. Otherwise, |result| and |error_message| will contain
-            /// additional information about why registration failed.
-            /// </summary>
-            virtual void OnCdmRegistrationComplete(cef_cdm_registration_error_t result,
-                const CefString& error_message) OVERRIDE
-            {
-                auto r = gcnew CdmRegistration((CdmRegistrationErrorCode)result, StringUtils::ToClr(error_message));
-
-                _callback->OnRegistrationComplete(r);
-            }
-
-            IMPLEMENT_REFCOUNTING(CefRegisterCdmCallbackAdapter)
-        };
-    }
-}

+ 0 - 71
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRequestCallbackWrapper.h

@@ -1,71 +0,0 @@
-// Copyright © 2010-2017 The CefSharp Authors. All rights reserved.
-//
-// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
-
-#pragma once
-
-#include "Stdafx.h"
-#include "CefWrapper.h"
-
-namespace CefSharp
-{
-    namespace Internals
-    {
-        private ref class CefRequestCallbackWrapper : public IRequestCallback, public CefWrapper
-        {
-        private:
-            MCefRefPtr<CefRequestCallback> _callback;
-            IFrame^ _frame;
-            IRequest^ _request;
-
-        internal:
-            CefRequestCallbackWrapper(CefRefPtr<CefRequestCallback> &callback)
-                : _callback(callback), _frame(nullptr), _request(nullptr)
-            {
-            }
-
-            CefRequestCallbackWrapper(
-                CefRefPtr<CefRequestCallback> &callback,
-                IFrame^ frame,
-                IRequest^ request)
-                : _callback(callback), _frame(frame), _request(request)
-            {
-            }
-
-            !CefRequestCallbackWrapper()
-            {
-                _callback = NULL;
-            }
-
-            ~CefRequestCallbackWrapper()
-            {
-                this->!CefRequestCallbackWrapper();
-                delete _request;
-                _request = nullptr;
-                delete _frame;
-                _frame = nullptr;
-
-                _disposed = true;
-            }
-
-        public:
-            virtual void Continue(bool allow)
-            {
-                ThrowIfDisposed();
-
-                _callback->Continue(allow);
-
-                delete this;
-            }
-
-            virtual void Cancel()
-            {
-                ThrowIfDisposed();
-
-                _callback->Cancel();
-
-                delete this;
-            }
-        };
-    }
-}

+ 0 - 0
MBI/packages/CefSharp.Common.63.0.3/src/CefSharp.Core/Internals/CefRequestWrapper.cpp


Some files were not shown because too many files changed in this diff