add forced invoke scan for clearing cache dir, add forced rescan on pause
This commit is contained in:
@@ -70,8 +70,9 @@ public class PeriodicFileScanner : IDisposable
|
|||||||
_scanCancellationTokenSource?.Cancel();
|
_scanCancellationTokenSource?.Cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void InvokeScan()
|
public void InvokeScan(bool forced = false)
|
||||||
{
|
{
|
||||||
|
bool isForced = forced;
|
||||||
_scanCancellationTokenSource?.Cancel();
|
_scanCancellationTokenSource?.Cancel();
|
||||||
_scanCancellationTokenSource = new CancellationTokenSource();
|
_scanCancellationTokenSource = new CancellationTokenSource();
|
||||||
var token = _scanCancellationTokenSource.Token;
|
var token = _scanCancellationTokenSource.Token;
|
||||||
@@ -80,8 +81,9 @@ public class PeriodicFileScanner : IDisposable
|
|||||||
while (!token.IsCancellationRequested)
|
while (!token.IsCancellationRequested)
|
||||||
{
|
{
|
||||||
RecalculateFileCacheSize();
|
RecalculateFileCacheSize();
|
||||||
if (!_pluginConfiguration.FileScanPaused)
|
if (!_pluginConfiguration.FileScanPaused || isForced)
|
||||||
{
|
{
|
||||||
|
isForced = false;
|
||||||
await PeriodicFileScan(token);
|
await PeriodicFileScan(token);
|
||||||
}
|
}
|
||||||
_timeUntilNextScan = TimeSpan.FromSeconds(timeBetweenScans);
|
_timeUntilNextScan = TimeSpan.FromSeconds(timeBetweenScans);
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ namespace MareSynchronos.UI
|
|||||||
|
|
||||||
if (ImGui.Button("Start Scan##startScan"))
|
if (ImGui.Button("Start Scan##startScan"))
|
||||||
{
|
{
|
||||||
_fileCacheManager.InvokeScan();
|
_fileCacheManager.InvokeScan(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -159,6 +159,11 @@ namespace MareSynchronos.UI
|
|||||||
else if (_pluginConfiguration.FileScanPaused)
|
else if (_pluginConfiguration.FileScanPaused)
|
||||||
{
|
{
|
||||||
ImGui.Text("File scanner is paused");
|
ImGui.Text("File scanner is paused");
|
||||||
|
ImGui.SameLine();
|
||||||
|
if (ImGui.Button("Force Rescan##forcedrescan"))
|
||||||
|
{
|
||||||
|
_cacheScanner.InvokeScan(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -512,7 +517,7 @@ namespace MareSynchronos.UI
|
|||||||
|
|
||||||
public void RecalculateFileCacheSize()
|
public void RecalculateFileCacheSize()
|
||||||
{
|
{
|
||||||
_cacheScanner.InvokeScan();
|
_cacheScanner.InvokeScan(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DrawParallelScansSetting()
|
public void DrawParallelScansSetting()
|
||||||
|
|||||||
Reference in New Issue
Block a user