From 370aa510902a7222dfa17d812fcf4e7679112c1e Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Fri, 30 Dec 2005 08:54:55 +0000 Subject: [PATCH] Scrollbars losed their target when detached. Once again, the problem showed up with BTabView git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15738 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/ScrollBar.cpp | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/kits/interface/ScrollBar.cpp b/src/kits/interface/ScrollBar.cpp index f31f28718d..6a789246f1 100644 --- a/src/kits/interface/ScrollBar.cpp +++ b/src/kits/interface/ScrollBar.cpp @@ -200,10 +200,14 @@ BScrollBar::BScrollBar(BMessage *data) BScrollBar::~BScrollBar() { + if (fTarget) { + if (fOrientation == B_VERTICAL) + fTarget->fVerScroller = NULL; + else + fTarget->fHorScroller = NULL; + } delete fPrivateData; free(fTargetName); - // TODO: detaching from target is currently done in DetachedFromWindow(), - // maybe it should be done here instead? } // Instantiate @@ -577,16 +581,6 @@ BScrollBar::MouseMoved(BPoint where, uint32 transit, const BMessage* message) void BScrollBar::DetachedFromWindow() { - if (fTarget) { - if (fOrientation == B_VERTICAL) - fTarget->fVerScroller = NULL; - else - fTarget->fHorScroller = NULL; - } - - fTarget = NULL; - free(fTargetName); - fTargetName = NULL; } // Draw