summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FL/x.H1
-rw-r--r--src/Fl_x.cxx3
-rw-r--r--src/drivers/X11/Fl_X11_Window_Driver.H1
-rw-r--r--src/drivers/X11/Fl_X11_Window_Driver.cxx2
4 files changed, 4 insertions, 3 deletions
diff --git a/FL/x.H b/FL/x.H
index 66a0f09bc..b323552aa 100644
--- a/FL/x.H
+++ b/FL/x.H
@@ -124,7 +124,6 @@ public:
int set_cursor(const Fl_RGB_Image*, int, int);
static void make_xid(Fl_Window*,XVisualInfo* =fl_visual, Colormap=fl_colormap);
static Fl_X* set_xid(Fl_Window*, Window);
- static void activate_window(Window w);
};
extern FL_EXPORT char fl_override_redirect; // hack into Fl_X::make_xid()
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx
index c564f0d93..faa8a068b 100644
--- a/src/Fl_x.cxx
+++ b/src/Fl_x.cxx
@@ -2145,7 +2145,8 @@ char Fl_Xlib_Graphics_Driver::can_do_alpha_blending() {
extern Fl_Window *fl_xfocus;
-void Fl_X::activate_window(Window w) {
+void Fl_X11_Window_Driver::activate_window() {
+ Window w = fl_xid(pWindow);
if (!Fl_X11_Screen_Driver::ewmh_supported())
return;
diff --git a/src/drivers/X11/Fl_X11_Window_Driver.H b/src/drivers/X11/Fl_X11_Window_Driver.H
index fd2828d2e..c5378475e 100644
--- a/src/drivers/X11/Fl_X11_Window_Driver.H
+++ b/src/drivers/X11/Fl_X11_Window_Driver.H
@@ -69,6 +69,7 @@ private:
void shape_alpha_(Fl_Image* img, int offset);
void flush_double(int erase_overlay);
void sendxjunk();
+ void activate_window();
#ifdef USE_XDBE
char backbuffer_bad;
void flush_double_dbe(int erase_overlay);
diff --git a/src/drivers/X11/Fl_X11_Window_Driver.cxx b/src/drivers/X11/Fl_X11_Window_Driver.cxx
index 7dbb5c4f7..7fb22bf3b 100644
--- a/src/drivers/X11/Fl_X11_Window_Driver.cxx
+++ b/src/drivers/X11/Fl_X11_Window_Driver.cxx
@@ -190,7 +190,7 @@ void Fl_X11_Window_Driver::take_focus()
if (!Fl_X11_Screen_Driver::ewmh_supported())
pWindow->show(); // Old WMs, XMapRaised
else if (i) // New WMs use the NETWM attribute:
- Fl_X::activate_window(i->xid);
+ activate_window();
}