diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp index 7bd6ef8cd7bd1620b125a213b4942f65483c4e3e..bfaffdd73b01125cc7bf9419231ac0d6cccc545a 100644 --- a/indra/newview/llconversationlog.cpp +++ b/indra/newview/llconversationlog.cpp @@ -531,7 +531,14 @@ void LLConversationLog::onClearLogResponse(const LLSD& notification, const LLSD& { if (0 == LLNotificationsUtil::getSelectedOption(notification, response)) { + deleteTranscripts(); mConversations.clear(); notifyObservers(); } } + +void LLConversationLog::deleteTranscripts() +{ + gDirUtilp->deleteFilesInDir(gDirUtilp->getPerAccountChatLogsDir(), "*." + LL_TRANSCRIPT_FILE_EXTENSION); + LLFloaterIMSessionTab::processChatHistoryStyleUpdate(true); +} diff --git a/indra/newview/llconversationlog.h b/indra/newview/llconversationlog.h index 65a18c02e5dcb4b3587565388b386024a88f103a..88df17a8f70e6491fdd0e2b9d5bec990526991ee 100644 --- a/indra/newview/llconversationlog.h +++ b/indra/newview/llconversationlog.h @@ -140,6 +140,7 @@ class LLConversationLog : public LLSingleton<LLConversationLog>, LLIMSessionObse void onClearLog(); void onClearLogResponse(const LLSD& notification, const LLSD& response); + void deleteTranscripts(); private: diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 7742e5b3c3b04803f090255c6578535be065e801..4f86c26a6743cc16eed33a4d39674f99ba791c6e 100755 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -460,9 +460,6 @@ BOOL LLFloaterPreference::postBuild() // set 'enable' property for 'Clear log...' button changed(); - // set 'enable' property for 'Delete transcripts...' button - updateDeleteTranscriptsButton(); - LLLogChat::setSaveHistorySignal(boost::bind(&LLFloaterPreference::onLogChatHistorySaved, this)); return TRUE; @@ -1587,13 +1584,8 @@ void LLFloaterPreference::onDeleteTranscriptsResponse(const LLSD& notification, { if (0 == LLNotificationsUtil::getSelectedOption(notification, response)) { - gDirUtilp->deleteFilesInDir(gDirUtilp->getPerAccountChatLogsDir(), "*." + LL_TRANSCRIPT_FILE_EXTENSION); - - std::vector<std::string> list_of_transcriptions_file_names; - LLLogChat::getListOfTranscriptFiles(list_of_transcriptions_file_names); - getChild<LLButton>("delete_transcripts")->setEnabled(list_of_transcriptions_file_names.size() > 0); - - LLFloaterIMSessionTab::processChatHistoryStyleUpdate(true); + LLConversationLog::instance().deleteTranscripts(); + updateDeleteTranscriptsButton(); } } @@ -1668,6 +1660,10 @@ void LLFloaterPreference::selectChatPanel() void LLFloaterPreference::changed() { getChild<LLButton>("clear_log")->setEnabled(LLConversationLog::instance().getConversations().size() > 0); + + // set 'enable' property for 'Delete transcripts...' button + updateDeleteTranscriptsButton(); + } //------------------------------Updater---------------------------------------