Buncha small fixes, mainly from alchemy

Update firestorm jira url
Maintain sorting and and scroll position when refreshing region tracker
Add missing CrashHostUrl setting
And a buncha other tinies, probably a crash fix or two.
This commit is contained in:
Liru Færs
2020-02-25 03:26:33 -05:00
parent 2afd2c500b
commit 379f97e15a
8 changed files with 39 additions and 19 deletions

View File

@@ -1575,7 +1575,7 @@ std::string LLUrlEntryJira::getUrl(const std::string &url) const
(url.find("SV") != std::string::npos) ? (url.find("SV") != std::string::npos) ?
"https://singularityviewer.atlassian.net/browse/%1%" : "https://singularityviewer.atlassian.net/browse/%1%" :
(url.find("FIRE") != std::string::npos) ? (url.find("FIRE") != std::string::npos) ?
"http://jira.phoenixviewer.com/browse/%1%" : "https://jira.firestormviewer.com/browse/%1%" :
"http://jira.secondlife.com/browse/%1%" "http://jira.secondlife.com/browse/%1%"
) % url).str(); ) % url).str();
} }

View File

@@ -117,6 +117,9 @@ void ALFloaterRegionTracker::refresh()
{ {
saved_selected_values.push_back(item->getValue().asString()); saved_selected_values.push_back(item->getValue().asString());
} }
S32 saved_scroll_pos = mRegionScrollList->getScrollPos();
auto sort_column_name = mRegionScrollList->getSortColumnName();
auto sort_asending = mRegionScrollList->getSortAscending();
mRegionScrollList->deleteAllItems(); mRegionScrollList->deleteAllItems();
const std::string& cur_region_name = gAgent.getRegion()->getName(); const std::string& cur_region_name = gAgent.getRegion()->getName();
@@ -172,8 +175,11 @@ void ALFloaterRegionTracker::refresh()
mRegionScrollList->addRow(row); mRegionScrollList->addRow(row);
} }
} }
mRegionScrollList->sortByColumn(sort_column_name, sort_asending);
if (!saved_selected_values.empty()) if (!saved_selected_values.empty())
mRegionScrollList->selectMultiple(saved_selected_values); mRegionScrollList->selectMultiple(saved_selected_values);
mRegionScrollList->setScrollPos(saved_scroll_pos);
} }
BOOL ALFloaterRegionTracker::tick() BOOL ALFloaterRegionTracker::tick()

View File

@@ -2556,6 +2556,17 @@ This should be as low as possible, but too low may break functionality</string>
<integer>1</integer> <integer>1</integer>
</map> </map>
<!-- Standard SL options (To my knowledge) --> <!-- Standard SL options (To my knowledge) -->
<key>CrashHostUrl</key>
<map>
<key>Comment</key>
<string>A URL pointing to a crash report handler; overrides cluster negotiation to locate crash handler.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>String</string>
<key>Value</key>
<string />
</map>
<key>AFKTimeout</key> <key>AFKTimeout</key>
<map> <map>
<key>Comment</key> <key>Comment</key>

View File

@@ -2512,7 +2512,6 @@ void LLAgentCamera::changeCameraToCustomizeAvatar()
gAgent.sendAnimationRequest(ANIM_AGENT_CUSTOMIZE, ANIM_REQUEST_START); gAgent.sendAnimationRequest(ANIM_AGENT_CUSTOMIZE, ANIM_REQUEST_START);
gAgent.setCustomAnim(TRUE); gAgent.setCustomAnim(TRUE);
gAgentAvatarp->startMotion(ANIM_AGENT_CUSTOMIZE); gAgentAvatarp->startMotion(ANIM_AGENT_CUSTOMIZE);
}
LLMotion* turn_motion = gAgentAvatarp->findMotion(ANIM_AGENT_CUSTOMIZE); LLMotion* turn_motion = gAgentAvatarp->findMotion(ANIM_AGENT_CUSTOMIZE);
if (turn_motion) if (turn_motion)
@@ -2521,6 +2520,7 @@ void LLAgentCamera::changeCameraToCustomizeAvatar()
setAnimationDuration(turn_motion->getDuration() + CUSTOMIZE_AVATAR_CAMERA_ANIM_SLOP); setAnimationDuration(turn_motion->getDuration() + CUSTOMIZE_AVATAR_CAMERA_ANIM_SLOP);
} }
} }
}
// <edit> // <edit>
if(!gSavedSettings.getBOOL("AppearanceCameraMovement")) if(!gSavedSettings.getBOOL("AppearanceCameraMovement"))
{ {

View File

@@ -244,6 +244,9 @@ void LLExperienceLog::eraseExpired()
bool LLExperienceLog::isExpired(const std::string& date) bool LLExperienceLog::isExpired(const std::string& date)
{ {
if (date.empty())
return true;
S32 month, day, year = 0; S32 month, day, year = 0;
S32 matched = sscanf(date.c_str(), "%d-%d-%d", &year, &month, &day); S32 matched = sscanf(date.c_str(), "%d-%d-%d", &year, &month, &day);
if (matched != 3) return false; if (matched != 3) return false;

View File

@@ -515,7 +515,7 @@ void LLFloaterWorldMap::draw()
} }
else else
{ {
if (mCompletingRegionName != "") if (!mCompletingRegionName.empty())
{ {
F64 seconds = LLTimer::getElapsedSeconds(); F64 seconds = LLTimer::getElapsedSeconds();
double value = fmod(seconds, 2); double value = fmod(seconds, 2);
@@ -1097,7 +1097,7 @@ void LLFloaterWorldMap::clearLocationSelection(BOOL clear_ui)
} }
//Singu Note: Don't do this. It basically 'eats' the first click onto void space if the previous tracked target was a valid sim. //Singu Note: Don't do this. It basically 'eats' the first click onto void space if the previous tracked target was a valid sim.
//LLWorldMap::getInstance()->cancelTracking(); //LLWorldMap::getInstance()->cancelTracking();
mCompletingRegionName = ""; mCompletingRegionName.clear();
} }
@@ -1648,7 +1648,7 @@ void LLFloaterWorldMap::flyToAvatar()
void LLFloaterWorldMap::updateSims(bool found_null_sim) void LLFloaterWorldMap::updateSims(bool found_null_sim)
{ {
if (mCompletingRegionName == "") if (mCompletingRegionName.empty())
{ {
return; return;
} }
@@ -1663,13 +1663,13 @@ void LLFloaterWorldMap::updateSims(bool found_null_sim)
std::vector<std::pair <U64, LLSimInfo*> > sim_info_vec(LLWorldMap::getInstance()->getRegionMap().begin(), LLWorldMap::getInstance()->getRegionMap().end()); std::vector<std::pair <U64, LLSimInfo*> > sim_info_vec(LLWorldMap::getInstance()->getRegionMap().begin(), LLWorldMap::getInstance()->getRegionMap().end());
std::sort(sim_info_vec.begin(), sim_info_vec.end(), SortRegionNames()); std::sort(sim_info_vec.begin(), sim_info_vec.end(), SortRegionNames());
for (std::vector<std::pair <U64, LLSimInfo*> >::const_iterator it = sim_info_vec.begin(); it != sim_info_vec.end(); ++it) for (const auto& sim_info_pair : sim_info_vec)
{ {
LLSimInfo* info = it->second; LLSimInfo* info = sim_info_pair.second;
std::string sim_name_lower = info->getName(); std::string sim_name_lower = info->getName();
LLStringUtil::toLower(sim_name_lower); LLStringUtil::toLower(sim_name_lower);
if (sim_name_lower.substr(0, mCompletingRegionName) != std::string::npos) if (sim_name_lower.find(mCompletingRegionName) != std::string::npos)
{ {
if (sim_name_lower == mCompletingRegionName) if (sim_name_lower == mCompletingRegionName)
{ {
@@ -1687,7 +1687,7 @@ void LLFloaterWorldMap::updateSims(bool found_null_sim)
if (found_null_sim || match.isDefined()) if (found_null_sim || match.isDefined())
{ {
mCompletingRegionName = ""; mCompletingRegionName.clear();
} }
if (num_results > 0) if (num_results > 0)
@@ -1727,10 +1727,9 @@ void LLFloaterWorldMap::onCommitSearchResult()
} }
LLStringUtil::toLower(sim_name); LLStringUtil::toLower(sim_name);
std::map<U64, LLSimInfo*>::const_iterator it; for (auto map_pair : LLWorldMap::getInstance()->getRegionMap())
for (it = LLWorldMap::getInstance()->getRegionMap().begin(); it != LLWorldMap::getInstance()->getRegionMap().end(); ++it)
{ {
LLSimInfo* info = it->second; LLSimInfo* info = map_pair.second;
if (info->isName(sim_name)) if (info->isName(sim_name))
{ {

View File

@@ -1913,7 +1913,7 @@ S32 LLMeshRepository::getActualMeshLOD(LLSD& header, S32 lod)
{ {
lod = llclamp(lod, 0, 3); lod = llclamp(lod, 0, 3);
S32 version = header["version"]; S32 version = header["version"].asInteger();
if (header.has("404") || version > MAX_MESH_VERSION) if (header.has("404") || version > MAX_MESH_VERSION)
{ {

View File

@@ -66,7 +66,8 @@
multi_select="true" multi_select="true"
draw_heading="true" draw_heading="true"
column_padding="0" column_padding="0"
search_column="0"> search_column="0"
sort_column="0">
<scroll_list.columns <scroll_list.columns
name="region_label" name="region_label"
label="Label" label="Label"