mirror of
https://github.com/FirestormViewer/phoenix-firestorm.git
synced 2026-08-14 08:53:53 +00:00
Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm
This commit is contained in:
@@ -196,6 +196,14 @@ bool FSInventoryCustomTabs::handleMouseDown(S32 x, S32 y)
|
||||
|
||||
void FSInventoryCustomTabs::onFilterFocusLost()
|
||||
{
|
||||
if (mParent)
|
||||
{
|
||||
auto* active = dynamic_cast<LLInventoryPanel*>(mParent->getActivePanel());
|
||||
if (active && isCustomTab(active) && !mExplicitlyNamed.count(active))
|
||||
{
|
||||
updateAutoLabel(active);
|
||||
}
|
||||
}
|
||||
save();
|
||||
}
|
||||
|
||||
@@ -246,6 +254,10 @@ void FSInventoryCustomTabs::noteActivePanel(LLInventoryPanel* panel)
|
||||
{
|
||||
if (mLastActivePanel && mLastActivePanel != panel && isCustomTab(mLastActivePanel))
|
||||
{
|
||||
if (!mExplicitlyNamed.count(mLastActivePanel))
|
||||
{
|
||||
updateAutoLabel(mLastActivePanel);
|
||||
}
|
||||
save();
|
||||
}
|
||||
if (panel && panel != mAddTabPanel && mTabs && mTabs->getIndexForPanel(panel) >= 0)
|
||||
@@ -264,15 +276,6 @@ void FSInventoryCustomTabs::onClosePressed(LLInventoryPanel* panel)
|
||||
onCloseClicked();
|
||||
}
|
||||
|
||||
void FSInventoryCustomTabs::onActiveFilterChanged(LLPanel* active_panel)
|
||||
{
|
||||
auto* inv_panel = dynamic_cast<LLInventoryPanel*>(active_panel);
|
||||
if (inv_panel && mPanels.count(inv_panel) && !mExplicitlyNamed.count(inv_panel))
|
||||
{
|
||||
updateAutoLabel(inv_panel);
|
||||
}
|
||||
}
|
||||
|
||||
void FSInventoryCustomTabs::notifyActiveFilterStateChanged()
|
||||
{
|
||||
if (!mParent || !isCustomTab(mParent->getActivePanel()))
|
||||
@@ -336,14 +339,6 @@ void FSInventoryCustomTabs::noteActivePanel(LLPanelMainInventory* parent, LLInve
|
||||
}
|
||||
}
|
||||
|
||||
void FSInventoryCustomTabs::onActiveFilterChanged(LLPanelMainInventory* parent, LLPanel* active)
|
||||
{
|
||||
if (auto* self = instanceFor(parent))
|
||||
{
|
||||
self->onActiveFilterChanged(active);
|
||||
}
|
||||
}
|
||||
|
||||
S32 FSInventoryCustomTabs::captureFilterGeneration(const LLPanelMainInventory* parent)
|
||||
{
|
||||
if (!parent)
|
||||
|
||||
@@ -53,7 +53,6 @@ public:
|
||||
bool handleMouseDown(S32 x, S32 y);
|
||||
|
||||
void noteActivePanel(LLInventoryPanel* panel);
|
||||
void onActiveFilterChanged(LLPanel* active_panel);
|
||||
void notifyActiveFilterStateChanged();
|
||||
|
||||
static void registerCommitCallbacks(LLPanelMainInventory* parent);
|
||||
@@ -74,7 +73,6 @@ public:
|
||||
static bool activePanelIsCustom(const LLPanelMainInventory* parent);
|
||||
static bool maybeHandleAddTabSelected(LLPanelMainInventory* parent);
|
||||
static void noteActivePanel(LLPanelMainInventory* parent, LLInventoryPanel* panel);
|
||||
static void onActiveFilterChanged(LLPanelMainInventory* parent, LLPanel* active);
|
||||
static S32 captureFilterGeneration(const LLPanelMainInventory* parent);
|
||||
static void notifyIfFilterChanged(LLPanelMainInventory* parent, S32 prev_generation);
|
||||
static bool handleRightMouseDown(LLPanelMainInventory* parent, S32 x, S32 y);
|
||||
|
||||
@@ -730,6 +730,7 @@ void LLOutfitsList::applyFilterToTab(
|
||||
}
|
||||
else
|
||||
{
|
||||
tab->setVisible(true); // <FS:PP> FIRE-36651 Fix outfit search so accordion tabs become visible again when the filter matches the outfit name after a typo
|
||||
// Try restoring the tab selection.
|
||||
restoreOutfitSelection(tab, category_id);
|
||||
}
|
||||
|
||||
@@ -1118,7 +1118,10 @@ void LLPanelMainInventory::onFilterEdit(const std::string& search_string )
|
||||
|
||||
if (mInboxPanel)
|
||||
{
|
||||
mInboxPanel->onFilterEdit(search_string);
|
||||
// <FS:PP> FIRE-35598: Custom filters in inventory (feature idea: Catznip)
|
||||
// mInboxPanel->onFilterEdit(search_string);
|
||||
mInboxPanel->onFilterEdit(search_for);
|
||||
// </FS:PP>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1326,6 +1329,12 @@ void LLPanelMainInventory::onFilterSelected()
|
||||
}
|
||||
updateFilterDropdown(&filter); // <FS:Zi> Filter dropdown
|
||||
setFilterTextFromFilter();
|
||||
// <FS:PP> FIRE-35598: Custom filters in inventory (feature idea: Catznip)
|
||||
if (mInboxPanel && mActivePanel)
|
||||
{
|
||||
mInboxPanel->onFilterEdit(mActivePanel->getFilter().getFilterSubStringOrig());
|
||||
}
|
||||
// </FS:PP>
|
||||
}
|
||||
|
||||
const std::string LLPanelMainInventory::getFilterSubString()
|
||||
@@ -1336,7 +1345,6 @@ const std::string LLPanelMainInventory::getFilterSubString()
|
||||
void LLPanelMainInventory::setFilterSubString(const std::string& string)
|
||||
{
|
||||
mActivePanel->setFilterSubString(string);
|
||||
FSInventoryCustomTabs::onActiveFilterChanged(this, mActivePanel); // <FS:PP> FIRE-35598: Custom filters in inventory (feature idea: Catznip)
|
||||
}
|
||||
|
||||
bool LLPanelMainInventory::handleDragAndDrop(S32 x, S32 y, MASK mask, bool drop,
|
||||
|
||||
@@ -488,6 +488,25 @@ void LLScriptFloaterManager::onAddNotification(const LLUUID& notification_id)
|
||||
haystack.mType = OmnifilterEngine::eType::ScriptDialog;
|
||||
haystack.mSenderName = notification->getPayload()["object_name"].asString();
|
||||
haystack.mOwnerID = notification->getPayload()["owner_id"];
|
||||
// <FS:minerjr> [FIRE-36647] - Add Script Dialog Buttons to OmniFilter Content
|
||||
// If there are form elements (Script Dialog Buttons), then we want to parse out the name of the button
|
||||
// and add them to the mContent.
|
||||
if (notification->hasFormElements())
|
||||
{
|
||||
LLNotificationFormPtr script_form = notification->getForm();
|
||||
// Get the number of elements and loop over each of them.
|
||||
S32 number_of_elements = script_form->getNumElements();
|
||||
for (S32 element_idx = 0; element_idx < number_of_elements; element_idx++)
|
||||
{
|
||||
LLSD element = script_form->getElement(element_idx);
|
||||
// If the element has a name, then append the name to the mContent.
|
||||
if (element.has("name"))
|
||||
{
|
||||
haystack.mContent += "\nbutton_name=" + element["name"].asString();
|
||||
}
|
||||
}
|
||||
}
|
||||
// </FS:minerjr> [FIRE-36647]
|
||||
}
|
||||
else if (notification->getName() == "ObjectGiveItem") // what about OwnObjectGiveItem?
|
||||
{
|
||||
|
||||
@@ -2354,6 +2354,7 @@ void LLTextureCtrl::setImageAssetID( const LLUUID& asset_id )
|
||||
mImageItemID.setNull();
|
||||
mImageAssetID = asset_id;
|
||||
mLocalTrackingID.setNull();
|
||||
LLView::setEnabled(!mOpenTexPreview || (asset_id.notNull() && !mIsPreviewDisabled)); // <FS:Ansariel> Texture preview mode
|
||||
LLFloaterTexturePicker* floaterp = (LLFloaterTexturePicker*)mFloaterHandle.get();
|
||||
if( floaterp && getEnabled() )
|
||||
{
|
||||
@@ -2705,12 +2706,7 @@ bool LLTextureCtrl::handleUnicodeCharHere(llwchar uni_char)
|
||||
|
||||
void LLTextureCtrl::setValue( const LLSD& value )
|
||||
{
|
||||
// <FS:Ansariel> Texture preview mode
|
||||
//setImageAssetID(value.asUUID());
|
||||
LLUUID uuid = value.asUUID();
|
||||
setImageAssetID(uuid);
|
||||
LLView::setEnabled(!mOpenTexPreview || (uuid.notNull() && !mIsPreviewDisabled));
|
||||
// </FS:Ansariel>
|
||||
setImageAssetID(value.asUUID());
|
||||
}
|
||||
|
||||
LLSD LLTextureCtrl::getValue() const
|
||||
|
||||
@@ -961,7 +961,10 @@ bool LLVivoxVoiceClient::endAndDisconnectSession()
|
||||
|
||||
bool LLVivoxVoiceClient::callbackEndDaemon(const LLSD& data)
|
||||
{
|
||||
if (!sShuttingDown && mVoiceEnabled)
|
||||
// <FS:TJ> Fix WebRTC voice not working on Linux after 2 minutes
|
||||
//if (!sShuttingDown && mVoiceEnabled)
|
||||
if (!sShuttingDown && mVoiceEnabled && mIsInitialized)
|
||||
// </FS:TJ>
|
||||
{
|
||||
LL_WARNS("Voice") << "SLVoice terminated " << ll_stream_notation_sd(data) << LL_ENDL;
|
||||
terminateAudioSession(false);
|
||||
|
||||
@@ -14,6 +14,11 @@
|
||||
Termes de la recherche :
|
||||
</text>
|
||||
<check_box label="Inclure les groupes adultes" name="incmature"/>
|
||||
<combo_box name="groups_maturity">
|
||||
<combo_box.item label="Général" name="Desired_PG"/>
|
||||
<combo_box.item label="Général et Modéré" name="Desired_Mature"/>
|
||||
<combo_box.item label="Général, Modéré, Adulte" name="Desired_Adult"/>
|
||||
</combo_box>
|
||||
<scroll_list name="results">
|
||||
<column label="Nom" name="name" dynamicwidth="true"/>
|
||||
<column label="Membres" name="members"/>
|
||||
|
||||
@@ -2,6 +2,11 @@
|
||||
<panel label="Groupes" name="panel_ls_groups">
|
||||
<panel name="panel_ls_input">
|
||||
<text name="search_text">Critères de recherche :</text>
|
||||
<combo_box name="groups_maturity">
|
||||
<combo_box.item label="Général" name="Desired_PG"/>
|
||||
<combo_box.item label="Général et Modéré" name="Desired_Mature"/>
|
||||
<combo_box.item label="Général, Modéré, Adulte" name="Desired_Adult"/>
|
||||
</combo_box>
|
||||
</panel>
|
||||
<panel name="panel_ls_scrolllist">
|
||||
<scroll_list name="search_results_groups">
|
||||
|
||||
@@ -14,6 +14,11 @@
|
||||
Szukana fraza:
|
||||
</text>
|
||||
<check_box label="Dołącz grupy dla dorosłych" name="incmature" />
|
||||
<combo_box name="groups_maturity">
|
||||
<combo_box.item label="General (dla wszystkich)" name="Desired_PG" />
|
||||
<combo_box.item label="General (dla wszystkich) i Moderate (umiarkowanych)" name="Desired_Mature" />
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowanych) i Adult (dla dorosłych)" name="Desired_Adult" />
|
||||
</combo_box>
|
||||
<scroll_list name="results">
|
||||
<column label="Nazwa" name="name" />
|
||||
<column label="Osób" name="members" />
|
||||
|
||||
@@ -4,6 +4,11 @@
|
||||
<text name="search_text">
|
||||
Wpisz zapytanie:
|
||||
</text>
|
||||
<combo_box name="groups_maturity">
|
||||
<combo_box.item label="General (dla wszystkich)" name="Desired_PG" />
|
||||
<combo_box.item label="General (dla wszystkich) i Moderate (umiarkowanych)" name="Desired_Mature" />
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowanych) i Adult (dla dorosłych)" name="Desired_Adult" />
|
||||
</combo_box>
|
||||
</panel>
|
||||
<panel name="panel_ls_scrolllist">
|
||||
<scroll_list name="search_results_groups">
|
||||
|
||||
Reference in New Issue
Block a user