diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-11-09 00:39:34 +0200 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-11-09 00:40:36 +0200 |
commit | b3384a057d9556b2429a9c5847e8e1240103585a (patch) | |
tree | 220abcd3978c4930d02071ba58a4266c3c77245a /indra/newview | |
parent | 901de39ca791253d59b60d311d99c0432e0179a5 (diff) |
SL-20228 When a reflection probe is unchecked in a link set, it should stop being phantom
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/llpanelvolume.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/indra/newview/llpanelvolume.cpp b/indra/newview/llpanelvolume.cpp index b1d3ac2245..f58aab3080 100644 --- a/indra/newview/llpanelvolume.cpp +++ b/indra/newview/llpanelvolume.cpp @@ -764,7 +764,20 @@ void LLPanelVolume::sendIsReflectionProbe() } else { - LLNotificationsUtil::add("CantSelectReflectionProbe"); + if (value) + { + LLNotificationsUtil::add("CantSelectReflectionProbe"); + } + else if (objectp->flagPhantom()) + { + LLViewerObject* root = objectp->getRootEdit(); + bool in_linkeset = root != objectp || objectp->numChildren() > 0; + if (in_linkeset) + { + // In linkset with a phantom flag + objectp->setFlags(FLAGS_PHANTOM, FALSE); + } + } volobjp->setIsReflectionProbe(value); } } @@ -1213,6 +1226,17 @@ void LLPanelVolume::onPasteLight() } else { + if (objectp->flagPhantom()) + { + LLViewerObject* root = objectp->getRootEdit(); + bool in_linkeset = root != objectp || objectp->numChildren() > 0; + if (in_linkeset) + { + // In linkset with a phantom flag + objectp->setFlags(FLAGS_PHANTOM, FALSE); + } + } + volobjp->setIsReflectionProbe(false); } } |