Slightly simpler Fl_WinAPI_Screen_Driver::init()
This commit is contained in:
parent
643533b4b8
commit
23484c30a9
@ -452,11 +452,12 @@ int Fl_Screen_Driver::scale_handler(int event)
|
|||||||
void Fl_Screen_Driver::use_startup_scale_factor()
|
void Fl_Screen_Driver::use_startup_scale_factor()
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
|
int s_count = screen_count();
|
||||||
desktop_scale_factor();
|
desktop_scale_factor();
|
||||||
if ((p = fl_getenv("FLTK_SCALING_FACTOR"))) {
|
if ((p = fl_getenv("FLTK_SCALING_FACTOR"))) {
|
||||||
float factor = 1;
|
float factor = 1;
|
||||||
sscanf(p, "%f", &factor);
|
sscanf(p, "%f", &factor);
|
||||||
for (int i = 0; i < screen_count(); i++) scale(i, factor * scale(i));
|
for (int i = 0; i < s_count; i++) scale(i, factor * scale(i));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,7 +113,6 @@ void Fl_WinAPI_Screen_Driver::init()
|
|||||||
// we do a run-time check for the required functions...
|
// we do a run-time check for the required functions...
|
||||||
HMODULE hMod = GetModuleHandle("USER32.DLL");
|
HMODULE hMod = GetModuleHandle("USER32.DLL");
|
||||||
|
|
||||||
int old_num_screens = num_screens;
|
|
||||||
if (hMod) {
|
if (hMod) {
|
||||||
// check that EnumDisplayMonitors is available
|
// check that EnumDisplayMonitors is available
|
||||||
fl_edm_func fl_edm = (fl_edm_func)GetProcAddress(hMod, "EnumDisplayMonitors");
|
fl_edm_func fl_edm = (fl_edm_func)GetProcAddress(hMod, "EnumDisplayMonitors");
|
||||||
@ -140,10 +139,8 @@ void Fl_WinAPI_Screen_Driver::init()
|
|||||||
screens[0].right = GetSystemMetrics(SM_CXSCREEN);
|
screens[0].right = GetSystemMetrics(SM_CXSCREEN);
|
||||||
screens[0].bottom = GetSystemMetrics(SM_CYSCREEN);
|
screens[0].bottom = GetSystemMetrics(SM_CYSCREEN);
|
||||||
work_area[0] = screens[0];
|
work_area[0] = screens[0];
|
||||||
scale_of_screen[0] = 1;
|
|
||||||
way_out:
|
way_out:
|
||||||
// prevent desktop_scale_factor() from being called twice at app startup
|
desktop_scale_factor();
|
||||||
if (old_num_screens >= 0) desktop_scale_factor();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user