diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp
index 7caf19b130c081fc8d929dbeebb4f4037c5c90eb..f7ca355a30393f9d85e083495db299d80e9410a4 100644
--- a/Fltk/Callbacks.cpp
+++ b/Fltk/Callbacks.cpp
@@ -1,4 +1,4 @@
-// $Id: Callbacks.cpp,v 1.181 2003-06-23 16:52:17 geuzaine Exp $
+// $Id: Callbacks.cpp,v 1.182 2003-07-21 23:31:16 geuzaine Exp $
 //
 // Copyright (C) 1997-2003 C. Geuzaine, J.-F. Remacle
 //
@@ -1348,6 +1348,7 @@ void help_short_cb(CALLBACK_ARGS)
   Msg(DIRECT, "");
   Msg(DIRECT, "  <             go back to previous context");
   Msg(DIRECT, "  >             go forward to next context");
+  Msg(DIRECT, "  Shift+a       raise (show) all open windows");
   Msg(DIRECT, "  g             go to geometry module");
   Msg(DIRECT, "  Shift+g       show geometry options");
   Msg(DIRECT, "  Shift+i       show statistics window"); 
@@ -1355,6 +1356,7 @@ void help_short_cb(CALLBACK_ARGS)
   Msg(DIRECT, "  Shift+m       show mesh options");
   Msg(DIRECT, "  "XX"+m        merge file"); 
   Msg(DIRECT, "  Shift+n       show general options"); 
+  Msg(DIRECT, "  Shift+o       show option window"); 
   Msg(DIRECT, "  "XX"+o        open file"); 
   Msg(DIRECT, "  p             go to post-processor module");
   Msg(DIRECT, "  Shift+p       show post-processing general options");
diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp
index 5cb2a0dd3d1078d3dced25c3df9dc72cfae2f498..fbbef4dca0c523ab6c5d67394c8a413348c91f97 100644
--- a/Fltk/GUI.cpp
+++ b/Fltk/GUI.cpp
@@ -1,4 +1,4 @@
-// $Id: GUI.cpp,v 1.244 2003-06-23 17:26:23 geuzaine Exp $
+// $Id: GUI.cpp,v 1.245 2003-07-21 23:31:16 geuzaine Exp $
 //
 // Copyright (C) 1997-2003 C. Geuzaine, J.-F. Remacle
 //
@@ -434,6 +434,15 @@ int GUI::global_shortcuts(int event)
     quit_selection = 1;
     return 0;   // trick: do as if we didn't use it
   }
+  else if(Fl::test_shortcut(FL_SHIFT + 'a')) { // raise all open windows
+    if(m_window && m_window->shown()) m_window->show();
+    if(g_window && g_window->shown()) g_window->show();
+    if(opt_window && opt_window->shown()) opt_window->show();
+    if(vis_window && vis_window->shown()) vis_window->show();
+    if(stat_window && stat_window->shown()) stat_window->show();
+    if(msg_window && msg_window->shown()) msg_window->show();
+    return 1;
+  }
   else if(Fl::test_shortcut(FL_SHIFT + 'n')) {
     general_options_cb(0, 0);
     return 1;
diff --git a/doc/texinfo/shortcuts.texi b/doc/texinfo/shortcuts.texi
index 1f60e779203d71d5507e35bae8f4a865932e8c8c..cd7972a084b9588c0820ec88a2f309181a2355e6 100644
--- a/doc/texinfo/shortcuts.texi
+++ b/doc/texinfo/shortcuts.texi
@@ -7,6 +7,9 @@ go back to previous context
 @item >
 go forward to next context
 
+@item Shift+a
+raise (show) all open windows
+
 @item g
 go to geometry module
 
@@ -28,6 +31,9 @@ merge file
 @item Shift+n
 show general options
 
+@item Shift+o
+show option window
+
 @item Ctrl+o
 open file