diff options
| -rw-r--r-- | src/Fl_Screen_Driver.H | 1 | ||||
| -rw-r--r-- | src/Fl_Screen_Driver.cxx | 1 | ||||
| -rw-r--r-- | src/Fl_x.cxx | 2 | ||||
| -rw-r--r-- | src/drivers/X11/Fl_X11_Screen_Driver.cxx | 10 |
4 files changed, 5 insertions, 9 deletions
diff --git a/src/Fl_Screen_Driver.H b/src/Fl_Screen_Driver.H index ab78a4745..d20f429c9 100644 --- a/src/Fl_Screen_Driver.H +++ b/src/Fl_Screen_Driver.H @@ -174,7 +174,6 @@ public: void rescale_all_windows_from_screen(int screen, float f); static void transient_scale_display(float f, int nscreen); static int scale_handler(int event); - virtual void init_workarea() {} virtual float desktop_scale_factor() {return 1;} float use_startup_scale_factor(); enum APP_SCALING_CAPABILITY { diff --git a/src/Fl_Screen_Driver.cxx b/src/Fl_Screen_Driver.cxx index 9c0857972..3411e8bc6 100644 --- a/src/Fl_Screen_Driver.cxx +++ b/src/Fl_Screen_Driver.cxx @@ -428,7 +428,6 @@ int Fl_Screen_Driver::scale_handler(int event) if (f == old_f) return 1; screen_dr->rescale_all_windows_from_screen(screen, f*initial_scale); Fl_Screen_Driver::transient_scale_display(f, screen); - screen_dr->init_workarea(); Fl::handle(FL_ZOOM_EVENT, NULL); return 1; } diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx index fce8e1c8e..f3beb582e 100644 --- a/src/Fl_x.cxx +++ b/src/Fl_x.cxx @@ -1302,7 +1302,7 @@ int fl_handle(const XEvent& thisevent) #endif // USE_XRANDR if (xevent.type == PropertyNotify && xevent.xproperty.atom == fl_NET_WORKAREA) { - Fl::screen_driver()->init_workarea(); + ((Fl_X11_Screen_Driver*)Fl::screen_driver())->init_workarea(); } switch (xevent.type) { diff --git a/src/drivers/X11/Fl_X11_Screen_Driver.cxx b/src/drivers/X11/Fl_X11_Screen_Driver.cxx index ff385c340..d0274a10e 100644 --- a/src/drivers/X11/Fl_X11_Screen_Driver.cxx +++ b/src/drivers/X11/Fl_X11_Screen_Driver.cxx @@ -212,8 +212,6 @@ static int fl_workarea_xywh[4] = { -1, -1, -1, -1 }; void Fl_X11_Screen_Driver::init_workarea() { - if (!fl_display) open_display(); - Atom actual; unsigned long count, remaining; int format; @@ -247,7 +245,7 @@ void Fl_X11_Screen_Driver::init_workarea() int Fl_X11_Screen_Driver::x() { - if (fl_workarea_xywh[0] < 0) init_workarea(); + if (!fl_display) open_display(); return fl_workarea_xywh[0] #if USE_XFT / screens[0].scale @@ -256,7 +254,7 @@ int Fl_X11_Screen_Driver::x() { } int Fl_X11_Screen_Driver::y() { - if (fl_workarea_xywh[0] < 0) init_workarea(); + if (!fl_display) open_display(); return fl_workarea_xywh[1] #if USE_XFT / screens[0].scale @@ -265,7 +263,7 @@ int Fl_X11_Screen_Driver::y() { } int Fl_X11_Screen_Driver::w() { - if (fl_workarea_xywh[0] < 0) init_workarea(); + if (!fl_display) open_display(); return fl_workarea_xywh[2] #if USE_XFT / screens[0].scale @@ -274,7 +272,7 @@ int Fl_X11_Screen_Driver::w() { } int Fl_X11_Screen_Driver::h() { - if (fl_workarea_xywh[0] < 0) init_workarea(); + if (!fl_display) open_display(); return fl_workarea_xywh[3] #if USE_XFT / screens[0].scale |
