diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llpanelteleporthistory.cpp | 1 | ||||
-rw-r--r-- | indra/newview/llteleporthistory.cpp | 9 | ||||
-rw-r--r-- | indra/newview/llteleporthistory.h | 3 | ||||
-rw-r--r-- | indra/newview/llteleporthistorystorage.h | 6 | ||||
-rw-r--r-- | indra/newview/lltracker.cpp | 4 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_moveview.xml | 2 |
6 files changed, 19 insertions, 6 deletions
diff --git a/indra/newview/llpanelteleporthistory.cpp b/indra/newview/llpanelteleporthistory.cpp index 2c3f76f546..d3543daff0 100644 --- a/indra/newview/llpanelteleporthistory.cpp +++ b/indra/newview/llpanelteleporthistory.cpp @@ -389,6 +389,7 @@ LLTeleportHistoryPanel::~LLTeleportHistoryPanel() { LLTeleportHistoryFlatItemStorage::instance().purge(); delete mGearMenuHandle.get(); + mTeleportHistoryChangedConnection.disconnect(); } BOOL LLTeleportHistoryPanel::postBuild() diff --git a/indra/newview/llteleporthistory.cpp b/indra/newview/llteleporthistory.cpp index 0d8b45db1f..50a088b799 100644 --- a/indra/newview/llteleporthistory.cpp +++ b/indra/newview/llteleporthistory.cpp @@ -56,7 +56,8 @@ const std::string& LLTeleportHistoryItem::getTitle() const LLTeleportHistory::LLTeleportHistory(): mCurrentItem(-1), mRequestedItem(-1), - mGotInitialUpdate(false) + mGotInitialUpdate(false), + mTeleportHistoryStorage(NULL) { mTeleportFinishedConn = LLViewerParcelMgr::getInstance()-> setTeleportFinishedCallback(boost::bind(&LLTeleportHistory::updateCurrentLocation, this, _1)); @@ -115,6 +116,10 @@ void LLTeleportHistory::handleLoginComplete() void LLTeleportHistory::updateCurrentLocation(const LLVector3d& new_pos) { + if (!mTeleportHistoryStorage) + { + mTeleportHistoryStorage = LLTeleportHistoryStorage::getInstance(); + } if (mRequestedItem != -1) // teleport within the history in progress? { mCurrentItem = mRequestedItem; @@ -152,7 +157,7 @@ void LLTeleportHistory::updateCurrentLocation(const LLVector3d& new_pos) if (mCurrentItem < 0 || mCurrentItem >= (int) mItems.size()) // sanity check { llwarns << "Invalid current item. (this should not happen)" << llendl; - llassert(!"Invalid current teleport histiry item"); + llassert(!"Invalid current teleport history item"); return; } LLVector3 new_pos_local = gAgent.getPosAgentFromGlobal(new_pos); diff --git a/indra/newview/llteleporthistory.h b/indra/newview/llteleporthistory.h index e45dc28f9b..e9c29c39bf 100644 --- a/indra/newview/llteleporthistory.h +++ b/indra/newview/llteleporthistory.h @@ -33,6 +33,7 @@ #include <string> #include <boost/function.hpp> #include <boost/signals2.hpp> +#include "llteleporthistorystorage.h" /** @@ -210,6 +211,8 @@ private: */ bool mGotInitialUpdate; + LLTeleportHistoryStorage* mTeleportHistoryStorage; + /** * Signal emitted when the history gets changed. * diff --git a/indra/newview/llteleporthistorystorage.h b/indra/newview/llteleporthistorystorage.h index 6cae0a3454..cf4c85a991 100644 --- a/indra/newview/llteleporthistorystorage.h +++ b/indra/newview/llteleporthistorystorage.h @@ -93,9 +93,6 @@ public: void removeItem(S32 idx); void save(); - void load(); - - void dump() const; /** * Set a callback to be called upon history changes. @@ -113,6 +110,9 @@ public: private: + void load(); + void dump() const; + void onTeleportHistoryChange(); bool compareByTitleAndGlobalPos(const LLTeleportHistoryPersistentItem& a, const LLTeleportHistoryPersistentItem& b); diff --git a/indra/newview/lltracker.cpp b/indra/newview/lltracker.cpp index 983108391f..efe9bb8da7 100644 --- a/indra/newview/lltracker.cpp +++ b/indra/newview/lltracker.cpp @@ -53,10 +53,12 @@ #include "llinventorymodel.h" #include "llinventoryobserver.h" #include "lllandmarklist.h" +#include "llprogressview.h" #include "llsky.h" #include "llui.h" #include "llviewercamera.h" #include "llviewerinventory.h" +#include "llviewerwindow.h" #include "llworld.h" #include "llworldmapview.h" #include "llviewercontrol.h" @@ -111,6 +113,8 @@ void LLTracker::drawHUDArrow() { if (!gSavedSettings.getBOOL("RenderTrackerBeacon")) return; + if (gViewerWindow->getProgressView()->getVisible()) return; + static LLUIColor map_track_color = LLUIColorTable::instance().getColor("MapTrackColor", LLColor4::white); /* tracking autopilot destination has been disabled diff --git a/indra/newview/skins/default/xui/en/floater_moveview.xml b/indra/newview/skins/default/xui/en/floater_moveview.xml index b9881e4347..e96039a3e1 100644 --- a/indra/newview/skins/default/xui/en/floater_moveview.xml +++ b/indra/newview/skins/default/xui/en/floater_moveview.xml @@ -14,7 +14,7 @@ help_topic="move_floater" save_rect="true" save_visibility="true" - save_dock_state="true" + single_instance="true" chrome="true" title="MOVE" width="133"> |