diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp
index cf5cf06188a181b4f3b6945a765e7b341c5b9d08..7ced953cf89dc162169fca1b4a81793e92d44581 100644
--- a/Fltk/GUI.cpp
+++ b/Fltk/GUI.cpp
@@ -1,4 +1,4 @@
-// $Id: GUI.cpp,v 1.475 2005-12-21 02:01:27 geuzaine Exp $
+// $Id: GUI.cpp,v 1.476 2005-12-28 13:55:58 geuzaine Exp $
 //
 // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle
 //
@@ -4090,7 +4090,7 @@ void GUI::create_about_window()
     return;
   }
 
-  int width = 33 * fontsize;
+  int width = 28 * fontsize;
   int height = 15 * BH;
 
   about_window = new Dialog_Window(width, height, "About Gmsh");
@@ -4098,6 +4098,7 @@ void GUI::create_about_window()
 
   {
     Fl_Browser *o = new Fl_Browser(WB, WB, width - 2 * WB, height - 3 * WB - BH);
+    o->has_scrollbar(0); // no scrollbars
     o->add(" ");
     o->add("@c@b@.Gmsh");
     o->add("@c@.A three-dimensional finite element mesh generator");
@@ -4126,8 +4127,28 @@ void GUI::create_about_window()
     o->add(buffer);
     sprintf(buffer, "@c@.Build host: %s", GMSH_HOST);
     o->add(buffer);
-    sprintf(buffer, "@c@.Options: %s", Get_BuildOptions());
-    o->add(buffer);
+    {
+      char str1[1024];
+      strcpy(str1, Get_BuildOptions());
+      unsigned int len = 30;
+      if(strlen(str1) > len){
+	int split;
+	for(split = len - 1; split >= 0; split--){
+	  if(str1[split] == ' '){
+	    str1[split] = '\0';
+	    break;
+	  }
+	}
+	sprintf(buffer, "@c@.Build options: %s", str1);
+	o->add(buffer);
+	sprintf(buffer, "@c@.%s", &str1[split+1]);
+	o->add(buffer);
+      }
+      else{
+	sprintf(buffer, "@c@.Options: %s", str1);
+	o->add(buffer);
+      }
+    }
     sprintf(buffer, "@c@.Packaged by: %s", GMSH_PACKAGER);
     o->add(buffer);
     o->add(" ");
diff --git a/Fltk/Opengl_Window.cpp b/Fltk/Opengl_Window.cpp
index 43c126ba37095d5592ed90bba69c83ba5e6022b3..84d8c9789e4e641693ad0e2d9df6299b66e0ba60 100644
--- a/Fltk/Opengl_Window.cpp
+++ b/Fltk/Opengl_Window.cpp
@@ -1,4 +1,4 @@
-// $Id: Opengl_Window.cpp,v 1.56 2005-12-18 21:10:54 geuzaine Exp $
+// $Id: Opengl_Window.cpp,v 1.57 2005-12-28 13:55:58 geuzaine Exp $
 //
 // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle
 //
@@ -116,15 +116,14 @@ void Opengl_Window::draw()
     Draw2d();
   }
   else {
-    glDisable(GL_DEPTH_TEST);
     glMatrixMode(GL_PROJECTION);
     glLoadIdentity();
     glOrtho((double)CTX.viewport[0], (double)CTX.viewport[2],
 	    (double)CTX.viewport[1], (double)CTX.viewport[3], -1., 1.);
     glMatrixMode(GL_MODELVIEW);
     glLoadIdentity();
-    glDisable(GL_DEPTH_TEST);
     glColor3d(1., 1., 1.);
+    glDisable(GL_DEPTH_TEST);
     // glBlendEquation(GL_FUNC_ADD);
     glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ZERO);
     glEnable(GL_BLEND);
@@ -165,7 +164,7 @@ int Opengl_Window::handle(int event)
 
   case FL_SHORTCUT:
   case FL_KEYBOARD:
-    // override the default widget navigation
+    // override the default widget arrow-key-navigation
     if(WID->arrow_shortcuts())
       return 1;
     return Fl_Gl_Window::handle(event);
@@ -291,12 +290,9 @@ int Opengl_Window::handle(int event)
       prosca(r,d,&t);
       double sol[3] = {p[0] + t * d[0], p[1] + t * d[1], p[2] + t * d[2]};
       char str[32];
-      sprintf(str, "%g", sol[0]);        
-      WID->context_geometry_input[2]->value(str);
-      sprintf(str, "%g", sol[1]);
-      WID->context_geometry_input[3]->value(str);
-      sprintf(str, "%g", sol[2]);
-      WID->context_geometry_input[4]->value(str);
+      sprintf(str, "%g", sol[0]); WID->context_geometry_input[2]->value(str);
+      sprintf(str, "%g", sol[1]); WID->context_geometry_input[3]->value(str);
+      sprintf(str, "%g", sol[2]); WID->context_geometry_input[4]->value(str);
     }
     else if(ZoomMode) {
       redraw();