From 87fa994ad02a36a1b47c715b44e05ebff0e6e219 Mon Sep 17 00:00:00 2001 From: Kyler Eastridge Date: Sun, 27 Jul 2025 18:04:35 +0100 Subject: Add option to disable selection hints --- indra/newview/llhudeffectpointat.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'indra/newview/llhudeffectpointat.cpp') diff --git a/indra/newview/llhudeffectpointat.cpp b/indra/newview/llhudeffectpointat.cpp index eeb38cd6aa..23ab0e873d 100644 --- a/indra/newview/llhudeffectpointat.cpp +++ b/indra/newview/llhudeffectpointat.cpp @@ -34,6 +34,7 @@ #include "llagent.h" #include "llagentcamera.h" #include "lldrawable.h" +#include "llviewercontrol.h" #include "llviewerobjectlist.h" #include "llvoavatar.h" #include "message.h" @@ -221,6 +222,12 @@ void LLHUDEffectPointAt::setTargetPosGlobal(const LLVector3d &target_pos_global) //----------------------------------------------------------------------------- bool LLHUDEffectPointAt::setPointAt(EPointAtType target_type, LLViewerObject *object, LLVector3 position) { + static LLCachedControl enable_selection_hints(gSavedSettings, "EnableSelectionHints", true); + if (!enable_selection_hints) + { + return false; + } + if (!mSourceObject) { return false; -- cgit v1.2.3 From 5785bfdb700c618365ea22c4deb3e6330d31c3d2 Mon Sep 17 00:00:00 2001 From: Kyler Eastridge Date: Mon, 28 Jul 2025 04:33:34 +0100 Subject: Fix look at target privacy causing head to get stuck --- indra/newview/llhudeffectpointat.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'indra/newview/llhudeffectpointat.cpp') diff --git a/indra/newview/llhudeffectpointat.cpp b/indra/newview/llhudeffectpointat.cpp index 23ab0e873d..b6515df3e1 100644 --- a/indra/newview/llhudeffectpointat.cpp +++ b/indra/newview/llhudeffectpointat.cpp @@ -222,14 +222,20 @@ void LLHUDEffectPointAt::setTargetPosGlobal(const LLVector3d &target_pos_global) //----------------------------------------------------------------------------- bool LLHUDEffectPointAt::setPointAt(EPointAtType target_type, LLViewerObject *object, LLVector3 position) { - static LLCachedControl enable_selection_hints(gSavedSettings, "EnableSelectionHints", true); - if (!enable_selection_hints) + if (!mSourceObject) { return false; } - if (!mSourceObject) + static LLCachedControl enable_selection_hints(gSavedSettings, "EnableSelectionHints", true); + if (!enable_selection_hints) { + if (mTargetType != POINTAT_TARGET_NONE) + { + clearPointAtTarget(); + setDuration(1.f); + setNeedsSendToSim(true); + } return false; } -- cgit v1.2.3 From 2c91aed07be5d598bffd2d320345bb33cbaa3e41 Mon Sep 17 00:00:00 2001 From: Kyler Eastridge Date: Tue, 29 Jul 2025 13:51:17 +0100 Subject: Add explaination as to why we do clearing inside effect set* functions --- indra/newview/llhudeffectpointat.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llhudeffectpointat.cpp') diff --git a/indra/newview/llhudeffectpointat.cpp b/indra/newview/llhudeffectpointat.cpp index b6515df3e1..c600010f6b 100644 --- a/indra/newview/llhudeffectpointat.cpp +++ b/indra/newview/llhudeffectpointat.cpp @@ -230,6 +230,7 @@ bool LLHUDEffectPointAt::setPointAt(EPointAtType target_type, LLViewerObject *ob static LLCachedControl enable_selection_hints(gSavedSettings, "EnableSelectionHints", true); if (!enable_selection_hints) { + // Clear the effect so it doesn't linger around if it gets disabled if (mTargetType != POINTAT_TARGET_NONE) { clearPointAtTarget(); -- cgit v1.2.3