Skip to content

Commit

Permalink
Merge pull request #3 from conceptdev/dotnet-main
Browse files Browse the repository at this point in the history
merge main into foldable
  • Loading branch information
conceptdev authored Dec 17, 2021
2 parents f31d655 + 8503a6c commit 76cdc0f
Show file tree
Hide file tree
Showing 236 changed files with 4,200 additions and 1,722 deletions.
4 changes: 2 additions & 2 deletions .github/DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ In most cases, when you have Visual Studio installed with the .NET workloads che
Install the .NET MAUI workload using the versions from a particular branch:

For example, the "preview.10" branch:
For example, the "preview.11" branch:
```
dotnet workload install maui `
--from-rollback-file https://aka.ms/dotnet/maui/preview.10.json `
--from-rollback-file https://aka.ms/dotnet/maui/preview.11.json `
--source https://aka.ms/dotnet6/nuget/index.json `
--source https://api.nuget.org/v3/index.json
```
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -367,3 +367,8 @@ MigrationBackup/
# Fody - auto-generated XML schema
FodyWeavers.xsd
.DS_Store

# Android Studio
.gradle/
.idea/
local.properties
1 change: 1 addition & 0 deletions Microsoft.Maui-mac.slnf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"src\\BlazorWebView\\samples\\WebViewAppShared\\WebViewAppShared.csproj",
"src\\BlazorWebView\\src\\Maui\\Microsoft.AspNetCore.Components.WebView.Maui.csproj",
"src\\BlazorWebView\\src\\WebView2\\Microsoft.AspNetCore.Components.WebView.WebView2.csproj",
"src\\BlazorWebView\\tests\\MauiDeviceTests\\MauiBlazorWebView.DeviceTests.csproj",
"src\\Compatibility\\Android.AppLinks\\src\\Compatibility.Android.AppLinks.csproj",
"src\\Compatibility\\Android.FormsViewGroup\\src\\Compatibility.Android.FormsViewGroup-net6.csproj",
"src\\Compatibility\\ControlGallery\\src\\Android\\Compatibility.ControlGallery.Android.csproj",
Expand Down
12 changes: 12 additions & 0 deletions Microsoft.Maui-net6.sln
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Maui.Controls.Sample.Sandbo
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Controls.DualScreen-net6", "src\Controls\DualScreen\src\Controls.DualScreen-net6.csproj", "{71FFE8BF-EBE4-4078-8484-86C6EA685D14}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{A9C514B9-1EE2-4A12-8E8A-CE16D87545C3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MauiBlazorWebView.DeviceTests", "src\BlazorWebView\tests\MauiDeviceTests\MauiBlazorWebView.DeviceTests.csproj", "{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
src\Compatibility\ControlGallery\src\Issues.Shared\Compatibility.ControlGallery.Issues.Shared.projitems*{0a39a74b-6f7a-4d41-84f2-b0ccdce899df}*SharedItemsImports = 5
Expand Down Expand Up @@ -497,6 +501,12 @@ Global
{71FFE8BF-EBE4-4078-8484-86C6EA685D14}.Debug|Any CPU.Build.0 = Debug|Any CPU
{71FFE8BF-EBE4-4078-8484-86C6EA685D14}.Release|Any CPU.ActiveCfg = Release|Any CPU
{71FFE8BF-EBE4-4078-8484-86C6EA685D14}.Release|Any CPU.Build.0 = Release|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Release|Any CPU.Build.0 = Release|Any CPU
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6}.Release|Any CPU.Deploy.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -590,6 +600,8 @@ Global
{C8B3C3B3-1CDA-41A2-BF20-A7FE33D6BB36} = {25D0D27A-C5FE-443D-8B65-D6C987F4A80E}
{532ACF23-381B-4F54-AEA9-25B5485F9148} = {E1082E26-D700-4127-9329-66D673FD2D55}
{71FFE8BF-EBE4-4078-8484-86C6EA685D14} = {50C758FE-4E10-409A-94F5-A75480960864}
{A9C514B9-1EE2-4A12-8E8A-CE16D87545C3} = {1614D1A4-5C3D-4D5B-8C89-426E37A564EF}
{5FEA7500-0ACE-4C26-9A7B-2EB3958CBBC6} = {A9C514B9-1EE2-4A12-8E8A-CE16D87545C3}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {0B8ABEAD-D2B5-4370-A187-62B5ABE4EE50}
Expand Down
144 changes: 72 additions & 72 deletions eng/Version.Details.xml

Large diffs are not rendered by default.

72 changes: 36 additions & 36 deletions eng/Versions.props
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<Project>
<PropertyGroup>
<!-- dotnet/installer -->
<MicrosoftDotnetSdkInternalPackageVersion>6.0.101-servicing.21567.21</MicrosoftDotnetSdkInternalPackageVersion>
<MicrosoftDotnetSdkInternalPackageVersion>6.0.102-servicing.21609.9</MicrosoftDotnetSdkInternalPackageVersion>
<!-- dotnet/runtime -->
<MicrosoftNETCoreAppRefPackageVersion>6.0.0</MicrosoftNETCoreAppRefPackageVersion>
<MicrosoftNETCoreAppRefPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftNETCoreAppRefPackageVersion>
<!-- xamarin/xamarin-android -->
<MicrosoftAndroidSdkWindowsPackageVersion>31.0.101-preview.12.126</MicrosoftAndroidSdkWindowsPackageVersion>
<MicrosoftAndroidSdkWindowsPackageVersion>31.0.101-preview.12.141</MicrosoftAndroidSdkWindowsPackageVersion>
<!-- xamarin/xamarin-macios -->
<MicrosoftiOSSdkPackageVersion>15.0.101-preview.12.551</MicrosoftiOSSdkPackageVersion>
<MicrosoftMacCatalystSdkPackageVersion>15.0.101-preview.12.551</MicrosoftMacCatalystSdkPackageVersion>
Expand All @@ -25,42 +25,42 @@
<MicrosoftAspNetCoreComponentsWebPackageVersion>6.0.0</MicrosoftAspNetCoreComponentsWebPackageVersion>
<MicrosoftAspNetCoreComponentsWebViewPackageVersion>6.0.0</MicrosoftAspNetCoreComponentsWebViewPackageVersion>
<MicrosoftAspNetCoreMetadataPackageVersion>6.0.0</MicrosoftAspNetCoreMetadataPackageVersion>
<MicrosoftExtensionsConfigurationAbstractionsPackageVersion>6.0.0</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
<MicrosoftExtensionsConfigurationBinderPackageVersion>6.0.0</MicrosoftExtensionsConfigurationBinderPackageVersion>
<MicrosoftExtensionsConfigurationCommandLinePackageVersion>6.0.0</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>6.0.0</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
<MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>6.0.0</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
<MicrosoftExtensionsConfigurationJsonPackageVersion>6.0.0</MicrosoftExtensionsConfigurationJsonPackageVersion>
<MicrosoftExtensionsConfigurationPackageVersion>6.0.0</MicrosoftExtensionsConfigurationPackageVersion>
<MicrosoftExtensionsConfigurationUserSecretsPackageVersion>6.0.0</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
<MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>6.0.0</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
<MicrosoftExtensionsDependencyInjectionPackageVersion>6.0.0</MicrosoftExtensionsDependencyInjectionPackageVersion>
<MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>6.0.0</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
<MicrosoftExtensionsFileProvidersCompositePackageVersion>6.0.0</MicrosoftExtensionsFileProvidersCompositePackageVersion>
<MicrosoftExtensionsConfigurationAbstractionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
<MicrosoftExtensionsConfigurationBinderPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationBinderPackageVersion>
<MicrosoftExtensionsConfigurationCommandLinePackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
<MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
<MicrosoftExtensionsConfigurationJsonPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationJsonPackageVersion>
<MicrosoftExtensionsConfigurationPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationPackageVersion>
<MicrosoftExtensionsConfigurationUserSecretsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
<MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
<MicrosoftExtensionsDependencyInjectionPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsDependencyInjectionPackageVersion>
<MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
<MicrosoftExtensionsFileProvidersCompositePackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsFileProvidersCompositePackageVersion>
<MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>6.0.0</MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>
<MicrosoftExtensionsFileProvidersPhysicalPackageVersion>6.0.0</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
<MicrosoftExtensionsFileSystemGlobbingPackageVersion>6.0.0</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
<MicrosoftExtensionsHostingAbstractionsPackageVersion>6.0.0</MicrosoftExtensionsHostingAbstractionsPackageVersion>
<MicrosoftExtensionsHostingPackageVersion>6.0.0</MicrosoftExtensionsHostingPackageVersion>
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>6.0.0</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
<MicrosoftExtensionsLoggingConfigurationPackageVersion>6.0.0</MicrosoftExtensionsLoggingConfigurationPackageVersion>
<MicrosoftExtensionsLoggingConsolePackageVersion>6.0.0</MicrosoftExtensionsLoggingConsolePackageVersion>
<MicrosoftExtensionsLoggingDebugPackageVersion>6.0.0</MicrosoftExtensionsLoggingDebugPackageVersion>
<MicrosoftExtensionsLoggingEventLogPackageVersion>6.0.0</MicrosoftExtensionsLoggingEventLogPackageVersion>
<MicrosoftExtensionsLoggingEventSourcePackageVersion>6.0.0</MicrosoftExtensionsLoggingEventSourcePackageVersion>
<MicrosoftExtensionsLoggingPackageVersion>6.0.0</MicrosoftExtensionsLoggingPackageVersion>
<MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>6.0.0</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
<MicrosoftExtensionsOptionsPackageVersion>6.0.0</MicrosoftExtensionsOptionsPackageVersion>
<MicrosoftExtensionsPrimitivesPackageVersion>6.0.0</MicrosoftExtensionsPrimitivesPackageVersion>
<MicrosoftExtensionsFileProvidersPhysicalPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
<MicrosoftExtensionsFileSystemGlobbingPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
<MicrosoftExtensionsHostingAbstractionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsHostingAbstractionsPackageVersion>
<MicrosoftExtensionsHostingPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsHostingPackageVersion>
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
<MicrosoftExtensionsLoggingConfigurationPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingConfigurationPackageVersion>
<MicrosoftExtensionsLoggingConsolePackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingConsolePackageVersion>
<MicrosoftExtensionsLoggingDebugPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingDebugPackageVersion>
<MicrosoftExtensionsLoggingEventLogPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingEventLogPackageVersion>
<MicrosoftExtensionsLoggingEventSourcePackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingEventSourcePackageVersion>
<MicrosoftExtensionsLoggingPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsLoggingPackageVersion>
<MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
<MicrosoftExtensionsOptionsPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsOptionsPackageVersion>
<MicrosoftExtensionsPrimitivesPackageVersion>6.0.1-mauipre.1.21602.7</MicrosoftExtensionsPrimitivesPackageVersion>
<MicrosoftJSInteropPackageVersion>6.0.0</MicrosoftJSInteropPackageVersion>
<MicrosoftWindowsDesktopAppRuntimewinx64Version>6.0.0</MicrosoftWindowsDesktopAppRuntimewinx64Version>
<SystemCodeDomPackageVersion>6.0.0</SystemCodeDomPackageVersion>
<SystemDiagnosticsDiagnosticSourcePackageVersion>6.0.0</SystemDiagnosticsDiagnosticSourcePackageVersion>
<SystemDiagnosticsEventLogPackageVersion>6.0.0</SystemDiagnosticsEventLogPackageVersion>
<SystemIOPipelinesPackageVersion>6.0.0</SystemIOPipelinesPackageVersion>
<SystemRuntimeCompilerServicesUnsafePackageVersion>6.0.0</SystemRuntimeCompilerServicesUnsafePackageVersion>
<SystemTextEncodingsWebPackageVersion>6.0.0</SystemTextEncodingsWebPackageVersion>
<SystemTextJsonPackageVersion>6.0.0</SystemTextJsonPackageVersion>
<SystemCodeDomPackageVersion>6.0.1-mauipre.1.21602.7</SystemCodeDomPackageVersion>
<SystemDiagnosticsDiagnosticSourcePackageVersion>6.0.1-mauipre.1.21602.7</SystemDiagnosticsDiagnosticSourcePackageVersion>
<SystemDiagnosticsEventLogPackageVersion>6.0.1-mauipre.1.21602.7</SystemDiagnosticsEventLogPackageVersion>
<SystemIOPipelinesPackageVersion>6.0.1-mauipre.1.21602.7</SystemIOPipelinesPackageVersion>
<SystemRuntimeCompilerServicesUnsafePackageVersion>6.0.1-mauipre.1.21602.7</SystemRuntimeCompilerServicesUnsafePackageVersion>
<SystemTextEncodingsWebPackageVersion>6.0.1-mauipre.1.21602.7</SystemTextEncodingsWebPackageVersion>
<SystemTextJsonPackageVersion>6.0.1-mauipre.1.21602.7</SystemTextJsonPackageVersion>
<!-- Other packages -->
<MicrosoftMauiGraphicsVersion>6.0.101-preview.11.758</MicrosoftMauiGraphicsVersion>
<SystemNumericsVectorsVersion>4.5.0</SystemNumericsVectorsVersion>
Expand Down
4 changes: 4 additions & 0 deletions eng/pipelines/device-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,7 @@ stages:
desc: Controls
android: $(System.DefaultWorkingDirectory)/src/Controls/tests/DeviceTests/Controls.DeviceTests.csproj
ios: $(System.DefaultWorkingDirectory)/src/Controls/tests/DeviceTests/Controls.DeviceTests.csproj
- name: blazorwebview
desc: BlazorWebView
android: $(System.DefaultWorkingDirectory)/src/BlazorWebView/tests/MauiDeviceTests/MauiBlazorWebView.DeviceTests.csproj
ios: $(System.DefaultWorkingDirectory)/src/BlazorWebView/tests/MauiDeviceTests/MauiBlazorWebView.DeviceTests.csproj
19 changes: 19 additions & 0 deletions src/BlazorWebView/samples/WebViewAppShared/TestComponent1.razor
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<div class="my-component">
The count is <span id="counterValue">@counter</span>. <button @onclick=DoClick id="incrementButton">Increment</button>
</div>

<div id="controlDiv">@controlValue</div>

@code
{
int controlValue; // used to control test flow
int counter;

void DoClick()
{
counter++;

controlValue = counter;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
.my-component {
border: 2px dashed red;
padding: 1em;
margin: 1em 0;
background-image: url('background.png');
}
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ private void StartWebViewCoreIfPossible()
? mauiAssetFileProvider
: new CompositeFileProvider(customFileProvider, mauiAssetFileProvider);

_webviewManager = new AndroidWebKitWebViewManager(this, NativeView, Services!, ComponentsDispatcher, mauiAssetFileProvider, VirtualView.JSComponents, hostPageRelativePath);
_webviewManager = new AndroidWebKitWebViewManager(this, NativeView, Services!, ComponentsDispatcher, fileProvider, VirtualView.JSComponents, hostPageRelativePath);

if (RootComponents != null)
{
Expand Down
20 changes: 16 additions & 4 deletions src/BlazorWebView/src/WindowsForms/BlazorWebView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Windows.Forms;
using Microsoft.AspNetCore.Components.WebView.WebView2;
using Microsoft.Extensions.FileProviders;
Expand Down Expand Up @@ -147,11 +148,22 @@ private void StartWebViewCoreIfPossible()

// We assume the host page is always in the root of the content directory, because it's
// unclear there's any other use case. We can add more options later if so.
var contentRootDir = Path.GetDirectoryName(Path.GetFullPath(HostPage));
var hostPageRelativePath = Path.GetRelativePath(contentRootDir, HostPage);
string appRootDir;
var entryAssemblyLocation = Assembly.GetEntryAssembly()?.Location;
if (!string.IsNullOrEmpty(entryAssemblyLocation))
{
appRootDir = Path.GetDirectoryName(entryAssemblyLocation);
}
else
{
appRootDir = Environment.CurrentDirectory;
}
var hostPageFullPath = Path.GetFullPath(Path.Combine(appRootDir, HostPage));
var contentRootDirFullPath = Path.GetDirectoryName(hostPageFullPath);
var hostPageRelativePath = Path.GetRelativePath(contentRootDirFullPath, hostPageFullPath);

var customFileProvider = CreateFileProvider(contentRootDir);
var assetFileProvider = new PhysicalFileProvider(contentRootDir);
var customFileProvider = CreateFileProvider(contentRootDirFullPath);
var assetFileProvider = new PhysicalFileProvider(contentRootDirFullPath);
IFileProvider fileProvider = customFileProvider == null
? assetFileProvider
: new CompositeFileProvider(customFileProvider, assetFileProvider);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<PropertyGroup>
<StaticWebAssetBasePath>/</StaticWebAssetBasePath>
<StaticWebAssetProjectMode>Root</StaticWebAssetProjectMode>
<CoreCompileDependsOn Condition="'$(PublishProtocol)' == 'ClickOnce'">$(CoreCompileDependsOn);StaticWebAssetsPrepareForRun</CoreCompileDependsOn>
<CoreCompileDependsOn Condition="'$(PublishProtocol)' == 'ClickOnce' or '$(PublishProtocol)' == 'FileSystem'">$(CoreCompileDependsOn);StaticWebAssetsPrepareForRun</CoreCompileDependsOn>
</PropertyGroup>

<Target Name="AddStaticWebAssetsForClickOnce" AfterTargets="ComputeFilesToPublish" Condition="'$(PublishProtocol)' == 'ClickOnce'">
Expand All @@ -15,4 +15,13 @@
</ItemGroup>
</Target>

<Target Name="AddStaticWebAssetsForAppXBundle" BeforeTargets="PublishItemsOutputGroup" Condition="'$(PublishProtocol)' == 'FileSystem'">
<ComputeStaticWebAssetsTargetPaths Assets="@(StaticWebAsset)" PathPrefix="wwwroot">
<Output TaskParameter="AssetsWithTargetPath" ItemName="_AppXBundleAssetCandidate" />
</ComputeStaticWebAssetsTargetPaths>
<ItemGroup>
<ResolvedFileToPublish Include="@(_AppXBundleAssetCandidate)" RelativePath="%(_AppXBundleAssetCandidate.TargetPath)" KeepMetadata="TargetPath" />
</ItemGroup>
</Target>

</Project>
20 changes: 16 additions & 4 deletions src/BlazorWebView/src/Wpf/BlazorWebView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
Expand Down Expand Up @@ -154,11 +155,22 @@ private void StartWebViewCoreIfPossible()

// We assume the host page is always in the root of the content directory, because it's
// unclear there's any other use case. We can add more options later if so.
var contentRootDir = Path.GetDirectoryName(Path.GetFullPath(HostPage));
var hostPageRelativePath = Path.GetRelativePath(contentRootDir, HostPage);
string appRootDir;
var entryAssemblyLocation = Assembly.GetEntryAssembly()?.Location;
if (!string.IsNullOrEmpty(entryAssemblyLocation))
{
appRootDir = Path.GetDirectoryName(entryAssemblyLocation);
}
else
{
appRootDir = Environment.CurrentDirectory;
}
var hostPageFullPath = Path.GetFullPath(Path.Combine(appRootDir, HostPage));
var contentRootDirFullPath = Path.GetDirectoryName(hostPageFullPath);
var hostPageRelativePath = Path.GetRelativePath(contentRootDirFullPath, hostPageFullPath);

var customFileProvider = CreateFileProvider(contentRootDir);
var assetFileProvider = new PhysicalFileProvider(contentRootDir);
var customFileProvider = CreateFileProvider(contentRootDirFullPath);
var assetFileProvider = new PhysicalFileProvider(contentRootDirFullPath);
IFileProvider fileProvider = customFileProvider == null
? assetFileProvider
: new CompositeFileProvider(customFileProvider, assetFileProvider);
Expand Down
Loading

0 comments on commit 76cdc0f

Please sign in to comment.