summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelmarketplaceoutbox.cpp
diff options
context:
space:
mode:
authorLeslie Linden <none@none>2011-06-16 17:14:51 -0700
committerLeslie Linden <none@none>2011-06-16 17:14:51 -0700
commit0d246c0c5fc3ddef2022572b560eaec0018a722e (patch)
tree9417e06f6d1a5d6d1bf0d5f6ff454225e99170d2 /indra/newview/llpanelmarketplaceoutbox.cpp
parent1be0392d4a0a89aea824ab00d8b9bb60c83267d8 (diff)
EXP-872 PROGRESS -- Hide Inbox unless applicable
EXP-910 FIX -- Newness badge shown on suitcase inventory icon when InventoryDisplayInbox is set to False EXP-895 FIX -- Selecting items in Marketplace Inbox does not change focus in inventory panel away from items selected in inventory panel * Main inventory, outbox and inbox all clear the selection of the others when they gain focus * The Fresh Item Count badge is no longer displayed on the inventory side tab button when the inbox is disabled * The New Item Count text is no longer displayed. (we will enable it again when freshness is supported)
Diffstat (limited to 'indra/newview/llpanelmarketplaceoutbox.cpp')
-rw-r--r--indra/newview/llpanelmarketplaceoutbox.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/indra/newview/llpanelmarketplaceoutbox.cpp b/indra/newview/llpanelmarketplaceoutbox.cpp
index 96695becf0..c8752b3e0f 100644
--- a/indra/newview/llpanelmarketplaceoutbox.cpp
+++ b/indra/newview/llpanelmarketplaceoutbox.cpp
@@ -31,7 +31,11 @@
#include "llbutton.h"
#include "llcoros.h"
#include "lleventcoro.h"
+#include "llinventorypanel.h"
#include "llloadingindicator.h"
+#include "llpanelmarketplaceinbox.h"
+#include "llsidepanelinventory.h"
+#include "llsidetray.h"
#include "lltimer.h"
@@ -60,9 +64,33 @@ BOOL LLPanelMarketplaceOutbox::postBuild()
mSyncButton->setEnabled(!isOutboxEmpty());
+ LLFocusableElement::setFocusReceivedCallback(boost::bind(&LLPanelMarketplaceOutbox::onFocusReceived, this));
+
return TRUE;
}
+void LLPanelMarketplaceOutbox::onFocusReceived()
+{
+ LLSidepanelInventory * sidepanel_inventory = LLSideTray::getInstance()->getPanel<LLSidepanelInventory>("sidepanel_inventory");
+
+ if (sidepanel_inventory)
+ {
+ LLInventoryPanel * inv_panel = sidepanel_inventory->getActivePanel();
+
+ if (inv_panel)
+ {
+ inv_panel->clearSelection();
+ }
+
+ LLInventoryPanel * inbox_panel = sidepanel_inventory->findChild<LLInventoryPanel>("inventory_inbox");
+
+ if (inbox_panel)
+ {
+ inbox_panel->clearSelection();
+ }
+ }
+}
+
bool LLPanelMarketplaceOutbox::isOutboxEmpty() const
{
// TODO: Check for contents of outbox