Remove unnecessary use of Program.WindowScaleFactor

merge-requests/165/head
Alula 2025-10-14 14:37:35 +02:00 committed by GreemDev
parent bd8e0f0ec7
commit 5f08635dd1
4 changed files with 12 additions and 24 deletions

View File

@ -28,7 +28,7 @@ namespace Ryujinx.Common.SystemInterop
}
}
public static double GetActualScaleFactor(WindowingSystemType windowingSystem)
public static void ConfigureDPIScaling(WindowingSystemType windowingSystem)
{
double userDpiScale = 96.0;
@ -91,15 +91,6 @@ namespace Ryujinx.Common.SystemInterop
{
Logger.Warning?.Print(LogClass.Application, $"Couldn't determine monitor DPI: {e.Message}");
}
return userDpiScale;
}
public static double GetWindowScaleFactor(WindowingSystemType windowingSystem)
{
double userDpiScale = GetActualScaleFactor(windowingSystem);
return Math.Min(userDpiScale / StandardDpiScale, MaxScaleFactor);
}
}
}

View File

@ -30,7 +30,6 @@ namespace Ryujinx.Ava
{
internal partial class Program
{
public static double WindowScaleFactor { get; set; }
public static double DesktopScaleFactor { get; set; } = 1.0;
public static string Version { get; private set; }
public static string ConfigurationPath { get; private set; }
@ -139,7 +138,7 @@ namespace Ryujinx.Ava
ReloadConfig();
WindowScaleFactor = ForceDpiAware.GetWindowScaleFactor(builder.GetWindowingSystemType());
ForceDpiAware.ConfigureDPIScaling(builder.GetWindowingSystemType());
// Logging system information.
PrintSystemInfo();

View File

@ -232,11 +232,11 @@ namespace Ryujinx.Ava.UI.Views.Main
);
// Correctly size window when 'TitleBar' is enabled (Nov. 14, 2024)
double barsHeight = ((Window.StatusBarHeight + Window.MenuBarHeight) +
(ConfigurationState.Instance.ShowOldUI ? (int)Window.TitleBar.Height : 0));
double barsHeight = Window.StatusBarHeight + Window.MenuBarHeight +
(ConfigurationState.Instance.ShowOldUI ? (int)Window.TitleBar.Height : 0);
double windowWidthScaled = (resolutionWidth * Program.WindowScaleFactor);
double windowHeightScaled = ((resolutionHeight + barsHeight) * Program.WindowScaleFactor);
double windowWidthScaled = resolutionWidth;
double windowHeightScaled = resolutionHeight + barsHeight;
Dispatcher.UIThread.Post(() =>
{

View File

@ -442,8 +442,8 @@ namespace Ryujinx.Ava.UI.Windows
if (!ConfigurationState.Instance.RememberWindowState)
{
// Correctly size window when 'TitleBar' is enabled (Nov. 14, 2024)
ViewModel.WindowHeight = (720 + StatusBarHeight + MenuBarHeight + TitleBarHeight) * Program.WindowScaleFactor;
ViewModel.WindowWidth = 1280 * Program.WindowScaleFactor;
ViewModel.WindowHeight = 720 + StatusBarHeight + MenuBarHeight + TitleBarHeight;
ViewModel.WindowWidth = 1280;
WindowState = WindowState.Normal;
WindowStartupLocation = WindowStartupLocation.CenterScreen;
@ -454,8 +454,8 @@ namespace Ryujinx.Ava.UI.Windows
PixelPoint savedPoint = new(ConfigurationState.Instance.UI.WindowStartup.WindowPositionX,
ConfigurationState.Instance.UI.WindowStartup.WindowPositionY);
ViewModel.WindowHeight = ConfigurationState.Instance.UI.WindowStartup.WindowSizeHeight * Program.WindowScaleFactor;
ViewModel.WindowWidth = ConfigurationState.Instance.UI.WindowStartup.WindowSizeWidth * Program.WindowScaleFactor;
ViewModel.WindowHeight = ConfigurationState.Instance.UI.WindowStartup.WindowSizeHeight;
ViewModel.WindowWidth = ConfigurationState.Instance.UI.WindowStartup.WindowSizeWidth;
ViewModel.WindowState = ConfigurationState.Instance.UI.WindowStartup.WindowMaximized.Value ? WindowState.Maximized : WindowState.Normal;
@ -477,10 +477,8 @@ namespace Ryujinx.Ava.UI.Windows
// Only save rectangle properties if the window is not in a maximized state.
if (WindowState != WindowState.Maximized)
{
// Since scaling is being applied to the loaded settings from disk (see SetWindowSizePosition() above), scaling should be removed from width/height before saving out to disk
// as well - otherwise anyone not using a 1.0 scale factor their window will increase in size with every subsequent launch of the program when scaling is applied (Nov. 14, 2024)
ConfigurationState.Instance.UI.WindowStartup.WindowSizeHeight.Value = (int)(Height / Program.WindowScaleFactor);
ConfigurationState.Instance.UI.WindowStartup.WindowSizeWidth.Value = (int)(Width / Program.WindowScaleFactor);
ConfigurationState.Instance.UI.WindowStartup.WindowSizeHeight.Value = (int)Height;
ConfigurationState.Instance.UI.WindowStartup.WindowSizeWidth.Value = (int)Width;
ConfigurationState.Instance.UI.WindowStartup.WindowPositionX.Value = Position.X;
ConfigurationState.Instance.UI.WindowStartup.WindowPositionY.Value = Position.Y;