diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp index 8cc14a66fa9709a4d8136ef499a52633893186b1..c6c24328b46c8816d000b1895db061d7c0fc23e7 100644 --- a/indra/newview/llfloaterworldmap.cpp +++ b/indra/newview/llfloaterworldmap.cpp @@ -680,11 +680,11 @@ void LLFloaterWorldMap::trackLocation(const LLVector3d& pos_global) std::string tooltip(""); mTrackedStatus = LLTracker::TRACKING_LOCATION; - LLWorldMap::getInstance()->cancelTracking(); // The floater is taking over the tracking // [RLVa:KB] - Checked: 2012-02-08 (RLVa-1.4.5) | Added: RLVa-1.4.5 LLTracker::trackLocation(pos_global, (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) ? full_name : RlvStrings::getString(RlvStringKeys::Hidden::Generic).c_str(), tooltip); // [/RLVa:KB] // LLTracker::trackLocation(pos_global, full_name, tooltip); + LLWorldMap::getInstance()->cancelTracking(); // The floater is taking over the tracking LLVector3d coord_pos = LLTracker::getTrackedPositionGlobal(); updateTeleportCoordsDisplay( coord_pos ); @@ -1660,6 +1660,8 @@ void LLFloaterWorldMap::updateSims(bool found_null_sim) if (num_results > 0) { + list->sortByColumn("sim_name", TRUE); + // if match found, highlight it and go if (!match.isUndefined()) { diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp index 017aeb52db9f9bd8ebc04e4e1484abdceed56986..881f535ba857868f3bdde1051e1129e6ad678969 100644 --- a/indra/newview/llpanelprofile.cpp +++ b/indra/newview/llpanelprofile.cpp @@ -1291,8 +1291,8 @@ bool LLPanelProfileSecondLife::onEnableMenu(const LLSD& userdata) } else if (item_name == "can_show_on_map") { - return (LLAvatarTracker::instance().isBuddyOnline(agent_id) && LLAvatarActions::isAgentMappable(agent_id)) - || gAgent.isGodlike(); + return ((LLAvatarTracker::instance().isBuddyOnline(agent_id) && LLAvatarActions::isAgentMappable(agent_id)) + || gAgent.isGodlike()) && !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWWORLDMAP); } else if (item_name == "toggle_block_agent") { diff --git a/indra/newview/llworldmapview.cpp b/indra/newview/llworldmapview.cpp index 754193c481b1988b86a61d0a7c771b5fe7979bdf..4ba8aed363b6063cd6fea4c9f739cfe6d1519217 100644 --- a/indra/newview/llworldmapview.cpp +++ b/indra/newview/llworldmapview.cpp @@ -762,6 +762,7 @@ bool LLWorldMapView::drawMipmapLevel(S32 width, S32 height, S32 level, bool load pos_NE[VY] += tile_width; // Iterate through the tiles on screen: we just need to ask for one tile every tile_width meters + LLWorldMap* world_map = LLWorldMap::getInstance(); U32 grid_x, grid_y; for (F64 index_y = pos_SW[VY]; index_y < pos_NE[VY]; index_y += tile_width) { @@ -772,7 +773,7 @@ bool LLWorldMapView::drawMipmapLevel(S32 width, S32 height, S32 level, bool load // Convert to the mipmap level coordinates for that point (i.e. which tile to we hit) LLWorldMipmap::globalToMipmap(pos_global[VX], pos_global[VY], level, &grid_x, &grid_y); // Get the tile. Note: NULL means that the image does not exist (so it's considered "complete" as far as fetching is concerned) - LLPointer<LLViewerFetchedTexture> simimage = LLWorldMap::getInstance()->getObjectsTile(grid_x, grid_y, level, load); + LLPointer<LLViewerFetchedTexture> simimage = world_map->getObjectsTile(grid_x, grid_y, level, load); if (simimage) { // Checks that the image has a valid texture @@ -912,10 +913,13 @@ void LLWorldMapView::drawItems() BOOL show_mature = mature_enabled && ALControlCache::ShowMatureEvents; BOOL show_adult = adult_enabled && ALControlCache::ShowAdultEvents; + + LLWorldMap* world_map = LLWorldMap::getInstance(); + for (handle_list_t::iterator iter = mVisibleRegions.begin(); iter != mVisibleRegions.end(); ++iter) { U64 handle = *iter; - LLSimInfo* info = LLWorldMap::getInstance()->simInfoFromHandle(handle); + LLSimInfo* info = world_map->simInfoFromHandle(handle); if ((info == NULL) || (info->isDown())) { continue; @@ -964,10 +968,12 @@ void LLWorldMapView::drawAgents() { static LLUIColor map_avatar_color = LLUIColorTable::instance().getColor("MapAvatarColor", LLColor4::white); + LLWorldMap* world_map = LLWorldMap::getInstance(); + for (handle_list_t::iterator iter = mVisibleRegions.begin(); iter != mVisibleRegions.end(); ++iter) { U64 handle = *iter; - LLSimInfo* siminfo = LLWorldMap::getInstance()->simInfoFromHandle(handle); + LLSimInfo* siminfo = world_map->simInfoFromHandle(handle); if ((siminfo == NULL) || (siminfo->isDown())) { continue; @@ -1603,7 +1609,8 @@ void LLWorldMapView::handleClick(S32 x, S32 y, MASK mask, *hit_type = 0; // hit nothing - LLWorldMap::getInstance()->cancelTracking(); + auto world_map = LLWorldMap::getInstance(); + world_map->cancelTracking(); S32 level = LLWorldMipmap::scaleToLevel(mMapScale); // If the zoom level is not too far out already, test hits @@ -1619,7 +1626,7 @@ void LLWorldMapView::handleClick(S32 x, S32 y, MASK mask, for (handle_list_t::iterator iter = mVisibleRegions.begin(); iter != mVisibleRegions.end(); ++iter) { U64 handle = *iter; - LLSimInfo* siminfo = LLWorldMap::getInstance()->simInfoFromHandle(handle); + LLSimInfo* siminfo = world_map->simInfoFromHandle(handle); if ((siminfo == NULL) || (siminfo->isDown())) { continue;