summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2026-10-13 06:52:16 +0800
committerErik Kundiman <erik@megapahit.org>2026-10-13 06:52:16 +0800
commitc9cfb87ee117edd7cb007534d27ffa11f1c54dbc (patch)
treec1f7108e3ff9f4a1a96feb7eb8348aedca9b2da7
parent5f5eb7be7badbf87ca2522fca43f37adfeeae549 (diff)
parent083db782e29434ab17963fcac76b0ec3cd93b9d0 (diff)
Merge tag 'Second_Life_Release#083db782-26.5' into 26.5
-rw-r--r--indra/newview/llfloaterconversationlog.cpp2
-rw-r--r--indra/newview/llfloaterconversationpreview.cpp2
-rw-r--r--indra/newview/llfloaterimsession.cpp14
-rw-r--r--indra/newview/llfloaterimsession.h1
-rw-r--r--indra/newview/skins/default/xui/de/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/en/menu_conversation_log_view.xml3
-rw-r--r--indra/newview/skins/default/xui/es/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/fr/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/it/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/ja/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/pl/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/pt/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/ru/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/tr/floater_im_session.xml5
-rw-r--r--indra/newview/skins/default/xui/zh/floater_im_session.xml5
15 files changed, 68 insertions, 4 deletions
diff --git a/indra/newview/llfloaterconversationlog.cpp b/indra/newview/llfloaterconversationlog.cpp
index 144741a768..344ce3f4dd 100644
--- a/indra/newview/llfloaterconversationlog.cpp
+++ b/indra/newview/llfloaterconversationlog.cpp
@@ -37,6 +37,7 @@ LLFloaterConversationLog::LLFloaterConversationLog(const LLSD& key)
mConversationLogList(NULL)
{
mCommitCallbackRegistrar.add("CallLog.Action", boost::bind(&LLFloaterConversationLog::onCustomAction, this, _2));
+ mEnableCallbackRegistrar.add("CallLog.Enable", boost::bind(&LLFloaterConversationLog::isActionEnabled, this, _2));
mEnableCallbackRegistrar.add("CallLog.Check", boost::bind(&LLFloaterConversationLog::isActionChecked, this, _2));
}
@@ -116,6 +117,7 @@ void LLFloaterConversationLog::onCustomAction (const LLSD& userdata)
bool LLFloaterConversationLog::isActionEnabled(const LLSD& userdata)
{
+ // Disable nearby history while account state or transcript deletion suppresses it.
if (userdata.asString() == "view_nearby_chat_history")
{
return !LLChatServiceHistory::historySuppressed();
diff --git a/indra/newview/llfloaterconversationpreview.cpp b/indra/newview/llfloaterconversationpreview.cpp
index 1698d6e914..1ba71d9c84 100644
--- a/indra/newview/llfloaterconversationpreview.cpp
+++ b/indra/newview/llfloaterconversationpreview.cpp
@@ -140,6 +140,8 @@ void LLFloaterConversationPreview::setPages(std::list<LLSD>* messages, const std
// Publish the new page range together so draw() never renders stale bounds.
mPageSpinner->setEnabled(true);
mPageSpinner->setMaxValue((F32)(last_page+1));
+ // Force forceSetValue() below to refresh the displayed text even if the value is unchanged
+ mPageSpinner->clear();
// Refresh the displayed page even while the editor has focus.
mPageSpinner->forceSetValue((F32)(mCurrentPage+1));
mPageSpinner->resetDirty();
diff --git a/indra/newview/llfloaterimsession.cpp b/indra/newview/llfloaterimsession.cpp
index 6fd6dbee9d..850b228750 100644
--- a/indra/newview/llfloaterimsession.cpp
+++ b/indra/newview/llfloaterimsession.cpp
@@ -354,6 +354,8 @@ bool LLFloaterIMSession::postBuild()
{
bool result = LLFloaterIMSessionTab::postBuild();
+ mChatServiceLoadingPanel = getChildView("chat_service_loading");
+
mInputEditor->setMaxTextLength(1023);
mInputEditor->setAutoreplaceCallback(boost::bind(&LLAutoReplace::autoreplaceCallback, LLAutoReplace::getInstance(), _1, _2, _3, _4, _5));
mInputEditor->setFocusReceivedCallback( boost::bind(onInputEditorFocusReceived, _1, this) );
@@ -375,8 +377,6 @@ bool LLFloaterIMSession::postBuild()
//see LLFloaterIMPanel for how it is done (IB)
initIMFloater();
- getChild<LLTextBox>("chat_service_loading_text")->setValue(
- LLTrans::getString("loading_chat_logs"));
return result;
}
@@ -1120,17 +1120,23 @@ void LLFloaterIMSession::processSessionUpdate(const LLSD& session_update)
// virtual
void LLFloaterIMSession::draw()
{
+ // The cache follows preference changes without looking up the setting each frame.
+ static LLCachedControl<bool> show_history(gSavedPerAccountSettings, "LogShowHistory");
+
// The floater presents both model-owned local reads and account-scoped service
// work without scheduling either source from draw().
const bool loading =
mSession &&
mIsP2PChat &&
- gSavedPerAccountSettings.getBOOL("LogShowHistory") &&
+ show_history &&
(mSession->isChatHistoryLoading() ||
LLChatServiceHistory::getSnapshot(mSession->mOtherParticipantID).service_work_active);
// The widget animates in draw(); hiding its panel suspends that work.
- getChildView("chat_service_loading")->setVisible(loading);
+ if (mChatServiceLoadingPanel->getVisible() != loading)
+ {
+ mChatServiceLoadingPanel->setVisible(loading);
+ }
// add people who were added via dropPerson()
if (!mPendingParticipants.empty())
diff --git a/indra/newview/llfloaterimsession.h b/indra/newview/llfloaterimsession.h
index a35fc27791..f51f8fd8d6 100644
--- a/indra/newview/llfloaterimsession.h
+++ b/indra/newview/llfloaterimsession.h
@@ -172,6 +172,7 @@ private:
static void confirmLeaveCallCallback(const LLSD& notification, const LLSD& response);
+ LLView* mChatServiceLoadingPanel = nullptr;
S32 mLastMessageIndex;
EInstantMessage mDialog;
diff --git a/indra/newview/skins/default/xui/de/floater_im_session.xml b/indra/newview/skins/default/xui/de/floater_im_session.xml
index b07b74bf4a..25b184ea32 100644
--- a/indra/newview/skins/default/xui/de/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/de/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Chat übersetzen" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Laden..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml b/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml
index 38d7f09445..7cafe7aec1 100644
--- a/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml
+++ b/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml
@@ -51,5 +51,8 @@
<on_click
function="CallLog.Action"
parameter="view_nearby_chat_history" />
+ <on_enable
+ function="CallLog.Enable"
+ parameter="view_nearby_chat_history" />
</menu_item_call>
</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/es/floater_im_session.xml b/indra/newview/skins/default/xui/es/floater_im_session.xml
index e5f48e3fd5..0f389a91b2 100644
--- a/indra/newview/skins/default/xui/es/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/es/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Traducir el chat" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Cargando..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/fr/floater_im_session.xml b/indra/newview/skins/default/xui/fr/floater_im_session.xml
index 6d98f0a846..ff868f7fd8 100644
--- a/indra/newview/skins/default/xui/fr/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/fr/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Traduire le chat" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Chargement..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/it/floater_im_session.xml b/indra/newview/skins/default/xui/it/floater_im_session.xml
index 71f90accde..2baceea929 100644
--- a/indra/newview/skins/default/xui/it/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/it/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Traduci chat" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Caricamento in corso..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/ja/floater_im_session.xml b/indra/newview/skins/default/xui/ja/floater_im_session.xml
index a2c116dbdc..667458d4b7 100644
--- a/indra/newview/skins/default/xui/ja/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/ja/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="チャットを翻訳" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="読み込み中…"/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/pl/floater_im_session.xml b/indra/newview/skins/default/xui/pl/floater_im_session.xml
index ee6e465ea3..38278a62ca 100644
--- a/indra/newview/skins/default/xui/pl/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/pl/floater_im_session.xml
@@ -26,6 +26,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Tłumacz czat" name="translate_chat_checkbox" />
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Wczytywanie..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/pt/floater_im_session.xml b/indra/newview/skins/default/xui/pt/floater_im_session.xml
index e592b14fa7..71299df191 100644
--- a/indra/newview/skins/default/xui/pt/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/pt/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Traduzir conversa" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Carregando..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/ru/floater_im_session.xml b/indra/newview/skins/default/xui/ru/floater_im_session.xml
index d4ca04b88b..c38b43f31b 100644
--- a/indra/newview/skins/default/xui/ru/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/ru/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Переводить чат" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Загрузка..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/tr/floater_im_session.xml b/indra/newview/skins/default/xui/tr/floater_im_session.xml
index 52a10feeef..1392fff846 100644
--- a/indra/newview/skins/default/xui/tr/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/tr/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="Sohbeti çevir" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="Yükleniyor..."/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/zh/floater_im_session.xml b/indra/newview/skins/default/xui/zh/floater_im_session.xml
index 864af2e592..bc6e241288 100644
--- a/indra/newview/skins/default/xui/zh/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/zh/floater_im_session.xml
@@ -38,6 +38,11 @@
<layout_panel name="translate_chat_checkbox_lp">
<check_box label="翻譯聊天內容" name="translate_chat_checkbox"/>
</layout_panel>
+ <layout_panel name="chat_holder">
+ <panel name="chat_service_loading">
+ <text name="chat_service_loading_text" value="載入中…"/>
+ </panel>
+ </layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>