notepad: Use GetDesktopWindow() when main window is not yet created.
Commit 100504d2f5
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
This commit is contained in:
parent
a255dd1f3c
commit
feda122578
1 changed files with 2 additions and 2 deletions
|
@ -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)
|
||||
|
|
Loading…
Add table
Reference in a new issue