From 0b395f01f9cfc71bdc6692c4392ffe3da50963ee Mon Sep 17 00:00:00 2001 From: Mnikolenko Productengine Date: Wed, 30 Sep 2020 14:25:21 +0300 Subject: SL-13570 FIXED The name of the item is overlapped by search term in inventory --- indra/llui/llfolderviewitem.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'indra/llui/llfolderviewitem.cpp') diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 9a1f7de73b..177684c5e3 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -914,9 +914,10 @@ void LLFolderViewItem::draw() // if (filter_string_length > 0) { - F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mViewModelItem->getFilterStringOffset()); + S32 filter_offset = mViewModelItem->getFilterStringOffset(); + F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, filter_offset + filter_string_length) - font->getWidthF32(combined_string, filter_offset, filter_string_length); F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)mTextPad - (F32)TOP_PAD; - font->renderUTF8( combined_string, mViewModelItem->getFilterStringOffset(), match_string_left, yy, + font->renderUTF8( combined_string, filter_offset, match_string_left, yy, sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, filter_string_length, S32_MAX, &right_x, FALSE ); } -- cgit v1.2.3 From a66932a091bac4d4ca1a861901b9cef619a406f7 Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Fri, 19 Mar 2021 12:55:04 +0200 Subject: SL-14927 Some avatar names not resolving in chat buildConversationViewParticipant() was deparenting view models that belong to session --- indra/llui/llfolderviewitem.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'indra/llui/llfolderviewitem.cpp') diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 9f6ceac768..31202f02bf 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -1608,7 +1608,7 @@ void LLFolderViewFolder::destroyView() // extractItem() removes the specified item from the folder, but // doesn't delete it. -void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) +void LLFolderViewFolder::extractItem( LLFolderViewItem* item) { if (item->isSelected()) getRoot()->clearSelection(); @@ -1631,7 +1631,13 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) mItems.erase(it); } //item has been removed, need to update filter - getViewModelItem()->removeChild(item->getViewModelItem()); + LLFolderViewModelItem* parent_model = getViewModelItem(); + LLFolderViewModelItem* child_model = item->getViewModelItem(); + if (child_model->getParent() == parent_model) + { + // in some cases model does not belong to parent view, is shared between views + parent_model->removeChild(child_model); + } //because an item is going away regardless of filter status, force rearrange requestArrange(); removeChild(item); -- cgit v1.2.3 From 5f6a025397d0bcca27adc01fcb6fc324b7bdbd4d Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Fri, 19 Mar 2021 13:40:19 +0200 Subject: Revert "SL-14927 Some avatar names not resolving in chat" This reverts commit a66932a091bac4d4ca1a861901b9cef619a406f7. --- indra/llui/llfolderviewitem.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'indra/llui/llfolderviewitem.cpp') diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 31202f02bf..9f6ceac768 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -1608,7 +1608,7 @@ void LLFolderViewFolder::destroyView() // extractItem() removes the specified item from the folder, but // doesn't delete it. -void LLFolderViewFolder::extractItem( LLFolderViewItem* item) +void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) { if (item->isSelected()) getRoot()->clearSelection(); @@ -1631,13 +1631,7 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item) mItems.erase(it); } //item has been removed, need to update filter - LLFolderViewModelItem* parent_model = getViewModelItem(); - LLFolderViewModelItem* child_model = item->getViewModelItem(); - if (child_model->getParent() == parent_model) - { - // in some cases model does not belong to parent view, is shared between views - parent_model->removeChild(child_model); - } + getViewModelItem()->removeChild(item->getViewModelItem()); //because an item is going away regardless of filter status, force rearrange requestArrange(); removeChild(item); -- cgit v1.2.3 From 65352e988410d8001d485fa9d72858e21cc80df7 Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Fri, 19 Mar 2021 13:47:32 +0200 Subject: SL-14927 Some avatar names not resolving in chat --- indra/llui/llfolderviewitem.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'indra/llui/llfolderviewitem.cpp') diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 9f6ceac768..285bf9f484 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -1608,7 +1608,7 @@ void LLFolderViewFolder::destroyView() // extractItem() removes the specified item from the folder, but // doesn't delete it. -void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) +void LLFolderViewFolder::extractItem( LLFolderViewItem* item, bool deparent_model ) { if (item->isSelected()) getRoot()->clearSelection(); @@ -1631,7 +1631,11 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) mItems.erase(it); } //item has been removed, need to update filter - getViewModelItem()->removeChild(item->getViewModelItem()); + if (deparent_model) + { + // in some cases model does not belong to parent view, is shared between views + getViewModelItem()->removeChild(item->getViewModelItem()); + } //because an item is going away regardless of filter status, force rearrange requestArrange(); removeChild(item); -- cgit v1.2.3