diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.Rhino7/Operations/Receive/RhinoHostObjectBuilder.cs index d9b2d627f..d3b58e736 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/Operations/Receive/RhinoHostObjectBuilder.cs @@ -163,10 +163,12 @@ private HostObjectBuilderResult BakeObjects( // Stage 3: Group if (groupProxies is not null) { - foreach (GroupProxy groupProxy in groupProxies) + foreach (GroupProxy groupProxy in groupProxies.OrderBy(g => g.objects.Count)) { var appIds = groupProxy.objects.SelectMany(oldObjId => applicationIdMap[oldObjId]).Select(id => new Guid(id)); - RhinoDoc.ActiveDoc.Groups.Add(appIds); + var index = RhinoDoc.ActiveDoc.Groups.Add(appIds); + var addedGroup = RhinoDoc.ActiveDoc.Groups.FindIndex(index); + addedGroup.Name = groupProxy.name; } }