From ca37311987f038a153030a45da503d2162a18be6 Mon Sep 17 00:00:00 2001 From: Mike Antipov Date: Tue, 2 Mar 2010 16:26:30 +0200 Subject: Fixed major bug EXT-3981 ([BSI] scroll bar resets to near the top of inventory search) - disabled auto scrolling in inventory panels when mouse pointer is over the panel --HG-- branch : product-engine --- indra/newview/llfolderview.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfolderview.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 23f19a38a6..f7fd7bb472 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -179,6 +179,7 @@ LLFolderView::LLFolderView(const Params& p) mSourceID(p.task_id), mRenameItem( NULL ), mNeedsScroll( FALSE ), + mEnableScroll( true ), mPinningSelectedItem(FALSE), mNeedsAutoSelect( FALSE ), mAutoSelectOverride(FALSE), @@ -1913,7 +1914,7 @@ void LLFolderView::deleteAllChildren() void LLFolderView::scrollToShowSelection() { - if (mSelectedItems.size()) + if (mEnableScroll && mSelectedItems.size()) { mNeedsScroll = TRUE; } -- cgit v1.2.3 From 41a30a59fb1b6dea2d531333d0429632f1fef2fe Mon Sep 17 00:00:00 2001 From: Richard Nelson Date: Tue, 2 Mar 2010 14:21:58 -0800 Subject: initial work changing topctrl to popup layer --- indra/newview/llfolderview.cpp | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'indra/newview/llfolderview.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 23f19a38a6..ff19a974bb 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -284,10 +284,7 @@ LLFolderView::~LLFolderView( void ) LLView::deleteViewByHandle(mPopupMenuHandle); - if(mRenamer == gFocusMgr.getTopCtrl()) - { - gFocusMgr.setTopCtrl(NULL); - } + gViewerWindow->removePopup(mRenamer); mAutoOpenItems.removeAllNodes(); clearSelection(); @@ -971,7 +968,7 @@ void LLFolderView::finishRenamingItem( void ) mRenameItem->rename( mRenamer->getText() ); } - gFocusMgr.setTopCtrl( NULL ); + gViewerWindow->removePopup(mRenamer); if( mRenameItem ) { @@ -988,7 +985,7 @@ void LLFolderView::closeRenamer( void ) // will commit current name (which could be same as original name) mRenamer->setFocus( FALSE ); mRenamer->setVisible( FALSE ); - gFocusMgr.setTopCtrl( NULL ); + gViewerWindow->removePopup(mRenamer); if( mRenameItem ) { @@ -1420,7 +1417,7 @@ void LLFolderView::startRenamingSelectedItem( void ) mRenamer->setFocus( TRUE ); mRenamer->setTopLostCallback(boost::bind(onRenamerLost, _1)); mRenamer->setFocusLostCallback(boost::bind(onRenamerLost, _1)); - gFocusMgr.setTopCtrl( mRenamer ); + gViewerWindow->addPopup(mRenamer); } } @@ -1901,7 +1898,7 @@ void LLFolderView::deleteAllChildren() { if(mRenamer == gFocusMgr.getTopCtrl()) { - gFocusMgr.setTopCtrl(NULL); + gViewerWindow->removePopup(mRenamer); } LLView::deleteViewByHandle(mPopupMenuHandle); mPopupMenuHandle = LLHandle(); -- cgit v1.2.3 From 4d412d38ce63cc040f25b883bfc3e358a8c1bb7c Mon Sep 17 00:00:00 2001 From: Richard Nelson Date: Tue, 9 Mar 2010 16:16:07 -0800 Subject: EXT-6030 - [ Assert Failure] Assert in LLFolderViewFolder when select inventory folder after moving item between folders reviewed by Leyla --- indra/newview/llfolderview.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'indra/newview/llfolderview.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index cc807c2370..23062bafec 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -837,11 +837,14 @@ void LLFolderView::sanitizeSelection() void LLFolderView::clearSelection() { - if (mSelectedItems.size() > 0) + for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); + item_it != mSelectedItems.end(); + ++item_it) { - recursiveDeselect(FALSE); - mSelectedItems.clear(); + (*item_it)->setUnselected(); } + + mSelectedItems.clear(); mSelectThisID.setNull(); } -- cgit v1.2.3