diff --git a/indra/llui/lldockcontrol.cpp b/indra/llui/lldockcontrol.cpp index 7ef2b9822ce10525666f93652182a1e225c87927..e5ed1ad3b65622d47ba0235df0edc48df26a0868 100644 --- a/indra/llui/lldockcontrol.cpp +++ b/indra/llui/lldockcontrol.cpp @@ -74,8 +74,6 @@ LLDockControl::LLDockControl(LLView* dockWidget, LLFloater* dockableFloater, { mDockWidgetVisible = false; } - - mNonToolbarPanelHandle = dockableFloater->getRootView()->getChild<LLView>("non_toolbar_panel")->getHandle(); } LLDockControl::~LLDockControl() @@ -99,10 +97,11 @@ void LLDockControl::setDock(LLView* dockWidget) void LLDockControl::getAllowedRect(LLRect& rect) { - if (!mNonToolbarPanelHandle.isDead()) + if (!mNonToolbarPanelHandle.get()) { - rect = mNonToolbarPanelHandle.get()->getRect(); + mNonToolbarPanelHandle = LLUI::getRootView()->getChild<LLLayoutPanel>("non_toolbar_panel")->getHandle(); } + rect = mNonToolbarPanelHandle.get()->getRect(); } void LLDockControl::repositionDockable() diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 17421969a4286e1b68ca55d4a5c24808106dba6a..db00fe1e2ae7e2b772eeb0856f1e9d4dbf79749e 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -3543,6 +3543,13 @@ LLCoordFloater::LLCoordFloater(const LLCoordCommon& other, LLFloater& floater) convertFromCommon(other); } +LLCoordFloater& LLCoordFloater::operator=(const LLCoordFloater& other) +{ + mFloater = other.mFloater; + coord_t::operator =(other); + return *this; +} + void LLCoordFloater::setFloater(LLFloater& floater) { mFloater = floater.getHandle(); diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index e6309d79ed49b724dbaa6f00461c76d813118bfd..385e174ae0174bd8a0cc2f09b7b799ee4fb606bf 100644 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -107,6 +107,8 @@ struct LLCoordFloater : LLCoord<LL_COORD_FLOATER> return *this; } + LLCoordFloater& operator=(const LLCoordFloater& other); + bool operator==(const LLCoordFloater& other) const; bool operator!=(const LLCoordFloater& other) const { return !(*this == other); }