Skip to content

Commit 288ba5a

Browse files
committed
v8.5.27224.0
1 parent 5668f50 commit 288ba5a

File tree

225 files changed

+4160
-2546
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

225 files changed

+4160
-2546
lines changed

Common/Common.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<Platforms>AnyCPU;x64</Platforms>
1111
</PropertyGroup>
1212
<ItemGroup>
13-
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.4.27341.0" />
14-
<PackageReference Include="ITHit.FileSystem" Version="8.4.27341.0" />
13+
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.5.27224.0" />
14+
<PackageReference Include="ITHit.FileSystem" Version="8.5.27224.0" />
1515
</ItemGroup>
1616
</Project>

Windows/Common/Core/Common.Windows.Core.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
<PackageReference Include="Microsoft.Windows.SDK.Contracts" Version="10.0.26100.1742" />
2424
</ItemGroup>
2525
<ItemGroup>
26-
<PackageReference Include="ITHit.FileSystem.Windows.Package" Version="8.4.27341.0" />
27-
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.4.27341.0" />
26+
<PackageReference Include="ITHit.FileSystem.Windows.Package" Version="8.5.27224.0" />
27+
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.5.27224.0" />
2828
<ProjectReference Include="..\..\..\Common\Common.csproj" />
2929
</ItemGroup>
3030
</Project>

Windows/Common/Core/Registrar.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ private static async Task<bool> UnregisterSyncRootAsync(string syncRootPath, ILo
202202
/// <summary>
203203
/// Unregisters all sync roots that has a provider ID and removes all components.
204204
/// </summary>
205-
/// <param name="providerID">This method will only unmount sync roots that has this provider ID.</param>
205+
/// <param name="providerId">This method will only unmount sync roots that has this provider ID.</param>
206206
/// <param name="fullUnregistration">
207207
/// Pass true in the released application to remove all registered components.
208208
/// Pass false in development mode, to keep sparse package,

Windows/Common/VirtualDrive/Common.Windows.VirtualDrive.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
<Compile Remove="IVirtualFolder.cs" />
1414
</ItemGroup>
1515
<ItemGroup>
16-
<PackageReference Include="ITHit.FileSystem.Windows.AppHelper" Version="8.4.27341.0" />
17-
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.4.27341.0" />
16+
<PackageReference Include="ITHit.FileSystem.Windows.AppHelper" Version="8.5.27224.0" />
17+
<PackageReference Include="ITHit.FileSystem.Windows" Version="8.5.27224.0" />
1818
<ProjectReference Include="..\..\..\Common\Common.csproj" />
1919
<ProjectReference Include="..\Core\Common.Windows.Core.csproj" />
2020
</ItemGroup>

Windows/Common/VirtualDrive/VirtualEngineBase.cs

+4-1
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,10 @@ private void LogItemChanged(ItemsChangeEventArgs e, ChangeEventItem item)
214214
logger.LogMessage(msg, item.Path, item.NewPath, e.OperationContext, item.Metadata);
215215
break;
216216
case OperationSource.Client:
217-
logger.LogDebug(msg, item.Path, item.NewPath, e.OperationContext, item.Metadata);
217+
if(e.OperationType == OperationType.Dehydration)
218+
logger.LogMessage(msg, item.Path, item.NewPath, e.OperationContext, item.Metadata);
219+
else
220+
logger.LogDebug(msg, item.Path, item.NewPath, e.OperationContext, item.Metadata);
218221
break;
219222
}
220223
break;

Windows/UserFileSystemSamplesWin.sln

+4-4
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Common.Windows.VirtualDrive
2121
EndProject
2222
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Common", "..\Common\Common.csproj", "{C1585095-4C3B-4CD1-B8B2-ECDD378D41BE}"
2323
EndProject
24-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebDAVDrive", "WebDAVDrive\WebDAVDrive\WebDAVDrive.csproj", "{18964270-1F2A-470E-A205-6F0AF976DA2E}"
24+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebDAVDrive", "WebDAVDrive\WebDAVDrive.csproj", "{18964270-1F2A-470E-A205-6F0AF976DA2E}"
2525
EndProject
2626
Global
2727
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -83,9 +83,9 @@ Global
8383
{C1585095-4C3B-4CD1-B8B2-ECDD378D41BE}.Release|Any CPU.Build.0 = Release|Any CPU
8484
{C1585095-4C3B-4CD1-B8B2-ECDD378D41BE}.Release|x64.ActiveCfg = Release|x64
8585
{C1585095-4C3B-4CD1-B8B2-ECDD378D41BE}.Release|x64.Build.0 = Release|x64
86-
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
87-
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.Build.0 = Debug|Any CPU
88-
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
86+
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.ActiveCfg = Debug|x64
87+
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.Build.0 = Debug|x64
88+
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|Any CPU.Deploy.0 = Debug|x64
8989
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|x64.ActiveCfg = Debug|Any CPU
9090
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|x64.Build.0 = Debug|Any CPU
9191
{18964270-1F2A-470E-A205-6F0AF976DA2E}.Debug|x64.Deploy.0 = Debug|Any CPU

Windows/VirtualDrive/VirtualDrive/VirtualDrive.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ This is an advanced project with ETags support, Microsoft Office documents editi
4040
<PackageReference Include="System.Drawing.Common" Version="9.0.0" />
4141
</ItemGroup>
4242
<ItemGroup>
43-
<PackageReference Include="ITHit.FileSystem.Windows.Package" Version="8.4.27341.0" />
43+
<PackageReference Include="ITHit.FileSystem.Windows.Package" Version="8.5.27224.0" />
4444
<ProjectReference Include="..\..\..\Common\Common.csproj" />
4545
<ProjectReference Include="..\..\Common\VirtualDrive\Common.Windows.VirtualDrive.csproj" />
4646
</ItemGroup>

Windows/VirtualDrive/VirtualDrive/VirtualFileSystemItem.cs

+40-4
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ public async Task<byte[]> GetThumbnailAsync(uint size, IOperationContext operati
160160
byte[] thumbnail = ThumbnailExtractor.GetRemoteThumbnail(remoteStoragePath, size);
161161

162162
string thumbnailResult = thumbnail != null ? "Success" : "Not Impl";
163-
Logger.LogMessage($"{nameof(IFileSystemItem)}.{nameof(GetThumbnailAsync)}(): {thumbnailResult}", UserFileSystemPath);
163+
Logger.LogDebug($"{nameof(IFileSystemItem)}.{nameof(GetThumbnailAsync)}(): {thumbnailResult}", UserFileSystemPath, default, operationContext);
164164

165165
return thumbnail;
166166
}
@@ -230,8 +230,8 @@ public async Task LockAsync(LockMode lockMode, IOperationContext operationContex
230230
// Save the lock token and other lock info received from your remote storage on the client.
231231
// Supply the lock-token as part of each remote storage update in File.WriteAsync() method.
232232
// For demo purposes we just fill some generic data.
233-
ServerLockInfo serverLockInfo = new ServerLockInfo()
234-
{
233+
ServerLockInfo serverLockInfo = new ServerLockInfo()
234+
{
235235
LockToken = "ServerToken",
236236
Owner = Engine.CurrentUserPrincipal,
237237
Exclusive = true,
@@ -241,6 +241,42 @@ public async Task LockAsync(LockMode lockMode, IOperationContext operationContex
241241

242242
// Save lock-token and lock-mode.
243243
operationContext.Properties.SetLockInfo(serverLockInfo);
244+
245+
246+
if (lockMode == LockMode.Auto)
247+
{
248+
// Start the timer to unlock if the file is not locked.
249+
System.Timers.Timer timer = new System.Timers.Timer(10000);
250+
timer.AutoReset = true;
251+
timer.Elapsed += async (object sender, System.Timers.ElapsedEventArgs e) =>
252+
{
253+
try
254+
{
255+
if (cancellationToken.IsCancellationRequested) return;
256+
257+
if (operationContext.Properties.TryGetLockInfo(out ServerLockInfo serverLockInfo) &&
258+
FilterHelper.IsLockedWithOwnerFile(UserFileSystemPath) && !FilterHelper.IsOwnerFileExists(UserFileSystemPath))
259+
{
260+
await Engine.ClientNotifications(UserFileSystemPath).UnlockAsync(true, cancellationToken);
261+
PlaceholderItem.UpdateUI(UserFileSystemPath);
262+
// Stop the timer.
263+
timer.Dispose();
264+
}
265+
}
266+
catch (TaskCanceledException)
267+
{
268+
// Stop the timer.
269+
timer.Dispose();
270+
271+
Logger.LogDebug("Checking lock canceled", UserFileSystemPath, default, operationContext);
272+
}
273+
catch (Exception ex)
274+
{
275+
Logger.LogError("Checking lock failed", UserFileSystemPath, default, ex, operationContext);
276+
}
277+
};
278+
timer.Start();
279+
}
244280
}
245281

246282
///<inheritdoc>
@@ -258,7 +294,7 @@ public async Task<LockMode> GetLockModeAsync(IOperationContext operationContext,
258294
public async Task UnlockAsync(IOperationContext operationContext, CancellationToken cancellationToken)
259295
{
260296
Logger.LogMessage($"{nameof(ILock)}.{nameof(UnlockAsync)}()", UserFileSystemPath, default, operationContext);
261-
297+
262298
// Read the lock-token.
263299
if (operationContext.Properties.TryGetLockInfo(out ServerLockInfo lockInfo))
264300
{

Windows/VirtualFileSystem/VirtualFileSystem.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ This project does not support ETags, locking, Microsoft Office documents editing
3535
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
3636
</ItemGroup>
3737
<ItemGroup>
38-
<PackageReference Include="ITHit.FileSystem.Windows.AppHelper" Version="8.4.27341.0" />
38+
<PackageReference Include="ITHit.FileSystem.Windows.AppHelper" Version="8.5.27224.0" />
3939
<ProjectReference Include="..\Common\Core\Common.Windows.Core.csproj" />
4040
</ItemGroup>
4141
<ItemGroup>

Windows/WebDAVDrive/App.xaml

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Application
3+
x:Class="WebDAVDrive.App"
4+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
5+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
6+
xmlns:local="using:WebDAVDrive">
7+
<Application.Resources>
8+
<ResourceDictionary>
9+
<ResourceDictionary.MergedDictionaries>
10+
<ResourceDictionary Source="Resources/Styles/Colors.xaml" />
11+
<ResourceDictionary Source="Resources/Styles/Styles.xaml" />
12+
<ResourceDictionary Source="Resources/Styles/CompareResources.xaml" />
13+
<ResourceDictionary Source="Resources/Styles/MountNewDriveResources.xaml" />
14+
<ResourceDictionary Source="Resources/Styles/TrayResources.xaml" />
15+
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
16+
<!-- Other merged dictionaries here -->
17+
</ResourceDictionary.MergedDictionaries>
18+
<!-- Other app resources here -->
19+
</ResourceDictionary>
20+
</Application.Resources>
21+
</Application>

0 commit comments

Comments
 (0)