summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Fl_x.cxx2
-rw-r--r--src/drivers/X11/Fl_X11_Window_Driver.H1
-rw-r--r--src/drivers/X11/Fl_X11_Window_Driver.cxx6
3 files changed, 8 insertions, 1 deletions
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx
index b8c5a2cc2..22caae663 100644
--- a/src/Fl_x.cxx
+++ b/src/Fl_x.cxx
@@ -2824,7 +2824,7 @@ void Fl_X11_Window_Driver::show() {
if (pWindow->type() != FL_DOUBLE_WINDOW && can_boxcheat(pWindow->box())) {
fl_background_pixel = int(fl_xpixel(pWindow->color()));
}
- Fl_X::make_xid(pWindow);
+ makeWindow();
} else {
XMapRaised(fl_display, fl_xid(pWindow));
}
diff --git a/src/drivers/X11/Fl_X11_Window_Driver.H b/src/drivers/X11/Fl_X11_Window_Driver.H
index 25c1fddba..d49d0e9e7 100644
--- a/src/drivers/X11/Fl_X11_Window_Driver.H
+++ b/src/drivers/X11/Fl_X11_Window_Driver.H
@@ -84,6 +84,7 @@ public:
virtual int decorated_h();
// --- window management
+ virtual Fl_X *makeWindow();
virtual void take_focus();
virtual void flush_double();
virtual void flush_overlay();
diff --git a/src/drivers/X11/Fl_X11_Window_Driver.cxx b/src/drivers/X11/Fl_X11_Window_Driver.cxx
index bb952b7bd..07f9c5407 100644
--- a/src/drivers/X11/Fl_X11_Window_Driver.cxx
+++ b/src/drivers/X11/Fl_X11_Window_Driver.cxx
@@ -666,6 +666,12 @@ int Fl_X11_Window_Driver::scroll(int src_x, int src_y, int src_w, int src_h, int
return 0;
}
+Fl_X *Fl_X11_Window_Driver::makeWindow()
+{
+ Fl_X::make_xid(pWindow, fl_visual, fl_colormap);
+ return Fl_X::i(pWindow);
+}
+
//
// End of "$Id$".
//