diff --git a/Fltk/visibilityWindow.cpp b/Fltk/visibilityWindow.cpp
index d7071028c0789364ab79ac3004898a96d9379fbb..89e44ea71d366151966d62b17d96c4ef571994ce 100644
--- a/Fltk/visibilityWindow.cpp
+++ b/Fltk/visibilityWindow.cpp
@@ -1141,40 +1141,47 @@ visibilityWindow::visibilityWindow(int deltaFontSize)
     Fl_Group *g = new Fl_Group
       (WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "List browser");
 
-    Fl_Button *o0 = new Fl_Button
-      (2 * WB, 2 * WB + BH, cols[0], BH/2, "*");
-    o0->align(FL_ALIGN_TOP | FL_ALIGN_INSIDE);
-    o0->tooltip("Select/unselect all");
-    o0->callback(visibility_sort_cb, (void *)"*");
-
-    Fl_Button *o1 = new Fl_Button
-      (2 * WB, 2 * WB + BH + BH/2, cols[0], BH - BH/2, "-");
-    o1->tooltip("Invert selection");
-    o1->callback(visibility_sort_cb, (void *)"-");
-
-    Fl_Button *o2 = new Fl_Button
-      (2 * WB + cols[0], 2 * WB + BH, cols[1], BH, "Type");
-    o2->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
-    o2->tooltip("Sort by type");
-    o2->callback(visibility_sort_cb, (void *)"type");
-
-    Fl_Button *o3 = new Fl_Button
-      (2 * WB + cols[0] + cols[1], 2 * WB + BH, cols[2], BH, "Number");
-    o3->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
-    o3->tooltip("Sort by number");
-    o3->callback(visibility_sort_cb, (void *)"number");
-
-    Fl_Button *o4 = new Fl_Button
-      (2 * WB + cols[0] + cols[1] + cols[2], 2 * WB + BH, cols[3], BH, "Name");
-    o4->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
-    o4->tooltip("Sort by name");
-    o4->callback(visibility_sort_cb, (void *)"name");
-
-    Fl_Button *o5 = new Fl_Button
-      (width - 4 * WB, 2 * WB + BH, 2 * WB, BH, "+");
-    o5->tooltip("Add parameter name for first selected item");
-    o5->callback(visibility_sort_cb, (void *)"+");
+    {
+      Fl_Group *gg = new Fl_Group
+        (2 * WB, WB + BH, cols[0] + cols[1] + cols[2] + cols[3] / 2, BH);
+      gg->resizable(NULL);
+
+      Fl_Button *o0 = new Fl_Button
+        (2 * WB, 2 * WB + BH, cols[0], BH/2, "*");
+      o0->align(FL_ALIGN_TOP | FL_ALIGN_INSIDE);
+      o0->tooltip("Select/unselect all");
+      o0->callback(visibility_sort_cb, (void *)"*");
+
+      Fl_Button *o1 = new Fl_Button
+        (2 * WB, 2 * WB + BH + BH/2, cols[0], BH - BH/2, "-");
+      o1->tooltip("Invert selection");
+      o1->callback(visibility_sort_cb, (void *)"-");
+
+      Fl_Button *o2 = new Fl_Button
+        (2 * WB + cols[0], 2 * WB + BH, cols[1], BH, "Type");
+      o2->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
+      o2->tooltip("Sort by type");
+      o2->callback(visibility_sort_cb, (void *)"type");
+
+      Fl_Button *o3 = new Fl_Button
+        (2 * WB + cols[0] + cols[1], 2 * WB + BH, cols[2], BH, "Number");
+      o3->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
+      o3->tooltip("Sort by number");
+      o3->callback(visibility_sort_cb, (void *)"number");
+
+      Fl_Button *o4 = new Fl_Button
+        (2 * WB + cols[0] + cols[1] + cols[2], 2 * WB + BH, cols[3], BH, "Name");
+      o4->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
+      o4->tooltip("Sort by name");
+      o4->callback(visibility_sort_cb, (void *)"name");
+
+      Fl_Button *o5 = new Fl_Button
+        (width - 4 * WB, 2 * WB + BH, 2 * WB, BH, "+");
+      o5->tooltip("Add parameter name for first selected item");
+      o5->callback(visibility_sort_cb, (void *)"+");
 
+      gg->end();
+    }
     {
       Fl_Group *gg = new Fl_Group
         (2 * WB, 2 * WB + 2 * BH, brw, height - 6 * WB - 4 * BH);
@@ -1385,7 +1392,6 @@ visibilityWindow::visibilityWindow(int deltaFontSize)
   {
     Fl_Group *g = new Fl_Group
       (WB, WB + BH, width - 2 * WB, height - 3 * WB - 2 * BH, "Per window");
-    g->resizable(NULL);
 
     per_window = new Fl_Multi_Browser
       (2 * WB, 2 * WB + BH, brw, height - 6 * WB - 3 * BH);
@@ -1401,12 +1407,15 @@ visibilityWindow::visibilityWindow(int deltaFontSize)
   o->end();
 
   win->resizable(o);
-  win->size_range(width, 15 * BH + 5 * WB, width);
+  win->size_range(width, 15 * BH + 5 * WB);
 
   {
     int aw = 5 * WB;
     int ww = (width - 5 * WB - aw) / 4;
 
+    Fl_Group *g = new Fl_Group(WB, height - BH - WB, width - 2 * WB - 2 * ww, BH);
+    g->resizable(NULL);
+
     Fl_Box *b = new Fl_Box(WB, height - BH - WB, aw, BH, "Apply");
     b->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE);
 
@@ -1420,9 +1429,12 @@ visibilityWindow::visibilityWindow(int deltaFontSize)
     butt[1]->type(FL_TOGGLE_BUTTON);
     butt[1]->value(1);
 
+    g->end();
+
     Fl_Button *o1 = new Fl_Button
       (width - 2 * ww - WB, height - BH - WB, 2 * ww, BH, "Save current visibility");
     o1->callback(visibility_save_cb);
+
   }
 
   win->position(CTX::instance()->visPosition[0], CTX::instance()->visPosition[1]);