Don't set the display scale if DPI scaling isn't enabled

In this case we want the display mode pixel to screen coordinates to be 1:1 ... but we lose information about the UI scaling of the display - is that okay?
main
Sam Lantinga 2023-05-03 09:47:13 -07:00
parent 86b5f40b53
commit 3f0c2a6694
1 changed files with 1 additions and 1 deletions

View File

@ -182,7 +182,7 @@ static SDL_bool WIN_GetDisplayMode(_THIS, HMONITOR hMonitor, LPCWSTR deviceName,
mode->pixel_h = data->DeviceMode.dmPelsHeight; mode->pixel_h = data->DeviceMode.dmPelsHeight;
mode->refresh_rate = WIN_GetRefreshRate(&data->DeviceMode); mode->refresh_rate = WIN_GetRefreshRate(&data->DeviceMode);
if (index == ENUM_CURRENT_SETTINGS && videodata->GetDpiForMonitor) { if (index == ENUM_CURRENT_SETTINGS && videodata->GetDpiForMonitor && videodata->dpi_scaling_enabled) {
UINT hdpi_uint, vdpi_uint; UINT hdpi_uint, vdpi_uint;
if (videodata->GetDpiForMonitor(hMonitor, MDT_EFFECTIVE_DPI, &hdpi_uint, &vdpi_uint) == S_OK) { if (videodata->GetDpiForMonitor(hMonitor, MDT_EFFECTIVE_DPI, &hdpi_uint, &vdpi_uint) == S_OK) {
mode->display_scale = hdpi_uint / 96.0f; mode->display_scale = hdpi_uint / 96.0f;