diff --git a/indra/newview/llsidepaneltaskinfo.cpp b/indra/newview/llsidepaneltaskinfo.cpp index 6ebe55e3625baa155cbd3d140bf4b7b6f8f460f3..e76397671bfe790c92c9df8a6f9a0f06f29bcb56 100644 --- a/indra/newview/llsidepaneltaskinfo.cpp +++ b/indra/newview/llsidepaneltaskinfo.cpp @@ -125,10 +125,8 @@ BOOL LLSidepanelTaskInfo::postBuild() return TRUE; } -// virtual -void LLSidepanelTaskInfo::setVisible(BOOL visible) +/*virtual*/ void LLSidepanelTaskInfo::handleVisibilityChange ( BOOL visible ) { - LLPanel::setVisible(visible); if (visible) { sActivePanel = this; @@ -137,9 +135,12 @@ void LLSidepanelTaskInfo::setVisible(BOOL visible) else { sActivePanel = NULL; + // drop selection reference + mObjectSelection = NULL; } } + void LLSidepanelTaskInfo::disableAll() { childSetEnabled("perm_modify", FALSE); diff --git a/indra/newview/llsidepaneltaskinfo.h b/indra/newview/llsidepaneltaskinfo.h index e41627435fdc852d64f2702c505c7953cdd26249..15274c90db7ef00ef5a4eddde27b1361bb36d5de 100644 --- a/indra/newview/llsidepaneltaskinfo.h +++ b/indra/newview/llsidepaneltaskinfo.h @@ -54,7 +54,7 @@ class LLSidepanelTaskInfo : public LLSidepanelInventorySubpanel virtual ~LLSidepanelTaskInfo(); /*virtual*/ BOOL postBuild(); - /*virtual*/ void setVisible(BOOL visible); + /*virtual*/ void handleVisibilityChange ( BOOL new_visibility ); void setObjectSelection(LLObjectSelectionHandle selection);