Commit feda1225 authored by Bernhard Übelacker's avatar Bernhard Übelacker Committed by Alexandre Julliard

notepad: Use GetDesktopWindow() when main window is not yet created.

Commit 100504d2 introduced using GetDpiForWindow(). Unfortunately NOTEPAD_LoadSettingFromRegistry is executed when the main window is not yet created, resulting in having Globals.lfFont.lfHeight=0. This is later stored in the registry in iPointSize=0. In a fresh wine prefix there are not yet registry values created, therefore the first run of notepad does not show this problem, and iPointSize is saved with a sane value to the registry. Having Globals.lfFont.lfHeight=0 manifests for example in cups PDF prints being a single empty page. The check of point_size for having a non-zero value should also fix wine prefixes which have already a stored registry value of iPointSize=0. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55852
parent a255dd1f
......@@ -280,9 +280,9 @@ static VOID NOTEPAD_LoadSettingFromRegistry(void)
size = sizeof(DWORD);
if(RegQueryValueExW(hkey, value_iPointSize, 0, &type, (LPBYTE)&point_size, &size) == ERROR_SUCCESS)
if(type == REG_DWORD)
if(type == REG_DWORD && point_size)
/* The value is stored as 10 * twips */
Globals.lfFont.lfHeight = -MulDiv(abs(point_size), GetDpiForWindow(Globals.hMainWnd), 720);
Globals.lfFont.lfHeight = -MulDiv(abs(point_size), GetDpiForWindow(GetDesktopWindow()), 720);
size = sizeof(Globals.lfFont.lfFaceName);
if(RegQueryValueExW(hkey, value_lfFaceName, 0, &type, (LPBYTE)&data_helper, &size) == ERROR_SUCCESS)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment