From c659c65d02d4d92b614ccdf2e2a4a0dcf859a8cd Mon Sep 17 00:00:00 2001 From: Jacek Antonelli Date: Fri, 15 Aug 2008 23:44:49 -0500 Subject: Second Life viewer sources 1.13.3.2 --- .../indra/newview/English.lproj/InfoPlist.strings | 4 +- linden/indra/newview/Info-SecondLife.plist | 2 +- linden/indra/newview/llfloateravatarinfo.cpp | 6 +- linden/indra/newview/llfloaterland.cpp | 6 +- linden/indra/newview/llfloaterproperties.cpp | 1 + linden/indra/newview/llgivemoney.cpp | 4 +- linden/indra/newview/llhudeffect.cpp | 1 + linden/indra/newview/llhudmanager.cpp | 10 ++- linden/indra/newview/llpanelavatar.cpp | 81 +++++++++------------- linden/indra/newview/llpanelavatar.h | 3 +- linden/indra/newview/llpaneldirbrowser.cpp | 48 +++---------- linden/indra/newview/llpaneldirpeople.cpp | 5 -- linden/indra/newview/llprefsim.cpp | 39 +++++------ linden/indra/newview/llviewermenu.cpp | 48 ++++++------- linden/indra/newview/llviewermessage.cpp | 2 +- linden/indra/newview/releasenotes.txt | 12 ++++ linden/indra/newview/res/newViewRes.rc | 8 +-- .../newview/skins/xui/en-us/floater_directory.xml | 10 +-- .../indra/newview/skins/xui/en-us/panel_avatar.xml | 16 +---- .../skins/xui/en-us/panel_preferences_im.xml | 6 +- 20 files changed, 130 insertions(+), 182 deletions(-) (limited to 'linden/indra/newview') diff --git a/linden/indra/newview/English.lproj/InfoPlist.strings b/linden/indra/newview/English.lproj/InfoPlist.strings index 2f68a02..6ef64e4 100644 --- a/linden/indra/newview/English.lproj/InfoPlist.strings +++ b/linden/indra/newview/English.lproj/InfoPlist.strings @@ -1,5 +1,5 @@ /* Localized versions of Info.plist keys */ CFBundleName = "Second Life"; -CFBundleShortVersionString = "Second Life version 1.13.2.15"; -CFBundleGetInfoString = "Second Life version 1.13.2.15, Copyright 2004-2006 Linden Research, Inc."; +CFBundleShortVersionString = "Second Life version 1.13.3.2"; +CFBundleGetInfoString = "Second Life version 1.13.3.2, Copyright 2004-2006 Linden Research, Inc."; diff --git a/linden/indra/newview/Info-SecondLife.plist b/linden/indra/newview/Info-SecondLife.plist index 3e6c65e..6e1de8b 100644 --- a/linden/indra/newview/Info-SecondLife.plist +++ b/linden/indra/newview/Info-SecondLife.plist @@ -32,7 +32,7 @@ CFBundleVersion - 1.13.2.15 + 1.13.3.2 CSResourcesFileMapped diff --git a/linden/indra/newview/llfloateravatarinfo.cpp b/linden/indra/newview/llfloateravatarinfo.cpp index a429cc2..959967a 100644 --- a/linden/indra/newview/llfloateravatarinfo.cpp +++ b/linden/indra/newview/llfloateravatarinfo.cpp @@ -121,7 +121,7 @@ BOOL LLFloaterAvatarInfo::postBuild() LLFloaterAvatarInfo::LLFloaterAvatarInfo(const std::string& name, const LLRect &rect, const LLUUID &avatar_id) : LLPreview(name, rect, FLOATER_TITLE, LLUUID::null, LLUUID::null), mAvatarID( avatar_id ), - mSuggestedOnlineStatus(ONLINE_STATUS_UNKNOWN) + mSuggestedOnlineStatus(ONLINE_STATUS_NO) { mAutoFocus = TRUE; @@ -182,7 +182,7 @@ void LLFloaterAvatarInfo::showFromObject(const LLUUID &avatar_id, std::string ta floater = new LLFloaterAvatarInfo("avatarinfo", FAI_RECT, avatar_id); floater->center(); - floater->mPanelAvatarp->setAvatarID(avatar_id, "", ONLINE_STATUS_UNKNOWN); + floater->mPanelAvatarp->setAvatarID(avatar_id, "", ONLINE_STATUS_NO); } @@ -210,7 +210,7 @@ void LLFloaterAvatarInfo::showFromDirectory(const LLUUID &avatar_id) floater = new LLFloaterAvatarInfo("avatarinfo", FAI_RECT, avatar_id); floater->center(); - floater->mPanelAvatarp->setAvatarID(avatar_id, "", ONLINE_STATUS_UNKNOWN); + floater->mPanelAvatarp->setAvatarID(avatar_id, "", ONLINE_STATUS_NO); floater->open(); } if(floater) diff --git a/linden/indra/newview/llfloaterland.cpp b/linden/indra/newview/llfloaterland.cpp index 22686fb..f19baa9 100644 --- a/linden/indra/newview/llfloaterland.cpp +++ b/linden/indra/newview/llfloaterland.cpp @@ -1018,8 +1018,8 @@ void LLPanelLandGeneral::onCommitAny(LLUICtrl *ctrl, void *userdata) } // Extract data from UI - std::string name = panelp->mEditName->getText(); - std::string desc = panelp->mEditDesc->getText(); + std::string name = panelp->mEditName->getText(); + std::string desc = panelp->mEditDesc->getText(); // Valid data from UI @@ -1123,7 +1123,7 @@ BOOL LLPanelLandObjects::postBuild() mCleanOtherObjectsTime = LLUICtrlFactory::getLineEditorByName(this, "clean other time"); mCleanOtherObjectsTime->setFocusLostCallback(onLostFocus); - childSetPrevalidate("clean other time", LLLineEditor::prevalidatePrintableNotPipe); + childSetPrevalidate("clean other time", LLLineEditor::prevalidateNonNegativeS32); childSetUserData("clean other time", this); mOwnerListText = LLUICtrlFactory::getTextBoxByName(this, "Object Owners:"); diff --git a/linden/indra/newview/llfloaterproperties.cpp b/linden/indra/newview/llfloaterproperties.cpp index abae955..8be2ce5 100644 --- a/linden/indra/newview/llfloaterproperties.cpp +++ b/linden/indra/newview/llfloaterproperties.cpp @@ -164,6 +164,7 @@ LLFloaterProperties::LLFloaterProperties(const std::string& name, const LLRect& childSetPrevalidate("LabelItemName",&LLLineEditor::prevalidatePrintableNotPipe); childSetCommitCallback("LabelItemName",onCommitName,this); childSetPrevalidate("LabelItemDesc",&LLLineEditor::prevalidatePrintableNotPipe); + childSetCommitCallback("LabelItemDesc", onCommitDescription, this); // Creator information childSetAction("BtnCreator",onClickCreator,this); // owner information diff --git a/linden/indra/newview/llgivemoney.cpp b/linden/indra/newview/llgivemoney.cpp index ce8cc06..d3c7598 100644 --- a/linden/indra/newview/llgivemoney.cpp +++ b/linden/indra/newview/llgivemoney.cpp @@ -153,7 +153,7 @@ LLFloaterPay::LLFloaterPay(const std::string& name, childSetKeystrokeCallback("amount", &LLFloaterPay::onKeystroke, this); childSetText("amount", last_amount); - childSetPrevalidate("desc", LLLineEditor::prevalidatePositiveS32); + childSetPrevalidate("amount", LLLineEditor::prevalidatePositiveS32); info = new LLGiveMoneyInfo(this, 0); mCallbackData.push_back(info); @@ -344,7 +344,7 @@ void LLFloaterPay::payDirectly(money_callback callback, { LLFloaterPay *floater = new LLFloaterPay("Give Money", callback, target_id, FALSE); if (!floater) return; - + floater->childSetVisible("amount", TRUE); floater->childSetVisible("pay btn", TRUE); floater->childSetVisible("amount text", TRUE); diff --git a/linden/indra/newview/llhudeffect.cpp b/linden/indra/newview/llhudeffect.cpp index 6343dc3..090895e 100644 --- a/linden/indra/newview/llhudeffect.cpp +++ b/linden/indra/newview/llhudeffect.cpp @@ -57,6 +57,7 @@ LLHUDEffect::~LLHUDEffect() void LLHUDEffect::packData(LLMessageSystem *mesgsys) { mesgsys->addUUIDFast(_PREHASH_ID, mID); + mesgsys->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); mesgsys->addU8Fast(_PREHASH_Type, mType); mesgsys->addF32Fast(_PREHASH_Duration, mDuration); mesgsys->addBinaryData(_PREHASH_Color, mColor.mV, 4); diff --git a/linden/indra/newview/llhudmanager.cpp b/linden/indra/newview/llhudmanager.cpp index 2afdac0..bb1c2da 100644 --- a/linden/indra/newview/llhudmanager.cpp +++ b/linden/indra/newview/llhudmanager.cpp @@ -195,9 +195,13 @@ void LLHUDManager::sendEffects() } if (hep->getNeedsSendToSim() && hep->getOriginatedHere()) { - gMessageSystem->newMessageFast(_PREHASH_ViewerEffect); - gMessageSystem->nextBlockFast(_PREHASH_Effect); - hep->packData(gMessageSystem); + LLMessageSystem* msg = gMessageSystem; + msg->newMessageFast(_PREHASH_ViewerEffect); + msg->nextBlockFast(_PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); + msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); + msg->nextBlockFast(_PREHASH_Effect); + hep->packData(msg); hep->setNeedsSendToSim(FALSE); gAgent.sendMessage(); } diff --git a/linden/indra/newview/llpanelavatar.cpp b/linden/indra/newview/llpanelavatar.cpp index 8ba33a9..c7019e0 100644 --- a/linden/indra/newview/llpanelavatar.cpp +++ b/linden/indra/newview/llpanelavatar.cpp @@ -419,8 +419,11 @@ BOOL LLPanelAvatarSecondLife::postBuild(void) childSetVisible("allow_publish",LLPanelAvatar::sAllowFirstLife); childSetVisible("?",LLPanelAvatar::sAllowFirstLife); - childSetVisible("online_unknown",TRUE); childSetVisible("online_yes",FALSE); + + // These are cruft but may still exist in some xml files + // TODO: remove the following 2 lines once translators grab these changes + childSetVisible("online_unknown",FALSE); childSetVisible("online_no",FALSE); childSetAction("Show on Map", LLPanelAvatar::onClickTrack, mPanelAvatar); @@ -1298,6 +1301,19 @@ void LLPanelAvatar::setAvatar(LLViewerObject *avatarp) setAvatarID(avatarp->getID(), name, ONLINE_STATUS_YES); } +void LLPanelAvatar::setOnlineStatus(EOnlineStatus online_status) +{ + // Online status NO could be because they are hidden + // If they are a friend, we may know the truth! + if ((ONLINE_STATUS_YES != online_status) + && mIsFriend + && (LLAvatarTracker::instance().isBuddyOnline( mAvatarID ))) + { + online_status = ONLINE_STATUS_YES; + } + + mPanelSecondLife->childSetVisible("online_yes", (online_status == ONLINE_STATUS_YES)); +} void LLPanelAvatar::setAvatarID(const LLUUID &avatar_id, const LLString &name, EOnlineStatus online_status) @@ -1314,50 +1330,8 @@ void LLPanelAvatar::setAvatarID(const LLUUID &avatar_id, const LLString &name, // Determine if we have their calling card. mIsFriend = is_agent_friend(mAvatarID); - if (ONLINE_STATUS_UNKNOWN == online_status) - { - // Determine if we know that they are online. If we can see them, - // we know they're online. Likewise, if we have a calling card, - // we know. Otherwise we don't. - LLViewerObject* object = gObjectList.findObject( mAvatarID ); - if (object && !object->isDead()) - { - online_status = ONLINE_STATUS_YES; - } - else if (mIsFriend) - { - if (LLAvatarTracker::instance().isBuddyOnline( mAvatarID )) - { - online_status = ONLINE_STATUS_YES; - } - else - { - online_status = ONLINE_STATUS_NO; - } - } - else - { - // Don't actually know if they are online. - } - } - - mPanelSecondLife->childSetVisible("online_unknown",FALSE); - mPanelSecondLife->childSetVisible("online_yes",FALSE); - mPanelSecondLife->childSetVisible("online_no",FALSE); - - switch(online_status) - { - case ONLINE_STATUS_YES: - mPanelSecondLife->childSetVisible("online_yes",TRUE); - break; - case ONLINE_STATUS_NO: - mPanelSecondLife->childSetVisible("online_no",TRUE); - break; - case ONLINE_STATUS_UNKNOWN: - default: - mPanelSecondLife->childSetVisible("online_unknown",TRUE); - break; - } + // setOnlineStatus uses mIsFriend + setOnlineStatus(online_status); BOOL own_avatar = (mAvatarID == gAgent.getID() ); @@ -1755,8 +1729,11 @@ void LLPanelAvatar::processAvatarPropertiesReply(LLMessageSystem *msg, void**) //BOOL mature = FALSE; BOOL identified = FALSE; BOOL transacted = FALSE; + BOOL online = FALSE; char profile_url[DB_USER_PROFILE_URL_BUF_SIZE]; + U32 flags = 0x0; + //llinfos << "properties packet size " << msg->getReceiveSize() << llendl; msg->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id); @@ -1776,7 +1753,6 @@ void LLPanelAvatar::processAvatarPropertiesReply(LLMessageSystem *msg, void**) { self->childSetEnabled("Rate...",TRUE); } - lldebugs << "!!!!!!!!!!!!!!!!!!!!!!Enabling drop target" << llendl; self->childSetEnabled("drop target",TRUE); self->mHaveProperties = TRUE; @@ -1788,9 +1764,17 @@ void LLPanelAvatar::processAvatarPropertiesReply(LLMessageSystem *msg, void**) msg->getStringFast(_PREHASH_PropertiesData, _PREHASH_AboutText, DB_USER_ABOUT_BUF_SIZE, about_text ); msg->getStringFast(_PREHASH_PropertiesData, _PREHASH_FLAboutText, DB_USER_FL_ABOUT_BUF_SIZE, fl_about_text ); msg->getStringFast(_PREHASH_PropertiesData, _PREHASH_BornOn, DB_BORN_BUF_SIZE, born_on); - msg->getBOOLFast(_PREHASH_PropertiesData, _PREHASH_Identified, identified); - msg->getBOOLFast(_PREHASH_PropertiesData, _PREHASH_Transacted, transacted); msg->getString("PropertiesData","ProfileURL", DB_USER_PROFILE_URL_BUF_SIZE, profile_url); + msg->getU32Fast(_PREHASH_PropertiesData, _PREHASH_Flags, flags); + + identified = (flags & AVATAR_IDENTIFIED); + transacted = (flags & AVATAR_TRANSACTED); + allow_publish = (flags & AVATAR_ALLOW_PUBLISH); + online = (flags & AVATAR_ONLINE); + + EOnlineStatus online_status = (online) ? ONLINE_STATUS_YES : ONLINE_STATUS_NO; + + self->setOnlineStatus(online_status); self->mPanelWeb->setWebURL(std::string(profile_url)); U8 caption_index = 0; @@ -1868,7 +1852,6 @@ void LLPanelAvatar::processAvatarPropertiesReply(LLMessageSystem *msg, void**) { image_ctrl->setImageAssetID(fl_image_id); } - msg->getBOOL("PropertiesData", "AllowPublish", allow_publish); self->mPanelSecondLife->childSetValue("allow_publish", allow_publish); diff --git a/linden/indra/newview/llpanelavatar.h b/linden/indra/newview/llpanelavatar.h index ab08ffb..81cfe02 100644 --- a/linden/indra/newview/llpanelavatar.h +++ b/linden/indra/newview/llpanelavatar.h @@ -55,7 +55,6 @@ class LLWebBrowserCtrl; enum EOnlineStatus { - ONLINE_STATUS_UNKNOWN = -1, ONLINE_STATUS_NO = 0, ONLINE_STATUS_YES = 1 }; @@ -262,6 +261,8 @@ public: // Pass one of the ONLINE_STATUS_foo constants above. void setAvatarID(const LLUUID &avatar_id, const LLString &name, EOnlineStatus online_status); + void setOnlineStatus(EOnlineStatus online_status); + const LLUUID& getAvatarID() const { return mAvatarID; } void disableRate(); diff --git a/linden/indra/newview/llpaneldirbrowser.cpp b/linden/indra/newview/llpaneldirbrowser.cpp index a7a3895..f701bf4 100644 --- a/linden/indra/newview/llpaneldirbrowser.cpp +++ b/linden/indra/newview/llpaneldirbrowser.cpp @@ -316,14 +316,8 @@ void LLPanelDirBrowser::onCommitList(LLUICtrl* ctrl, void* data) switch(type) { + // These are both people searches. Let the panel decide if they are online or offline. case ONLINE_CODE: - if (self->mFloaterDirectory && self->mFloaterDirectory->mPanelAvatarp) - { - self->mFloaterDirectory->mPanelAvatarp->setVisible(TRUE); - self->mFloaterDirectory->mPanelAvatarp->setAvatarID(id, name, ONLINE_STATUS_YES); - self->mFloaterDirectory->mPanelAvatarp->disableRate(); - } - break; case OFFLINE_CODE: if (self->mFloaterDirectory && self->mFloaterDirectory->mPanelAvatarp) { @@ -409,7 +403,6 @@ void LLPanelDirBrowser::processDirPeopleReply(LLMessageSystem *msg, void**) char first_name[DB_FIRST_NAME_BUF_SIZE]; char last_name[DB_LAST_NAME_BUF_SIZE]; LLUUID agent_id; - U8 online; msg->getUUIDFast(_PREHASH_QueryData,_PREHASH_QueryID, query_id); @@ -445,7 +438,7 @@ void LLPanelDirBrowser::processDirPeopleReply(LLMessageSystem *msg, void**) msg->getStringFast(_PREHASH_QueryReplies,_PREHASH_FirstName, DB_FIRST_NAME_BUF_SIZE, first_name, i); msg->getStringFast(_PREHASH_QueryReplies,_PREHASH_LastName, DB_LAST_NAME_BUF_SIZE, last_name, i); msg->getUUIDFast( _PREHASH_QueryReplies,_PREHASH_AgentID, agent_id, i); - msg->getU8Fast( _PREHASH_QueryReplies,_PREHASH_Online, online, i); + // msg->getU8Fast( _PREHASH_QueryReplies,_PREHASH_Online, online, i); // unused // msg->getStringFast(_PREHASH_QueryReplies,_PREHASH_Group, DB_GROUP_NAME_BUF_SIZE, group, i); // msg->getS32Fast( _PREHASH_QueryReplies,_PREHASH_Reputation, reputation, i); @@ -461,24 +454,14 @@ void LLPanelDirBrowser::processDirPeopleReply(LLMessageSystem *msg, void**) row["id"] = agent_id; LLUUID image_id; - if (online) - { - image_id.set( gViewerArt.getString("icon_avatar_online.tga") ); - row["columns"][0]["column"] = "icon"; - row["columns"][0]["type"] = "icon"; - row["columns"][0]["value"] = image_id; - - content["type"] = ONLINE_CODE; - } - else - { - image_id.set( gViewerArt.getString("icon_avatar_offline.tga") ); - row["columns"][0]["column"] = "icon"; - row["columns"][0]["type"] = "icon"; - row["columns"][0]["value"] = image_id; + // We don't show online status in the finder anymore, + // so just use the 'offline' icon as the generic 'person' icon + image_id.set( gViewerArt.getString("icon_avatar_offline.tga") ); + row["columns"][0]["column"] = "icon"; + row["columns"][0]["type"] = "icon"; + row["columns"][0]["value"] = image_id; - content["type"] = OFFLINE_CODE; - } + content["type"] = OFFLINE_CODE; LLString fullname = LLString(first_name) + " " + LLString(last_name); row["columns"][1]["column"] = "name"; @@ -487,19 +470,6 @@ void LLPanelDirBrowser::processDirPeopleReply(LLMessageSystem *msg, void**) content["name"] = fullname; - if (online) - { - row["columns"][2]["column"] = "online"; - row["columns"][2]["value"] = "yes"; - row["columns"][2]["font"] = "SANSSERIFSMALL"; - } - else - { - row["columns"][2]["column"] = "online"; - row["columns"][2]["value"] = "no"; - row["columns"][2]["font"] = "SANSSERIFSMALL"; - } - list->addElement(row); LLString id_str = agent_id.getString(); diff --git a/linden/indra/newview/llpaneldirpeople.cpp b/linden/indra/newview/llpaneldirpeople.cpp index 87b3582..1fe1570 100644 --- a/linden/indra/newview/llpaneldirpeople.cpp +++ b/linden/indra/newview/llpaneldirpeople.cpp @@ -71,11 +71,6 @@ void LLPanelDirPeople::performQuery() setupNewSearch(); U32 scope = DFQ_PEOPLE; - if (childGetValue("online check").asBoolean()) - { - llinfos << "Online only people search." << llendl; - scope |= DFQ_ONLINE; - } // send the message sendDirFindQuery( diff --git a/linden/indra/newview/llprefsim.cpp b/linden/indra/newview/llprefsim.cpp index 12ca0b1..383fe76 100644 --- a/linden/indra/newview/llprefsim.cpp +++ b/linden/indra/newview/llprefsim.cpp @@ -34,7 +34,7 @@ #include "llcheckboxctrl.h" #include "llstring.h" #include "lltexteditor.h" - +#include "llavatarconstants.h" #include "llagent.h" #include "llviewercontrol.h" #include "llviewernetwork.h" @@ -42,9 +42,6 @@ #include "lldirpicker.h" -static const std::string VISIBILITY_DEFAULT("default"); -static const std::string VISIBILITY_HIDDEN("hidden"); - class LLPrefsIMImpl : public LLPanel { public: @@ -77,7 +74,7 @@ protected: bool mOriginalIMViaEmail; // online status info - bool mOriginalShowOnline; + bool mOriginalHideOnlineStatus; std::string mDirectoryVisibility; }; @@ -112,7 +109,7 @@ void LLPrefsIMImpl::cancel() BOOL LLPrefsIMImpl::postBuild() { - requires("directory_visibility"); + requires("online_visibility"); requires("send_im_to_email"); if (!checkRequirements()) { @@ -121,11 +118,11 @@ BOOL LLPrefsIMImpl::postBuild() mGotPersonalInfo = false; mOriginalIMViaEmail = false; - mOriginalShowOnline = false; + mOriginalHideOnlineStatus = true; childSetLabelArg("send_im_to_email", "[EMAIL]", childGetText("log_in_to_change")); // Don't enable this until we get personal data - childDisable("directory_visibility"); + childDisable("online_visibility"); childDisable("send_im_to_email"); childDisable("log_instant_messages"); childDisable("log_chat"); @@ -189,10 +186,10 @@ void LLPrefsIMImpl::apply() LLFile::mkdir(gDirUtilp->getPerAccountChatLogsDir().c_str()); bool new_im_via_email = childGetValue("send_im_to_email").asBoolean(); - bool new_show_online = childGetValue("directory_visibility").asBoolean(); + bool new_hide_online = childGetValue("online_visibility").asBoolean(); if((new_im_via_email != mOriginalIMViaEmail) - ||(new_show_online != mOriginalShowOnline)) + ||(new_hide_online != mOriginalHideOnlineStatus)) { LLMessageSystem* msg = gMessageSystem; msg->newMessageFast(_PREHASH_UpdateUserInfo); @@ -206,12 +203,12 @@ void LLPrefsIMImpl::apply() // can only select between 2 values, we represent it as a // checkbox. This breaks down a little bit for liaisons, but // works out in the end. - if(new_show_online != mOriginalShowOnline) + if(new_hide_online != mOriginalHideOnlineStatus) { - if(new_show_online) mDirectoryVisibility = VISIBILITY_DEFAULT; - else mDirectoryVisibility = VISIBILITY_HIDDEN; + if(new_hide_online) mDirectoryVisibility = VISIBILITY_HIDDEN; + else mDirectoryVisibility = VISIBILITY_DEFAULT; //Update showonline value, otherwise multiple applys won't work - mOriginalShowOnline = new_show_online; + mOriginalHideOnlineStatus = new_hide_online; } msg->addString("DirectoryVisibility", mDirectoryVisibility); gAgent.sendReliableMessage(); @@ -229,20 +226,20 @@ void LLPrefsIMImpl::setPersonalInfo( mDirectoryVisibility = visibility; if(visibility == VISIBILITY_DEFAULT) { - mOriginalShowOnline = true; - childEnable("directory_visibility"); + mOriginalHideOnlineStatus = false; + childEnable("online_visibility"); } else if(visibility == VISIBILITY_HIDDEN) { - mOriginalShowOnline = false; - childEnable("directory_visibility"); + mOriginalHideOnlineStatus = true; + childEnable("online_visibility"); } else { - mOriginalShowOnline = false; + mOriginalHideOnlineStatus = true; } - childSetValue("directory_visibility", mOriginalShowOnline); - childSetLabelArg("directory_visibility", "[DIR_VIS]", mDirectoryVisibility); + childSetValue("online_visibility", mOriginalHideOnlineStatus); + childSetLabelArg("online_visibility", "[DIR_VIS]", mDirectoryVisibility); childEnable("send_im_to_email"); childSetValue("send_im_to_email", im_via_email); childEnable("log_instant_messages"); diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp index 3e5063e..ab400de 100644 --- a/linden/indra/newview/llviewermenu.cpp +++ b/linden/indra/newview/llviewermenu.cpp @@ -581,21 +581,21 @@ void init_menus() // flash when an item is triggered (the flash occurs in the holder) gViewerWindow->getRootView()->addChild(gMenuHolder); - gMenuHolder->childSetLabelArg("Upload Image", "[COST]", "10"); - gMenuHolder->childSetLabelArg("Upload Sound", "[COST]", "10"); - gMenuHolder->childSetLabelArg("Upload Animation", "[COST]", "10"); - gMenuHolder->childSetLabelArg("Bulk Upload", "[COST]", "10"); + gMenuHolder->childSetLabelArg("Upload Image", "[COST]", "10"); + gMenuHolder->childSetLabelArg("Upload Sound", "[COST]", "10"); + gMenuHolder->childSetLabelArg("Upload Animation", "[COST]", "10"); + gMenuHolder->childSetLabelArg("Bulk Upload", "[COST]", "10"); - gAFKMenu = (LLMenuItemCallGL*)gMenuBarView->getChildByName("Set Away", TRUE); - gBusyMenu = (LLMenuItemCallGL*)gMenuBarView->getChildByName("Set Busy", TRUE); - gAttachSubMenu = gMenuBarView->getChildMenuByName("Attach Object", TRUE); - gDetachSubMenu = gMenuBarView->getChildMenuByName("Detach Object", TRUE); + gAFKMenu = (LLMenuItemCallGL*)gMenuBarView->getChildByName("Set Away", TRUE); + gBusyMenu = (LLMenuItemCallGL*)gMenuBarView->getChildByName("Set Busy", TRUE); + gAttachSubMenu = gMenuBarView->getChildMenuByName("Attach Object", TRUE); + gDetachSubMenu = gMenuBarView->getChildMenuByName("Detach Object", TRUE); - if (gAgent.mAccess < SIM_ACCESS_MATURE) - { - gMenuBarView->getChildByName("Menu Underpants", TRUE)->setVisible(FALSE); - gMenuBarView->getChildByName("Menu Undershirt", TRUE)->setVisible(FALSE); - } + if (gAgent.mAccess < SIM_ACCESS_MATURE) + { + gMenuBarView->getChildByName("Menu Underpants", TRUE)->setVisible(FALSE); + gMenuBarView->getChildByName("Menu Undershirt", TRUE)->setVisible(FALSE); + } // TomY TODO convert these two LLMenuGL*menu; @@ -626,23 +626,23 @@ void init_menus() /// gPieSelf = gUICtrlFactory->buildPieMenu("menu_pie_self.xml", gMenuHolder); - // TomY TODO: what shall we do about these? - gDetachScreenPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Detach HUD", true); - gDetachPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Detach", true); + // TomY TODO: what shall we do about these? + gDetachScreenPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Detach HUD", true); + gDetachPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Detach", true); - if (gAgent.mAccess < SIM_ACCESS_MATURE) - { - gMenuHolder->getChildByName("Self Underpants", TRUE)->setVisible(FALSE); - gMenuHolder->getChildByName("Self Undershirt", TRUE)->setVisible(FALSE); - } + if (gAgent.mAccess < SIM_ACCESS_MATURE) + { + gMenuHolder->getChildByName("Self Underpants", TRUE)->setVisible(FALSE); + gMenuHolder->getChildByName("Self Undershirt", TRUE)->setVisible(FALSE); + } gPieAvatar = gUICtrlFactory->buildPieMenu("menu_pie_avatar.xml", gMenuHolder); gPieObject = gUICtrlFactory->buildPieMenu("menu_pie_object.xml", gMenuHolder); - gAttachScreenPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Attach HUD", true); - gAttachPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Attach", true); - gPieRate = (LLPieMenu*)gMenuHolder->getChildByName("Rate Menu", true); + gAttachScreenPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Attach HUD", true); + gAttachPieMenu = (LLPieMenu*)gMenuHolder->getChildByName("Object Attach", true); + gPieRate = (LLPieMenu*)gMenuHolder->getChildByName("Rate Menu", true); gPieAttachment = gUICtrlFactory->buildPieMenu("menu_pie_attachment.xml", gMenuHolder); diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp index 124ae13..1b91f9d 100644 --- a/linden/indra/newview/llviewermessage.cpp +++ b/linden/indra/newview/llviewermessage.cpp @@ -3906,7 +3906,7 @@ void process_alert_core(const char* buffer, BOOL modal) { //XUI:translate LLString::format_map_t args; - args["[BUFFER]"] = buffer; + args["[ERROR_MESSAGE]"] = buffer; gViewerWindow->alertXml("ErrorMessage", args); } else diff --git a/linden/indra/newview/releasenotes.txt b/linden/indra/newview/releasenotes.txt index 4cce794..01f16b3 100644 --- a/linden/indra/newview/releasenotes.txt +++ b/linden/indra/newview/releasenotes.txt @@ -1,3 +1,15 @@ +Release Notes for Second Life 1.13.3(2) January 30, 2007 +===================================== +Changes: +* It is no longer possible to only search for online residents +* Online status is no longer indicated in the Search -> People results list +** The online status inside the profile shows 'Currently Online' or remains blank +*** Friends can see your Online status if you give permission via the Friends list +*** Anyone can see your Online status if 'Make my online status visible only to my Friends' is unchecked + +Bug fixes: +* Fixed script email across simulators + Release Notes for Second Life 1.13.2(15) January 25, 2007 ===================================== Changes: diff --git a/linden/indra/newview/res/newViewRes.rc b/linden/indra/newview/res/newViewRes.rc index cf7b935..41c2af1 100644 --- a/linden/indra/newview/res/newViewRes.rc +++ b/linden/indra/newview/res/newViewRes.rc @@ -227,8 +227,8 @@ TOOLPIPETTE CURSOR "toolpipette.cur" // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,13,2,15 - PRODUCTVERSION 1,13,2,0 + FILEVERSION 1,13,3,2 + PRODUCTVERSION 1,13,3,2 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -245,12 +245,12 @@ BEGIN BEGIN VALUE "CompanyName", "Linden Lab" VALUE "FileDescription", "Second Life" - VALUE "FileVersion", "1.13.2.15" + VALUE "FileVersion", "1.13.3.57442" VALUE "InternalName", "Second Life" VALUE "LegalCopyright", "Copyright © 2001-2006, Linden Research, Inc." VALUE "OriginalFilename", "SecondLife.exe" VALUE "ProductName", "Second Life" - VALUE "ProductVersion", "1.13.2.0" + VALUE "ProductVersion", "1.13.3.57442" END END BLOCK "VarFileInfo" diff --git a/linden/indra/newview/skins/xui/en-us/floater_directory.xml b/linden/indra/newview/skins/xui/en-us/floater_directory.xml index 8056aa9..8184fdb 100644 --- a/linden/indra/newview/skins/xui/en-us/floater_directory.xml +++ b/linden/indra/newview/skins/xui/en-us/floater_directory.xml @@ -464,12 +464,9 @@ To buy direct, visit the land and click on the place name in the title bar. - + max_length="63" mouse_opaque="true" name="name" width="200" />