diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp
index c2ea60c9992fbde014aee2a075917b6ce5dae188..ff37f78343c2effdb28f897ece3460e24c420cc4 100644
--- a/Fltk/Callbacks.cpp
+++ b/Fltk/Callbacks.cpp
@@ -1,4 +1,4 @@
-// $Id: Callbacks.cpp,v 1.550 2007-09-26 20:51:58 geuzaine Exp $
+// $Id: Callbacks.cpp,v 1.551 2007-10-01 08:45:15 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -2232,7 +2232,8 @@ void visibility_interactive_cb(CALLBACK_ARGS)
   std::vector<MElement*> elements, elements_old;
 
   while(1) {
-    CTX.mesh.changed = ENT_ALL;
+    if(what == ENT_ALL) 
+      CTX.mesh.changed = ENT_ALL;
     Draw();
     Msg(ONSCREEN, "Select %s\n[Press %s'q' to abort]", 
 	help, mode ? "" : "'u' to undo or ");