aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie Thielker2015-08-15 02:46:41 +0200
committerMelanie Thielker2015-08-15 02:46:41 +0200
commit1fb2f0296fdaff56745daa1c1e8096cd8e25462b (patch)
tree6b168e1c3b237e219e8bb1c82d5aba271f3bd5cb
parentMaybe reduce incidence of ghost avatars (diff)
downloadopensim-SC_OLD-1fb2f0296fdaff56745daa1c1e8096cd8e25462b.zip
opensim-SC_OLD-1fb2f0296fdaff56745daa1c1e8096cd8e25462b.tar.gz
opensim-SC_OLD-1fb2f0296fdaff56745daa1c1e8096cd8e25462b.tar.bz2
opensim-SC_OLD-1fb2f0296fdaff56745daa1c1e8096cd8e25462b.tar.xz
Track selected objects per client
-rw-r--r--OpenSim/Framework/IClientAPI.cs2
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs6
-rw-r--r--OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs2
-rw-r--r--OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs2
-rw-r--r--OpenSim/Tests/Common/Mock/TestClient.cs2
5 files changed, 14 insertions, 0 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index 4bb865a..b2786d4 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -742,6 +742,8 @@ namespace OpenSim.Framework
742 742
743 IScene Scene { get; } 743 IScene Scene { get; }
744 744
745 List<uint> SelectedObjects { get; }
746
745 // [Obsolete("LLClientView Specific - Replace with ???")] 747 // [Obsolete("LLClientView Specific - Replace with ???")]
746 int NextAnimationSequenceNumber { get; } 748 int NextAnimationSequenceNumber { get; }
747 749
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 849fec3..7b6889a 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -474,6 +474,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
474 set { m_disableFacelights = value; } 474 set { m_disableFacelights = value; }
475 } 475 }
476 476
477 public List<uint> SelectedObjects {get; private set;}
477 478
478 public bool SendLogoutPacketWhenClosing { set { m_SendLogoutPacketWhenClosing = value; } } 479 public bool SendLogoutPacketWhenClosing { set { m_SendLogoutPacketWhenClosing = value; } }
479 480
@@ -494,6 +495,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
494// DebugPacketLevel = 1; 495// DebugPacketLevel = 1;
495 496
496 CloseSyncLock = new Object(); 497 CloseSyncLock = new Object();
498 SelectedObjects = new List<uint>();
497 499
498 RegisterInterface<IClientIM>(this); 500 RegisterInterface<IClientIM>(this);
499 RegisterInterface<IClientInventory>(this); 501 RegisterInterface<IClientInventory>(this);
@@ -7347,6 +7349,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7347 7349
7348 for (int i = 0; i < incomingselect.ObjectData.Length; i++) 7350 for (int i = 0; i < incomingselect.ObjectData.Length; i++)
7349 { 7351 {
7352 if (!SelectedObjects.Contains(incomingselect.ObjectData[i].ObjectLocalID))
7353 SelectedObjects.Add(incomingselect.ObjectData[i].ObjectLocalID);
7350 handlerObjectSelect = OnObjectSelect; 7354 handlerObjectSelect = OnObjectSelect;
7351 if (handlerObjectSelect != null) 7355 if (handlerObjectSelect != null)
7352 { 7356 {
@@ -7373,6 +7377,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7373 7377
7374 for (int i = 0; i < incomingdeselect.ObjectData.Length; i++) 7378 for (int i = 0; i < incomingdeselect.ObjectData.Length; i++)
7375 { 7379 {
7380 if (!SelectedObjects.Contains(incomingdeselect.ObjectData[i].ObjectLocalID))
7381 SelectedObjects.Add(incomingdeselect.ObjectData[i].ObjectLocalID);
7376 handlerObjectDeselect = OnObjectDeselect; 7382 handlerObjectDeselect = OnObjectDeselect;
7377 if (handlerObjectDeselect != null) 7383 if (handlerObjectDeselect != null)
7378 { 7384 {
diff --git a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
index ed1503c..8c0ad75 100644
--- a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
+++ b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
@@ -68,6 +68,8 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server
68 68
69 private bool m_connected = true; 69 private bool m_connected = true;
70 70
71 public List<uint> SelectedObjects {get; private set;}
72
71 public IRCClientView(TcpClient client, Scene scene) 73 public IRCClientView(TcpClient client, Scene scene)
72 { 74 {
73 m_client = client; 75 m_client = client;
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
index 0b33c51..0b4d03a 100644
--- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
@@ -65,6 +65,8 @@ namespace OpenSim.Region.OptionalModules.World.NPC
65 private readonly Scene m_scene; 65 private readonly Scene m_scene;
66 private readonly UUID m_ownerID; 66 private readonly UUID m_ownerID;
67 67
68 public List<uint> SelectedObjects {get; private set;}
69
68 public NPCAvatar( 70 public NPCAvatar(
69 string firstname, string lastname, Vector3 position, UUID ownerID, bool senseAsAgent, Scene scene) 71 string firstname, string lastname, Vector3 position, UUID ownerID, bool senseAsAgent, Scene scene)
70 { 72 {
diff --git a/OpenSim/Tests/Common/Mock/TestClient.cs b/OpenSim/Tests/Common/Mock/TestClient.cs
index d4f29c8..96bccd2 100644
--- a/OpenSim/Tests/Common/Mock/TestClient.cs
+++ b/OpenSim/Tests/Common/Mock/TestClient.cs
@@ -442,6 +442,8 @@ namespace OpenSim.Tests.Common.Mock
442 get { return new IPEndPoint(IPAddress.Loopback, (ushort)m_circuitCode); } 442 get { return new IPEndPoint(IPAddress.Loopback, (ushort)m_circuitCode); }
443 } 443 }
444 444
445 public List<uint> SelectedObjects {get; private set;}
446
445 /// <summary> 447 /// <summary>
446 /// Constructor 448 /// Constructor
447 /// </summary> 449 /// </summary>