Useful fixies from upstream

This commit is contained in:
Inusaito Sayori
2014-09-26 12:10:14 -04:00
parent 01f2e70f1d
commit da2d80d23a
4 changed files with 22 additions and 5 deletions

View File

@@ -3103,7 +3103,7 @@ void LLFolderBridge::pasteFromClipboard(bool only_copies)
{
if (move_is_into_current_outfit || move_is_into_outfit)
{
if (can_move_to_outfit(item, move_is_into_current_outfit))
if (item && can_move_to_outfit(item, move_is_into_current_outfit))
{
dropToOutfit(item, move_is_into_current_outfit);
}

View File

@@ -245,9 +245,21 @@ BOOL LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) con
bool is_hidden_if_empty = LLViewerFolderType::lookupIsHiddenIfEmpty(listener->getPreferredType());
if (is_hidden_if_empty)
{
// Force the fetching of those folders so they are hidden iff they really are empty...
// Force the fetching of those folders so they are hidden if they really are empty...
gInventory.fetchDescendentsOf(object_id);
return FALSE;
LLInventoryModel::cat_array_t* cat_array = NULL;
LLInventoryModel::item_array_t* item_array = NULL;
gInventory.getDirectDescendentsOf(object_id,cat_array,item_array);
S32 descendents_actual = 0;
if (cat_array && item_array)
{
descendents_actual = cat_array->count() + item_array->count();
}
if (descendents_actual == 0)
{
return FALSE;
}
}
}
}

View File

@@ -876,7 +876,7 @@ bool LLFindWearablesEx::operator()(LLInventoryCategory* cat, LLInventoryItem* it
if (!vitem) return false;
// Skip non-wearables.
if (!vitem->isWearableType() && vitem->getType() != LLAssetType::AT_OBJECT)
if (!vitem->isWearableType() && vitem->getType() != LLAssetType::AT_OBJECT && vitem->getType() != LLAssetType::AT_GESTURE)
{
return false;
}

View File

@@ -472,7 +472,11 @@ ECursorType LLToolPie::cursorFromObject(LLViewerObject* object)
case CLICK_ACTION_BUY:
if ( mClickActionBuyEnabled )
{
cursor = UI_CURSOR_TOOLBUY;
LLSelectNode* node = LLSelectMgr::getInstance()->getHoverNode();
if (!node || node->mSaleInfo.isForSale())
{
cursor = UI_CURSOR_TOOLBUY;
}
}
break;
case CLICK_ACTION_OPEN:
@@ -578,6 +582,7 @@ BOOL LLToolPie::handleHover(S32 x, S32 y, MASK mask)
mHoverPick = gViewerWindow->pickImmediate(x, y, FALSE);
LLViewerObject *parent = NULL;
LLViewerObject *object = mHoverPick.getObject();
LLSelectMgr::getInstance()->setHoverObject(object, mHoverPick.mObjectFace);
// [RLVa:KB] - Checked: 2010-03-11 (RLVa-1.2.0e) | Modified: RLVa-1.1.0l
// Block all special click action cursors when:
// - @fartouch=n restricted and the object is out of range