using System.Windows.Interop;
namespace Hardcodet.Wpf.TaskbarNotification.Interop
{
///
/// This class is a helper for system information, currently to get the DPI factors
///
public static class SystemInfo
{
private static readonly System.Windows.Point DpiFactors;
static SystemInfo()
{
using (var source = new HwndSource(new HwndSourceParameters()))
{
if (source.CompositionTarget?.TransformToDevice != null)
{
DpiFactors = new System.Windows.Point(source.CompositionTarget.TransformToDevice.M11, source.CompositionTarget.TransformToDevice.M22);
return;
}
DpiFactors = new System.Windows.Point(1, 1);
}
}
///
/// Returns the DPI X Factor
///
public static double DpiFactorX => DpiFactors.X;
///
/// Returns the DPI Y Factor
///
public static double DpiFactorY => DpiFactors.Y;
}
}