Merge branch 'gdk-win32-scale-text-with-dpi-as-gtk3' into 'main'

GdkWin32: Scale text like in GTK3 with SYSTEM_DPI_AWARENESS

Closes #4187

See merge request GNOME/gtk!4979
This commit is contained in:
Luca Bacci
2022-08-24 09:35:30 +00:00

View File

@@ -31,6 +31,7 @@
#include "gdkdisplayprivate.h"
#include "gdkprivate-win32.h"
#include "gdkdisplay-win32.h"
#include "gdkwin32.h"
static char *
@@ -162,6 +163,25 @@ _gdk_win32_get_setting (const char *name,
g_value_set_int (value, 1);
return TRUE;
}
else if (strcmp ("gtk-xft-dpi", name) == 0)
{
GdkWin32Display *display = GDK_WIN32_DISPLAY (_gdk_display);
if (display->dpi_aware_type == PROCESS_SYSTEM_DPI_AWARE &&
!display->has_fixed_scale)
{
int dpi = GetDeviceCaps (GetDC (NULL), LOGPIXELSX);
if (dpi >= 96)
{
int xft_dpi = 1024 * dpi / display->surface_scale;
g_value_set_int (value, xft_dpi);
GDK_NOTE(MISC, g_print ("gdk_screen_get_setting(\"%s\") : %d\n", name, xft_dpi));
return TRUE;
}
}
return FALSE;
}
else if (strcmp ("gtk-xft-hintstyle", name) == 0)
{
g_value_set_static_string (value, "hintfull");