Salome HOME
Issue#1059: Consider operation state in selection validator
[modules/shaper.git] / src / XGUI / XGUI_WorkshopListener.cpp
index ee65e8a099d9d366cfeb7ca632d9c981906f2086..e5c95c78bf7e68c333f712e5e051cf2ed7c341ee 100755 (executable)
@@ -191,7 +191,6 @@ void XGUI_WorkshopListener::processEvent(const std::shared_ptr<Events_Message>&
     // the viewer's update context is unblocked, the viewer's update works
     XGUI_Displayer* aDisplayer = workshop()->displayer();
     aDisplayer->enableUpdateViewer(true);
-    aDisplayer->updateViewer();
   } else if (theMessage->eventID() == Events_Loop::eventByName(EVENT_OBJECT_ERROR_CHANGED)) {
     std::shared_ptr<ModelAPI_ObjectUpdatedMessage> aUpdMsg =
         std::dynamic_pointer_cast<ModelAPI_ObjectUpdatedMessage>(theMessage);
@@ -357,10 +356,12 @@ void XGUI_WorkshopListener::onFeatureRedisplayMsg(const std::shared_ptr<ModelAPI
     }
   }
   if (aRedisplayed) {
+    customizeCurrentObject();
+    //VSV FitAll updated viewer by it self
     if (aFirstVisualizedBody)
       myWorkshop->viewer()->fitAll();
-    customizeCurrentObject();
-    aDisplayer->updateViewer();
+    else 
+      aDisplayer->updateViewer();
   }
 }
 //******************************************************
@@ -415,10 +416,12 @@ void XGUI_WorkshopListener::onFeatureCreatedMsg(const std::shared_ptr<ModelAPI_O
   //if (myObjectBrowser)
   //  myObjectBrowser->processEvent(theMsg);
   if (aDisplayed) {
+    customizeCurrentObject();
+    //VSV FitAll updated viewer by it self
     if (aFirstVisualizedBody)
       myWorkshop->viewer()->fitAll();
-    customizeCurrentObject();
-    workshop()->displayer()->updateViewer();
+    else
+      workshop()->displayer()->updateViewer();
   }
   //if (aHasPart) { // TODO: Avoid activate last part on loading of document
   //  activateLastPart();