Prevent situation where SetProcessDPIAwareness was called after Fl_WinAPI_Screen_Driver::init().
The effect was that the file_chooser test app did not recognize the window scaling factor. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12393 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
b4e434774f
commit
c51cbd0a50
@ -508,6 +508,7 @@ void Fl_WinAPI_Screen_Driver::open_display_platform() {
|
||||
SetProcessDpiAwareness_type fl_SetProcessDpiAwareness = (SetProcessDpiAwareness_type)GetProcAddress(hMod, "SetProcessDpiAwareness");
|
||||
const int PROCESS_PER_MONITOR_DPI_AWARE = 2;
|
||||
if (fl_SetProcessDpiAwareness) fl_SetProcessDpiAwareness(PROCESS_PER_MONITOR_DPI_AWARE);
|
||||
init_screen_scale_factors();
|
||||
}
|
||||
#endif // FLTK_HIDPI_SUPPORT
|
||||
OleInitialize(0L);
|
||||
|
||||
@ -123,6 +123,7 @@ BOOL Fl_WinAPI_Screen_Driver::screen_cb(HMONITOR mon, HDC, LPRECT r)
|
||||
|
||||
void Fl_WinAPI_Screen_Driver::init()
|
||||
{
|
||||
open_display();
|
||||
// Since not all versions of Windows include multiple monitor support,
|
||||
// we do a run-time check for the required functions...
|
||||
HMODULE hMod = GetModuleHandle("USER32.DLL");
|
||||
@ -141,9 +142,6 @@ void Fl_WinAPI_Screen_Driver::init()
|
||||
// NOTE: num_screens is incremented in screen_cb so we must first reset it here...
|
||||
num_screens = 0;
|
||||
fl_edm(0, 0, screen_cb, (LPARAM)this);
|
||||
#ifdef FLTK_HIDPI_SUPPORT
|
||||
init_screen_scale_factors();
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user