summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelplaces.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpanelplaces.cpp')
-rw-r--r--indra/newview/llpanelplaces.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/indra/newview/llpanelplaces.cpp b/indra/newview/llpanelplaces.cpp
index 5c866905d6..5dd4960542 100644
--- a/indra/newview/llpanelplaces.cpp
+++ b/indra/newview/llpanelplaces.cpp
@@ -84,6 +84,7 @@ static const std::string LANDMARK_INFO_TYPE = "landmark";
static const std::string REMOTE_PLACE_INFO_TYPE = "remote_place";
static const std::string TELEPORT_HISTORY_INFO_TYPE = "teleport_history";
static const std::string LANDMARK_TAB_INFO_TYPE = "open_landmark_tab";
+static const std::string TELEPORT_HISTORY_TAB_INFO_TYPE = "open_teleport_history_tab";
// Support for secondlife:///app/parcel/{UUID}/about SLapps
class LLParcelHandler : public LLCommandHandler
@@ -411,6 +412,15 @@ void LLPanelPlaces::onOpen(const LLSD& key)
// Update the buttons at the bottom of the panel
updateVerbs();
}
+ else if (key_type == TELEPORT_HISTORY_TAB_INFO_TYPE)
+ {
+ // toggle twice, similar to LANDMARK_TAB_INFO_TYPE
+ togglePlaceInfoPanel(false);
+ mPlaceInfoType = key_type;
+ togglePlaceInfoPanel(false);
+ onTabSelected();
+ updateVerbs();
+ }
else if (key_type == CREATE_PICK_TYPE)
{
LLUUID item_id = key["item_id"];
@@ -1104,6 +1114,18 @@ void LLPanelPlaces::togglePlaceInfoPanel(bool visible)
}
}
}
+ else if (mPlaceInfoType == TELEPORT_HISTORY_TAB_INFO_TYPE)
+ {
+ mLandmarkInfo->setVisible(false);
+ mPlaceProfile->setVisible(false);
+ if (!visible)
+ {
+ if (LLPanel* teleport_history_panel = mTabContainer->getPanelByName("Teleport History"))
+ {
+ mTabContainer->selectTabPanel(teleport_history_panel);
+ }
+ }
+ }
}
// virtual