Initial commit to new repository

This commit is contained in:
2026-04-03 18:22:19 +09:00
commit 4458bb0f52
7672 changed files with 452440 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
using System;
using Microsoft.Win32;
namespace AxCopilot.Services;
public sealed class SessionTrackingService : IDisposable
{
private DateTime? _unlockTime;
private bool _disposed;
public SessionTrackingService()
{
_unlockTime = DateTime.Now;
SystemEvents.SessionSwitch += OnSessionSwitch;
}
private void OnSessionSwitch(object sender, SessionSwitchEventArgs e)
{
if (e.Reason == SessionSwitchReason.SessionLock)
{
FlushActiveTime();
}
else if (e.Reason == SessionSwitchReason.SessionUnlock || e.Reason == SessionSwitchReason.SessionLogon)
{
_unlockTime = DateTime.Now;
}
}
private void FlushActiveTime()
{
if (_unlockTime.HasValue)
{
int num = (int)(DateTime.Now - _unlockTime.Value).TotalSeconds;
if (num > 0)
{
UsageStatisticsService.AddActiveSeconds(num);
}
_unlockTime = null;
}
}
public void Dispose()
{
if (!_disposed)
{
_disposed = true;
FlushActiveTime();
SystemEvents.SessionSwitch -= OnSessionSwitch;
}
}
}