diff --git a/src/AIS/AIS_InteractiveContext_1.cxx b/src/AIS/AIS_InteractiveContext_1.cxx index e4d7a6f3ce..2339707701 100644 --- a/src/AIS/AIS_InteractiveContext_1.cxx +++ b/src/AIS/AIS_InteractiveContext_1.cxx @@ -1202,7 +1202,10 @@ void AIS_InteractiveContext::AddOrRemoveSelected (const Handle(SelectMgr_EntityO if (HasOpenedContext()) return myLocalContexts(myCurLocalIndex)->AddOrRemoveSelected (theOwner, theToUpdateViewer); - if (theOwner.IsNull() || !theOwner->HasSelectable() || !myFilters->IsOk(theOwner)) + if (theOwner.IsNull() || !theOwner->HasSelectable()) + return; + + if (!myFilters->IsOk(theOwner) && !theOwner->IsSelected()) return; AIS_SelectStatus aSelStat = mySelection->Select (theOwner);