diff --git a/Fltk/Colorbar_Window.cpp b/Fltk/Colorbar_Window.cpp
index 4ba804983d2e97aaf9adeaeaf605b8e62891c7b8..e01d75d10e6ebc8853745f595aa3aac010d0c933 100644
--- a/Fltk/Colorbar_Window.cpp
+++ b/Fltk/Colorbar_Window.cpp
@@ -1,4 +1,4 @@
-// $Id: Colorbar_Window.cpp,v 1.16 2001-11-23 12:14:05 geuzaine Exp $
+// $Id: Colorbar_Window.cpp,v 1.17 2001-11-23 13:32:21 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -349,15 +349,17 @@ int Colorbar_Window::handle(int event){
 
   switch(event){
 
-  case FL_FOCUS : 
+  case FL_ENTER : 
+    take_focus(); //force keyboard focus on the ColorbarWindow    
     return 1;
 
+  case FL_LEAVE :
+  case FL_FOCUS : 
   case FL_UNFOCUS : 
     return 1;
 
   case FL_SHORTCUT :
   case FL_KEYBOARD : 
-
     if(Fl::test_shortcut('0')){
       ColorTable_InitParam(0, ct, 1, 1); compute=1;
     }
@@ -479,11 +481,9 @@ int Colorbar_Window::handle(int event){
       *viewchanged = 1;
       set_changed();
     }
-    // discard the event for other uses
     return 1;
 
   case FL_PUSH :
-    take_focus(); //force keyboard focus on the ColorbarWindow
     ibut = Fl::event_button();
     xpos = Fl::event_x();
     ypos = Fl::event_y();