always allow part deselect

0.9.1.1
UbitUmarov 2019-10-30 04:46:47 +00:00
parent 9d6a1e01f9
commit 5a3ba2afbb
1 changed files with 9 additions and 12 deletions

View File

@ -260,21 +260,18 @@ namespace OpenSim.Region.Framework.Scenes
return; return;
bool oldgprSelect = part.ParentGroup.IsSelected; bool oldgprSelect = part.ParentGroup.IsSelected;
bool oldSelect = part.IsSelected;
// This is wrong, wrong, wrong. Selection should not be part.IsSelected = false;
// handled by group, but by prim. Legacy cruft.
// TODO: Make selection flagging per prim! if (oldgprSelect != part.ParentGroup.IsSelected)
//
if (Permissions.CanChangeSelectedState(part, (ScenePresence)remoteClient.SceneAgent))
{ {
part.IsSelected = false; if (!part.ParentGroup.IsAttachment )
if (!part.ParentGroup.IsAttachment && oldgprSelect != part.ParentGroup.IsSelected)
EventManager.TriggerParcelPrimCountTainted(); EventManager.TriggerParcelPrimCountTainted();
// restore targetOmega
if (part.AngularVelocity != Vector3.Zero)
part.ScheduleTerseUpdate();
} }
// restore targetOmega
if (oldSelect && part.AngularVelocity != Vector3.Zero)
part.ScheduleTerseUpdate();
} }
public virtual void ProcessMoneyTransferRequest(UUID source, UUID destination, int amount, public virtual void ProcessMoneyTransferRequest(UUID source, UUID destination, int amount,