summaryrefslogtreecommitdiff
path: root/src/Fl_Screen_Driver.cxx
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2017-06-01 14:05:47 +0000
committerManolo Gouy <Manolo>2017-06-01 14:05:47 +0000
commit90efebb97e5a97514cfdeb92bdf0bc462099b4cd (patch)
treeea211f7ae6836411d57d3632faf3c26171607d8c /src/Fl_Screen_Driver.cxx
parent3a390bfb5fd2dc0c0b034c262cf79a6fb1db1e5f (diff)
Divide virtual Fl_Screen_Driver::open_display() in a platform-specific part followed by a platform-independent part.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12245 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Screen_Driver.cxx')
-rw-r--r--src/Fl_Screen_Driver.cxx17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/Fl_Screen_Driver.cxx b/src/Fl_Screen_Driver.cxx
index 4abecc956..1ccc7ff5f 100644
--- a/src/Fl_Screen_Driver.cxx
+++ b/src/Fl_Screen_Driver.cxx
@@ -502,6 +502,23 @@ float Fl_Screen_Driver::default_scale_factor()
}
+void Fl_Screen_Driver::open_display()
+{
+ open_display_platform();
+ static bool been_here = false;
+ if (!been_here) {
+ been_here = true;
+ if (rescalable()) {
+ float factor = default_scale_factor();
+ for (int i = 0; i < screen_count(); i++) scale(i, factor);
+#if defined(FLTK_HIDPI_SUPPORT) || !(defined(WIN32) || defined(__APPLE__))
+ Fl::add_handler(Fl_Screen_Driver::scale_handler);
+#endif
+ Fl_Graphics_Driver::default_driver().scale(factor);
+ }
+ }
+}
+
//
// End of "$Id$".
//