diff options
| author | Mike Antipov <mantipov@productengine.com> | 2009-12-15 18:56:38 +0200 |
|---|---|---|
| committer | Mike Antipov <mantipov@productengine.com> | 2009-12-15 18:56:38 +0200 |
| commit | 5eb82cdeaa4202ee696308b421d68061d4029b8c (patch) | |
| tree | 33d752c74a0cc29a7380798f5ca8f62e99f453a5 /indra/newview/llsyswellwindow.cpp | |
| parent | eccc3ed597121ec49ae9a9979200985cc80e9edd (diff) | |
Work on task EXT-3147 (Implement new states for message indicators)
-- Implemented requirement: Opening either Message Well will clear the "new messages" state (and thus the "lit" status),
even though there may still be unread messages
--HG--
branch : product-engine
Diffstat (limited to 'indra/newview/llsyswellwindow.cpp')
| -rw-r--r-- | indra/newview/llsyswellwindow.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/indra/newview/llsyswellwindow.cpp b/indra/newview/llsyswellwindow.cpp index ca7cb0f59f..ae13071b6b 100644 --- a/indra/newview/llsyswellwindow.cpp +++ b/indra/newview/llsyswellwindow.cpp @@ -51,6 +51,7 @@ LLSysWellWindow::LLSysWellWindow(const LLSD& key) : LLDockableFloater(NULL, key), mChannel(NULL), mMessageList(NULL), + mSysWellChiclet(NULL), mSeparator(NULL), NOTIFICATION_WELL_ANCHOR_NAME("notification_well_panel"), IM_WELL_ANCHOR_NAME("im_well_panel") @@ -80,6 +81,9 @@ BOOL LLSysWellWindow::postBuild() mMessageList->addItem(mSeparator); + // click on SysWell Window should clear "new message" state (and 'Lit' status). EXT-3147. + setMouseDownCallback(boost::bind(&LLSysWellWindow::releaseNewMessagesState, this)); + return LLDockableFloater::postBuild(); } @@ -174,6 +178,11 @@ void LLSysWellWindow::setVisible(BOOL visible) mChannel->updateShowToastsState(); mChannel->redrawToasts(); } + + if (visible) + { + releaseNewMessagesState(); + } } //--------------------------------------------------------------------------------- @@ -227,6 +236,14 @@ void LLSysWellWindow::reshapeWindow() } } +void LLSysWellWindow::releaseNewMessagesState() +{ + if (NULL != mSysWellChiclet) + { + mSysWellChiclet->setNewMessagesState(false); + } +} + //--------------------------------------------------------------------------------- bool LLSysWellWindow::isWindowEmpty() { |
