summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authormaksymsproductengine <maksymsproductengine@lindenlab.com>2012-11-21 01:41:49 +0200
committermaksymsproductengine <maksymsproductengine@lindenlab.com>2012-11-21 01:41:49 +0200
commitedeeed95416be2679e1ad3d29bab5396dbcccaa2 (patch)
tree14699bebd00d0a4330fed43c3aa47f83259cf9f2 /indra/newview
parent7f19e6de5c55c1a28d329fbd6dea728f48b99495 (diff)
CHUI-531 FIXED Poor fps in CHUI viewer
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/commands.xml1
-rwxr-xr-xindra/newview/llconversationview.cpp13
-rwxr-xr-xindra/newview/llconversationview.h8
-rw-r--r--indra/newview/llfloaterimcontainer.cpp2
4 files changed, 22 insertions, 2 deletions
diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml
index d4bbd84d0f..4659673333 100644
--- a/indra/newview/app_settings/commands.xml
+++ b/indra/newview/app_settings/commands.xml
@@ -44,6 +44,7 @@
/>
<command name="chat"
available_in_toybox="true"
+ is_flashing_allowed="true"
icon="Command_Chat_Icon"
label_ref="Command_Chat_Label"
tooltip_ref="Command_Conversations_Tooltip"
diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp
index b9d62e85c4..e40d57c318 100755
--- a/indra/newview/llconversationview.cpp
+++ b/indra/newview/llconversationview.cpp
@@ -82,6 +82,7 @@ LLConversationViewSession::LLConversationViewSession(const LLConversationViewSes
mVoiceClientObserver(NULL),
mMinimizedMode(false)
{
+ mFlashTimer = new LLFlashTimer();
}
LLConversationViewSession::~LLConversationViewSession()
@@ -92,6 +93,18 @@ LLConversationViewSession::~LLConversationViewSession()
{
LLVoiceClient::getInstance()->removeObserver(mVoiceClientObserver);
}
+
+ delete mFlashTimer;
+}
+
+bool LLConversationViewSession::isHighlightAllowed()
+{
+ return mFlashTimer->isFlashingInProgress() || mIsSelected;
+}
+
+bool LLConversationViewSession::isHighlightActive()
+{
+ return mFlashTimer->isFlashingInProgress() ? mFlashTimer->isCurrentlyHighlighted() : mIsCurSelection;
}
BOOL LLConversationViewSession::postBuild()
diff --git a/indra/newview/llconversationview.h b/indra/newview/llconversationview.h
index 8156b746b2..acd7128b7d 100755
--- a/indra/newview/llconversationview.h
+++ b/indra/newview/llconversationview.h
@@ -55,7 +55,10 @@ public:
protected:
friend class LLUICtrlFactory;
LLConversationViewSession( const Params& p );
-
+
+ /*virtual*/ bool isHighlightAllowed();
+ /*virtual*/ bool isHighlightActive();
+
LLFloaterIMContainer* mContainer;
public:
@@ -82,6 +85,8 @@ public:
virtual void refresh();
+ LLFlashTimer * getFlashTimer() { return mFlashTimer; }
+
private:
void onCurrentVoiceSessionChanged(const LLUUID& session_id);
@@ -90,6 +95,7 @@ private:
LLPanel* mCallIconLayoutPanel;
LLTextBox* mSessionTitle;
LLOutputMonitorCtrl* mSpeakingIndicator;
+ LLFlashTimer* mFlashTimer;
bool mMinimizedMode;
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index bcc7e77116..304fb78260 100644
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -1611,7 +1611,7 @@ void LLFloaterIMContainer::reSelectConversation()
void LLFloaterIMContainer::flashConversationItemWidget(const LLUUID& session_id, bool is_flashes)
{
- LLFolderViewItem* widget = get_ptr_in_map(mConversationsWidgets,session_id);
+ LLConversationViewSession * widget = dynamic_cast<LLConversationViewSession *>(get_ptr_in_map(mConversationsWidgets,session_id));
if (widget)
{
if (is_flashes)