summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llui/llview.cpp8
-rw-r--r--indra/llxuixml/llinitparam.h2
2 files changed, 9 insertions, 1 deletions
diff --git a/indra/llui/llview.cpp b/indra/llui/llview.cpp
index 0616c2a0c0..60452b9ae4 100644
--- a/indra/llui/llview.cpp
+++ b/indra/llui/llview.cpp
@@ -2579,26 +2579,34 @@ void LLView::applyXUILayout(LLView::Params& p, LLView* parent)
if (!p.rect.left.isProvided())
{
p.rect.left.set(default_rect.mLeft, false);
+ //HACK: get around the fact that setting a rect param component value won't invalidate the existing rect object value
+ p.rect.paramChanged(p.rect.left, true);
}
if (!p.rect.bottom.isProvided())
{
p.rect.bottom.set(default_rect.mBottom, false);
+ p.rect.paramChanged(p.rect.bottom, true);
}
if (!p.rect.top.isProvided())
{
p.rect.top.set(default_rect.mTop, false);
+ p.rect.paramChanged(p.rect.top, true);
}
if (!p.rect.right.isProvided())
{
p.rect.right.set(default_rect.mRight, false);
+ p.rect.paramChanged(p.rect.right, true);
+
}
if (!p.rect.width.isProvided())
{
p.rect.width.set(default_rect.getWidth(), false);
+ p.rect.paramChanged(p.rect.width, true);
}
if (!p.rect.height.isProvided())
{
p.rect.height.set(default_rect.getHeight(), false);
+ p.rect.paramChanged(p.rect.height, true);
}
}
}
diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h
index e40bdb4a3d..9d0fe781ce 100644
--- a/indra/llxuixml/llinitparam.h
+++ b/indra/llxuixml/llinitparam.h
@@ -864,7 +864,7 @@ namespace LLInitParam
// propagate changed status up to enclosing block
/*virtual*/ void paramChanged(const Param& changed_param, bool user_provided)
{
- ParamValue<T, NAME_VALUE_LOOKUP>::paramChanged(changed_param, user_provided);
+ param_value_t::paramChanged(changed_param, user_provided);
Param::enclosingBlock().paramChanged(*this, user_provided);
if (user_provided)
{