diff options
author | Loren Shih <seraph@lindenlab.com> | 2010-01-07 16:20:27 -0500 |
---|---|---|
committer | Loren Shih <seraph@lindenlab.com> | 2010-01-07 16:20:27 -0500 |
commit | 6abd41831a4cae5d757aa44675731d1fd48d64b1 (patch) | |
tree | 6fc9de74e865a8337823b317a87b7c132bca0c7a /indra/newview | |
parent | bb04795eeb222e5396e24e79ac1f77b155bd4622 (diff) | |
parent | 6b8ed2ae6f92d6f9559cbc86699b9ca3197f2e81 (diff) |
automated merge viewer2.0->viewer2.0
Diffstat (limited to 'indra/newview')
57 files changed, 552 insertions, 415 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 61cb93b675..d83959b80e 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -4820,6 +4820,17 @@ <key>Value</key> <integer>0</integer> </map> + <key>MyOutfitsAutofill</key> + <map> + <key>Comment</key> + <string>Always autofill My Outfits from library when empty (else happens just once).</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>0</integer> + </map> <key>NearMeRange</key> <map> <key>Comment</key> diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index d21965568d..29530c9c05 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -911,7 +911,7 @@ void LLAgentWearables::processAgentInitialWearablesUpdate(LLMessageSystem* mesgs // If this is the very first time the user has logged into viewer2+ (from a legacy viewer, or new account) // then auto-populate outfits from the library into the My Outfits folder. - if (LLInventoryModel::getIsFirstTimeInViewer2()) + if (LLInventoryModel::getIsFirstTimeInViewer2() || gSavedSettings.getBOOL("MyOutfitsAutofill")) { gAgentWearables.populateMyOutfitsFolder(); } diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index 25f1accb22..1150d84feb 100644 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -723,14 +723,30 @@ void LLAppearanceManager::updateAppearanceFromCOF() LLDynamicArray<LLFoundData*> found_container; for(S32 i = 0; i < wear_items.count(); ++i) { - found = new LLFoundData(wear_items.get(i)->getLinkedUUID(), // Wear the base item, not the link - wear_items.get(i)->getAssetUUID(), - wear_items.get(i)->getName(), - wear_items.get(i)->getType()); - holder->mFoundList.push_front(found); - found_container.put(found); + LLViewerInventoryItem *item = wear_items.get(i); + LLViewerInventoryItem *linked_item = item ? item->getLinkedItem() : NULL; + if (item && linked_item) + { + found = new LLFoundData(linked_item->getUUID(), + linked_item->getAssetUUID(), + linked_item->getName(), + linked_item->getType()); + holder->mFoundList.push_front(found); + found_container.put(found); + } + else + { + if (!item) + { + llwarns << "attempt to wear a null item " << llendl; + } + else if (!linked_item) + { + llwarns << "attempt to wear a broken link " << item->getName() << llendl; + } + } } - for(S32 i = 0; i < wear_items.count(); ++i) + for(S32 i = 0; i < found_container.count(); ++i) { holder->append = false; found = found_container.get(i); diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp index 21cadda6e3..dac3280575 100644 --- a/indra/newview/llchathistory.cpp +++ b/indra/newview/llchathistory.cpp @@ -593,6 +593,12 @@ void LLChatHistory::appendMessage(const LLChat& chat, const bool use_plain_text_ mEditor->appendText(message, FALSE, style_params); } mEditor->blockUndo(); + + // automatically scroll to end when receiving chat from myself + if (chat.mFromID == gAgentID) + { + mEditor->setCursorAndScrollToEnd(); + } } void LLChatHistory::draw() diff --git a/indra/newview/lldateutil.cpp b/indra/newview/lldateutil.cpp index 10b7935caf..abb2fdeb9a 100644 --- a/indra/newview/lldateutil.cpp +++ b/indra/newview/lldateutil.cpp @@ -44,15 +44,18 @@ static S32 DAYS_PER_MONTH_LEAP[] = static S32 days_from_month(S32 year, S32 month) { + llassert_always(1 <= month); + llassert_always(month <= 12); + if (year % 4 == 0 && year % 100 != 0) { // leap year - return DAYS_PER_MONTH_LEAP[month]; + return DAYS_PER_MONTH_LEAP[month - 1]; } else { - return DAYS_PER_MONTH_NOLEAP[month]; + return DAYS_PER_MONTH_NOLEAP[month - 1]; } } diff --git a/indra/newview/llfloaterabout.cpp b/indra/newview/llfloaterabout.cpp index e80499688e..aa343b2f69 100644 --- a/indra/newview/llfloaterabout.cpp +++ b/indra/newview/llfloaterabout.cpp @@ -167,20 +167,21 @@ BOOL LLFloaterAbout::postBuild() // Now build the various pieces support << getString("AboutHeader", args); - if (info.has("COMPILER")) - { - support << "\n\n" << getString("AboutCompiler", args); - } if (info.has("REGION")) { support << "\n\n" << getString("AboutPosition", args); } support << "\n\n" << getString("AboutSystem", args); + support << "\n"; if (info.has("GRAPHICS_DRIVER_VERSION")) { - support << "\n\n" << getString("AboutDriver", args); + support << "\n" << getString("AboutDriver", args); + } + support << "\n" << getString("AboutLibs", args); + if (info.has("COMPILER")) + { + support << "\n" << getString("AboutCompiler", args); } - support << "\n\n" << getString("AboutLibs", args); if (info.has("PACKETS_IN")) { support << '\n' << getString("AboutTraffic", args); @@ -193,11 +194,11 @@ BOOL LLFloaterAbout::postBuild() support_widget->blockUndo(); // Fix views - support_widget->setCursorPos(0); support_widget->setEnabled(FALSE); + support_widget->startOfDoc(); - credits_widget->setCursorPos(0); credits_widget->setEnabled(FALSE); + credits_widget->startOfDoc(); return TRUE; } diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 11dd48056c..d0716f67b8 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -325,6 +325,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key) mCommitCallbackRegistrar.add("Pref.WindowedMod", boost::bind(&LLFloaterPreference::onCommitWindowedMode, this)); mCommitCallbackRegistrar.add("Pref.UpdateSliderText", boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2)); mCommitCallbackRegistrar.add("Pref.AutoDetectAspect", boost::bind(&LLFloaterPreference::onCommitAutoDetectAspect, this)); + mCommitCallbackRegistrar.add("Pref.ParcelMediaAutoPlayEnable", boost::bind(&LLFloaterPreference::onCommitParcelMediaAutoPlayEnable, this)); mCommitCallbackRegistrar.add("Pref.onSelectAspectRatio", boost::bind(&LLFloaterPreference::onKeystrokeAspectRatio, this)); mCommitCallbackRegistrar.add("Pref.QualityPerformance", boost::bind(&LLFloaterPreference::onChangeQuality, this, _2)); mCommitCallbackRegistrar.add("Pref.applyUIColor", boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2)); @@ -986,6 +987,25 @@ void LLFloaterPreference::onCommitAutoDetectAspect() } } +void LLFloaterPreference::onCommitParcelMediaAutoPlayEnable() +{ + BOOL autoplay = getChild<LLCheckBoxCtrl>("autoplay_enabled")->get(); + + gSavedSettings.setBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING, autoplay); + + lldebugs << "autoplay now = " << int(autoplay) << llendl; + + if (autoplay) + { + // autoplay toggle has gone from FALSE to TRUE; ensure that + // the media system is thus actually turned on too. + gSavedSettings.setBOOL("AudioStreamingVideo", TRUE); + gSavedSettings.setBOOL("AudioStreamingMusic", TRUE); + gSavedSettings.setBOOL("AudioStreamingMedia", TRUE); + llinfos << "autoplay turned on, turned all media subsystems on" << llendl; + } +} + void LLFloaterPreference::refresh() { LLPanel::refresh(); diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 74a53d673c..b2bc34231d 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -132,6 +132,7 @@ public: // void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator); void onCommitAutoDetectAspect(); + void onCommitParcelMediaAutoPlayEnable(); void applyResolution(); void applyUIColor(LLUICtrl* ctrl, const LLSD& param); void getUIColor(LLUICtrl* ctrl, const LLSD& param); diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp index 98f9171237..0781d8ed06 100644 --- a/indra/newview/llfloaterworldmap.cpp +++ b/indra/newview/llfloaterworldmap.cpp @@ -100,8 +100,6 @@ enum EPanDirection // Values in pixels per region static const F32 ZOOM_MAX = 128.f; -static const F32 SIM_COORD_DEFAULT = 128.f; - //--------------------------------------------------------------------------- // Globals //--------------------------------------------------------------------------- @@ -189,7 +187,8 @@ LLFloaterWorldMap::LLFloaterWorldMap(const LLSD& key) mInventory(NULL), mInventoryObserver(NULL), mFriendObserver(NULL), - mCompletingRegionName(""), + mCompletingRegionName(), + mCompletingRegionPos(), mWaitingForTracker(FALSE), mIsClosing(FALSE), mSetToUserPosition(TRUE), @@ -205,7 +204,6 @@ LLFloaterWorldMap::LLFloaterWorldMap(const LLSD& key) mCommitCallbackRegistrar.add("WMap.AvatarCombo", boost::bind(&LLFloaterWorldMap::onAvatarComboCommit, this)); mCommitCallbackRegistrar.add("WMap.Landmark", boost::bind(&LLFloaterWorldMap::onLandmarkComboCommit, this)); mCommitCallbackRegistrar.add("WMap.SearchResult", boost::bind(&LLFloaterWorldMap::onCommitSearchResult, this)); - mCommitCallbackRegistrar.add("WMap.CommitLocation", boost::bind(&LLFloaterWorldMap::onCommitLocation, this)); mCommitCallbackRegistrar.add("WMap.GoHome", boost::bind(&LLFloaterWorldMap::onGoHome, this)); mCommitCallbackRegistrar.add("WMap.Teleport", boost::bind(&LLFloaterWorldMap::onClickTeleportBtn, this)); mCommitCallbackRegistrar.add("WMap.ShowTarget", boost::bind(&LLFloaterWorldMap::onShowTargetBtn, this)); @@ -664,10 +662,6 @@ void LLFloaterWorldMap::updateLocation() S32 agent_y = llround( (F32)fmod( agentPos.mdV[VY], (F64)REGION_WIDTH_METERS ) ); S32 agent_z = llround( (F32)agentPos.mdV[VZ] ); - childSetValue("spin x", LLSD(agent_x) ); - childSetValue("spin y", LLSD(agent_y) ); - childSetValue("spin z", LLSD(agent_z) ); - // Set the current SLURL mSLURL = LLSLURL::buildSLURL(agent_sim_name, agent_x, agent_y, agent_z); } @@ -699,9 +693,6 @@ void LLFloaterWorldMap::updateLocation() F32 region_x = (F32)fmod( pos_global.mdV[VX], (F64)REGION_WIDTH_METERS ); F32 region_y = (F32)fmod( pos_global.mdV[VY], (F64)REGION_WIDTH_METERS ); - childSetValue("spin x", LLSD(region_x) ); - childSetValue("spin y", LLSD(region_y) ); - childSetValue("spin z", LLSD((F32)pos_global.mdV[VZ]) ); // simNameFromPosGlobal can fail, so don't give the user an invalid SLURL if ( gotSimName ) @@ -733,9 +724,11 @@ void LLFloaterWorldMap::trackURL(const std::string& region_name, S32 x_coord, S3 { // fill in UI based on URL gFloaterWorldMap->childSetValue("location", region_name); - childSetValue("spin x", LLSD((F32)x_coord)); - childSetValue("spin y", LLSD((F32)y_coord)); - childSetValue("spin z", LLSD((F32)z_coord)); + + // Save local coords to highlight position after region global + // position is returned. + gFloaterWorldMap->mCompletingRegionPos.set( + (F32)x_coord, (F32)y_coord, (F32)z_coord); // pass sim name to combo box gFloaterWorldMap->mCompletingRegionName = region_name; @@ -899,18 +892,6 @@ void LLFloaterWorldMap::clearLocationSelection(BOOL clear_ui) { list->operateOnAll(LLCtrlListInterface::OP_DELETE); } - if (!childHasKeyboardFocus("spin x")) - { - childSetValue("spin x", SIM_COORD_DEFAULT); - } - if (!childHasKeyboardFocus("spin y")) - { - childSetValue("spin y", SIM_COORD_DEFAULT); - } - if (!childHasKeyboardFocus("spin z")) - { - childSetValue("spin z", 0); - } LLWorldMap::getInstance()->cancelTracking(); mCompletingRegionName = ""; } @@ -1466,21 +1447,6 @@ void LLFloaterWorldMap::updateSims(bool found_null_sim) } } -void LLFloaterWorldMap::onCommitLocation() -{ - LLTracker::ETrackingStatus tracking_status = LLTracker::getTrackingStatus(); - if ( LLTracker::TRACKING_LOCATION == tracking_status) - { - LLVector3d pos_global = LLTracker::getTrackedPositionGlobal(); - F64 local_x = childGetValue("spin x"); - F64 local_y = childGetValue("spin y"); - F64 local_z = childGetValue("spin z"); - pos_global.mdV[VX] += -fmod(pos_global.mdV[VX], 256.0) + local_x; - pos_global.mdV[VY] += -fmod(pos_global.mdV[VY], 256.0) + local_y; - pos_global.mdV[VZ] = local_z; - trackLocation(pos_global); - } -} void LLFloaterWorldMap::onCommitSearchResult() { @@ -1503,12 +1469,19 @@ void LLFloaterWorldMap::onCommitSearchResult() if (info->isName(sim_name)) { LLVector3d pos_global = info->getGlobalOrigin(); - F64 local_x = childGetValue("spin x"); - F64 local_y = childGetValue("spin y"); - F64 local_z = childGetValue("spin z"); - pos_global.mdV[VX] += local_x; - pos_global.mdV[VY] += local_y; - pos_global.mdV[VZ] = local_z; + + const F64 SIM_COORD_DEFAULT = 128.0; + LLVector3 pos_local(SIM_COORD_DEFAULT, SIM_COORD_DEFAULT, 0.0f); + + // Did this value come from a trackURL() request? + if (!mCompletingRegionPos.isExactlyZero()) + { + pos_local = mCompletingRegionPos; + mCompletingRegionPos.clear(); + } + pos_global.mdV[VX] += (F64)pos_local.mV[VX]; + pos_global.mdV[VY] += (F64)pos_local.mV[VY]; + pos_global.mdV[VZ] = (F64)pos_local.mV[VZ]; childSetValue("location", sim_name); trackLocation(pos_global); diff --git a/indra/newview/llfloaterworldmap.h b/indra/newview/llfloaterworldmap.h index 7feebb583d..00f5e788fb 100644 --- a/indra/newview/llfloaterworldmap.h +++ b/indra/newview/llfloaterworldmap.h @@ -148,7 +148,6 @@ protected: void updateSearchEnabled(); void onLocationFocusChanged( LLFocusableElement* ctrl ); void onLocationCommit(); - void onCommitLocation(); void onCommitSearchResult(); void cacheLandmarkPosition(); @@ -170,6 +169,10 @@ private: LLFriendObserver* mFriendObserver; std::string mCompletingRegionName; + // Local position from trackURL() request, used to select final + // position once region lookup complete. + LLVector3 mCompletingRegionPos; + std::string mLastRegionName; BOOL mWaitingForTracker; diff --git a/indra/newview/llhudtext.cpp b/indra/newview/llhudtext.cpp index 0b5da40be4..08cf86df4a 100644 --- a/indra/newview/llhudtext.cpp +++ b/indra/newview/llhudtext.cpp @@ -606,7 +606,7 @@ void LLHUDText::addLine(const LLWString &wstr, const LLColor4& color, const LLFo U32 line_length = 0; do { - S32 segment_length = mFontp->maxDrawableChars(iter->substr(line_length).c_str(), mUseBubble ? HUD_TEXT_MAX_WIDTH : HUD_TEXT_MAX_WIDTH_NO_BUBBLE, wline.length(), TRUE); + S32 segment_length = mFontp->maxDrawableChars(iter->substr(line_length).c_str(), mUseBubble ? HUD_TEXT_MAX_WIDTH : HUD_TEXT_MAX_WIDTH_NO_BUBBLE, wline.length(), LLFontGL::WORD_BOUNDARY_IF_POSSIBLE); mTextSegments.push_back(LLHUDTextSegment(iter->substr(line_length, segment_length), style, color)); line_length += segment_length; } @@ -642,7 +642,7 @@ void LLHUDText::setLabel(const LLWString &wlabel) U32 line_length = 0; do { - S32 segment_length = mFontp->maxDrawableChars(iter->substr(line_length).c_str(), mUseBubble ? HUD_TEXT_MAX_WIDTH : HUD_TEXT_MAX_WIDTH_NO_BUBBLE, wstr.length(), TRUE); + S32 segment_length = mFontp->maxDrawableChars(iter->substr(line_length).c_str(), mUseBubble ? HUD_TEXT_MAX_WIDTH : HUD_TEXT_MAX_WIDTH_NO_BUBBLE, wstr.length(), LLFontGL::WORD_BOUNDARY_IF_POSSIBLE); mLabelSegments.push_back(LLHUDTextSegment(iter->substr(line_length, segment_length), LLFontGL::NORMAL, mColor)); line_length += segment_length; } diff --git a/indra/newview/llinspect.h b/indra/newview/llinspect.h index 731e99534b..a1cb9cd71c 100644 --- a/indra/newview/llinspect.h +++ b/indra/newview/llinspect.h @@ -55,7 +55,7 @@ public: /// Inspectors close themselves when they lose focus /*virtual*/ void onFocusLost(); -private: +protected: LLFrameTimer mCloseTimer; LLFrameTimer mOpenTimer; }; diff --git a/indra/newview/llinspectavatar.cpp b/indra/newview/llinspectavatar.cpp index 7f206cb873..72994a4371 100644 --- a/indra/newview/llinspectavatar.cpp +++ b/indra/newview/llinspectavatar.cpp @@ -93,6 +93,10 @@ public: // Update view based on information from avatar properties processor void processAvatarData(LLAvatarData* data); + // override the inspector mouse leave so timer is only paused if + // gear menu is not open + /* virtual */ void onMouseLeave(S32 x, S32 y, MASK mask); + private: // Make network requests for all the data to display in this view. // Used on construction and if avatar id changes. @@ -259,8 +263,6 @@ BOOL LLInspectAvatar::postBuild(void) } - - // Multiple calls to showInstance("inspect_avatar", foo) will provide different // LLSD for foo, which we will catch here. //virtual @@ -384,6 +386,19 @@ void LLInspectAvatar::processAvatarData(LLAvatarData* data) mPropertiesRequest = NULL; } +// For the avatar inspector, we only want to unpause the fade timer +// if neither the gear menu or self gear menu are open +void LLInspectAvatar::onMouseLeave(S32 x, S32 y, MASK mask) +{ + LLMenuGL* gear_menu = getChild<LLMenuButton>("gear_btn")->getMenu(); + LLMenuGL* gear_menu_self = getChild<LLMenuButton>("gear_self_btn")->getMenu(); + if ( !(gear_menu && gear_menu->getVisible()) && + !(gear_menu_self && gear_menu_self->getVisible())) + { + mOpenTimer.unpause(); + } +} + void LLInspectAvatar::updateModeratorPanel() { bool enable_moderator_panel = false; diff --git a/indra/newview/llinspectobject.cpp b/indra/newview/llinspectobject.cpp index cb35a287e9..dd313c528d 100644 --- a/indra/newview/llinspectobject.cpp +++ b/indra/newview/llinspectobject.cpp @@ -41,6 +41,7 @@ #include "llslurl.h" #include "llviewermenu.h" // handle_object_touch(), handle_buy() #include "llviewermedia.h" +#include "llviewermediafocus.h" #include "llviewerobjectlist.h" // to select the requested object // Linden libraries @@ -82,6 +83,10 @@ public: // Release the selection and do other cleanup /*virtual*/ void onClose(bool app_quitting); + // override the inspector mouse leave so timer is only paused if + // gear menu is not open + /* virtual */ void onMouseLeave(S32 x, S32 y, MASK mask); + private: // Refresh displayed data with information from selection manager void update(); @@ -181,7 +186,6 @@ BOOL LLInspectObject::postBuild(void) return TRUE; } - // Multiple calls to showInstance("inspect_avatar", foo) will provide different // LLSD for foo, which we will catch here. //virtual @@ -214,6 +218,10 @@ void LLInspectObject::onOpen(const LLSD& data) LLViewerObject* obj = gObjectList.findObject( mObjectID ); if (obj) { + // Media focus and this code fight over the select manager. + // Make sure any media is unfocused before changing the selection here. + LLViewerMediaFocus::getInstance()->clearFocus(); + LLSelectMgr::instance().deselectAll(); mObjectSelection = LLSelectMgr::instance().selectObjectAndFamily(obj); @@ -562,6 +570,16 @@ void LLInspectObject::updateSecureBrowsing() getChild<LLUICtrl>("secure_browsing")->setVisible(is_secure_browsing); } +// For the object inspector, only unpause the fade timer +// if the gear menu is not open +void LLInspectObject::onMouseLeave(S32 x, S32 y, MASK mask) +{ + LLMenuGL* gear_menu = getChild<LLMenuButton>("gear_btn")->getMenu(); + if ( !(gear_menu && gear_menu->getVisible())) + { + mOpenTimer.unpause(); + } +} void LLInspectObject::onClickBuy() { diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index d70221b22a..4c868baa92 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -2614,6 +2614,13 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { mItems.push_back(std::string("Rename")); mItems.push_back(std::string("Delete")); + + // EXT-4030: disallow deletion of currently worn outfit + const LLViewerInventoryItem *base_outfit_link = LLAppearanceManager::instance().getBaseOutfitLink(); + if (base_outfit_link && (cat == base_outfit_link->getLinkedCategory())) + { + mDisabledItems.push_back(std::string("Delete")); + } } } diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 164e72e621..b363e917d7 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -433,11 +433,10 @@ void LLInventoryPanel::initializeViews() { mStartFolderID = (preferred_type != LLFolderType::FT_NONE ? gInventory.findCategoryUUIDForType(preferred_type) : LLUUID::null); } - llinfos << this << " Generating views for start folder " << mStartFolderString << llendl; rebuildViewsFor(mStartFolderID); mViewsInitialized = true; - defaultOpenInventory(); + openStartFolderOrMyInventory(); } void LLInventoryPanel::rebuildViewsFor(const LLUUID& id) @@ -575,7 +574,7 @@ void LLInventoryPanel::buildNewViews(const LLUUID& id) } // bit of a hack to make sure the inventory is open. -void LLInventoryPanel::defaultOpenInventory() +void LLInventoryPanel::openStartFolderOrMyInventory() { if (mStartFolderString != "") { @@ -583,13 +582,17 @@ void LLInventoryPanel::defaultOpenInventory() } else { - // Get the first child (it should be "My Inventory") and - // open it up by name (just to make sure the first child is actually a folder). - LLView* first_child = mFolders->getFirstChild(); - if (first_child) + // Find My Inventory folder and open it up by name + for (LLView *child = mFolders->getFirstChild(); child; child = mFolders->findNextSibling(child)) { - const std::string& first_child_name = first_child->getName(); - mFolders->openFolder(first_child_name); + LLFolderViewFolder *fchild = dynamic_cast<LLFolderViewFolder*>(child); + if (fchild && fchild->getListener() && + (fchild->getListener()->getUUID() == gInventory.getRootFolderID())) + { + const std::string& child_name = child->getName(); + mFolders->openFolder(child_name); + break; + } } } } diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 4f7f0a79f6..09533b52f1 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -167,7 +167,7 @@ public: static LLInventoryPanel *getActiveInventoryPanel(BOOL auto_open = TRUE); protected: - void defaultOpenInventory(); // open the first level of inventory + void openStartFolderOrMyInventory(); // open the first level of inventory LLInventoryModel* mInventory; LLInventoryObserver* mInventoryObserver; diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp index e84f2c2dce..a1c12412b5 100644 --- a/indra/newview/llpaneloutfitsinventory.cpp +++ b/indra/newview/llpaneloutfitsinventory.cpp @@ -313,6 +313,8 @@ void LLPanelOutfitsInventory::onClipboardAction(const LLSD& userdata) { std::string command_name = userdata.asString(); getActivePanel()->getRootFolder()->doToSelected(getActivePanel()->getModel(),command_name); + updateListCommands(); + updateVerbs(); } void LLPanelOutfitsInventory::onCustomAction(const LLSD& userdata) @@ -354,20 +356,22 @@ void LLPanelOutfitsInventory::onCustomAction(const LLSD& userdata) { onClipboardAction("delete"); } + updateListCommands(); + updateVerbs(); } BOOL LLPanelOutfitsInventory::isActionEnabled(const LLSD& userdata) { const std::string command_name = userdata.asString(); - if (command_name == "delete") + if (command_name == "delete" || command_name == "remove") { BOOL can_delete = FALSE; LLFolderView *folder = getActivePanel()->getRootFolder(); if (folder) { - can_delete = TRUE; std::set<LLUUID> selection_set; folder->getSelectionList(selection_set); + can_delete = (selection_set.size() > 0); for (std::set<LLUUID>::iterator iter = selection_set.begin(); iter != selection_set.end(); ++iter) @@ -386,9 +390,9 @@ BOOL LLPanelOutfitsInventory::isActionEnabled(const LLSD& userdata) LLFolderView *folder = getActivePanel()->getRootFolder(); if (folder) { - can_delete = TRUE; std::set<LLUUID> selection_set; folder->getSelectionList(selection_set); + can_delete = (selection_set.size() > 0); for (std::set<LLUUID>::iterator iter = selection_set.begin(); iter != selection_set.end(); ++iter) @@ -402,6 +406,12 @@ BOOL LLPanelOutfitsInventory::isActionEnabled(const LLSD& userdata) } return FALSE; } + if (command_name == "rename" || + command_name == "delete_outfit") + { + return (getCorrectListenerForAction() != NULL) && hasItemsSelected(); + } + if (command_name == "wear" || command_name == "make_outfit") { @@ -413,9 +423,7 @@ BOOL LLPanelOutfitsInventory::isActionEnabled(const LLSD& userdata) } if (command_name == "edit" || - command_name == "wear" || - command_name == "add" || - command_name == "remove" + command_name == "add" ) { return (getCorrectListenerForAction() != NULL); @@ -423,6 +431,19 @@ BOOL LLPanelOutfitsInventory::isActionEnabled(const LLSD& userdata) return TRUE; } +bool LLPanelOutfitsInventory::hasItemsSelected() +{ + bool has_items_selected = false; + LLFolderView *folder = getActivePanel()->getRootFolder(); + if (folder) + { + std::set<LLUUID> selection_set; + folder->getSelectionList(selection_set); + has_items_selected = (selection_set.size() > 0); + } + return has_items_selected; +} + bool LLPanelOutfitsInventory::handleDragAndDropToTrash(BOOL drop, EDragAndDropType cargo_type, EAcceptance* accept) { *accept = ACCEPT_NO; diff --git a/indra/newview/llpaneloutfitsinventory.h b/indra/newview/llpaneloutfitsinventory.h index e4279b7396..b117311775 100644 --- a/indra/newview/llpaneloutfitsinventory.h +++ b/indra/newview/llpaneloutfitsinventory.h @@ -115,6 +115,7 @@ protected: BOOL isActionEnabled(const LLSD& command_name); void onCustomAction(const LLSD& command_name); bool handleDragAndDropToTrash(BOOL drop, EDragAndDropType cargo_type, EAcceptance* accept); + bool hasItemsSelected(); private: LLPanel* mListCommands; LLMenuGL* mMenuGearDefault; diff --git a/indra/newview/llsidepaneltaskinfo.cpp b/indra/newview/llsidepaneltaskinfo.cpp index 50cec3184d..0b8f66c5f3 100644 --- a/indra/newview/llsidepaneltaskinfo.cpp +++ b/indra/newview/llsidepaneltaskinfo.cpp @@ -215,6 +215,10 @@ void LLSidepanelTaskInfo::disableAll() childSetVisible("E:", FALSE); childSetVisible("N:", FALSE); childSetVisible("F:", FALSE); + + mOpenBtn->setEnabled(FALSE); + mPayBtn->setEnabled(FALSE); + mBuyBtn->setEnabled(FALSE); } void LLSidepanelTaskInfo::refresh() @@ -1119,6 +1123,8 @@ void LLSidepanelTaskInfo::updateVerbs() */ mOpenBtn->setEnabled(enable_object_open()); + mPayBtn->setEnabled(enable_pay_object()); + mBuyBtn->setEnabled(enable_buy_object()); } void LLSidepanelTaskInfo::onOpenButtonClicked() diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index 5f66e6b409..9ee848e30f 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -68,6 +68,7 @@ #include "llviewermedia.h" #include "llvoavatarself.h" #include "llviewermediafocus.h" +#include "llvovolume.h" #include "llworld.h" #include "llui.h" #include "llweb.h" @@ -629,12 +630,14 @@ static bool needs_tooltip(LLSelectNode* nodep) return false; LLViewerObject* object = nodep->getObject(); + LLVOVolume* vovolume = dynamic_cast<LLVOVolume*>(object); LLViewerObject *parent = (LLViewerObject *)object->getParent(); if (object->flagHandleTouch() || (parent && parent->flagHandleTouch()) || object->flagTakesMoney() || (parent && parent->flagTakesMoney()) || object->flagAllowInventoryAdd() + || (vovolume && vovolume->hasMedia()) ) { return true; diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 6e11788e0a..7e8c8eb92e 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -170,12 +170,15 @@ public: // accept this and go past it in the MIME type probe // 302 means the resource can be found temporarily in a different place - added this for join.secondlife.com // 499 is a code specifc to join.secondlife.com (????) apparently safe to ignore - if( ((status >= 200) && (status < 300)) || - ((status >= 400) && (status < 499)) || - (status == 500) || - (status == 302) || - (status == 499) - ) +// if( ((status >= 200) && (status < 300)) || +// ((status >= 400) && (status < 499)) || +// (status == 500) || +// (status == 302) || +// (status == 499) +// ) + // We now no longer check the error code returned from the probe. + // If we have a mime type, use it. If not, default to the web plugin and let it handle error reporting. + if(1) { // The probe was successful. if(mime_type.empty()) diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 5445a79137..5a9d219fac 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -62,6 +62,7 @@ #include "llfloaterreporter.h" #include "llfloatersearch.h" #include "llfloaterscriptdebug.h" +#include "llfloatersnapshot.h" #include "llfloatertools.h" #include "llfloaterworldmap.h" #include "llavataractions.h" @@ -446,6 +447,8 @@ void init_menus() // Otherwise tool tips for menu items would be overlapped by menu, since // main view is behind of menu holder now. gViewerWindow->getRootView()->addChild(gToolTipView); + + gViewerWindow->getRootView()->addChild(gSnapshotFloaterView); gViewerWindow->setMenuBackgroundColor(false, LLViewerLogin::getInstance()->isInProductionGrid()); @@ -5857,8 +5860,12 @@ void confirm_replace_attachment(S32 option, void* user_data) } } -bool callback_attachment_drop(const LLSD& notification, const LLSD& response) +void callback_attachment_drop(const LLSD& notification, const LLSD& response) { + // Ensure user confirmed the drop + S32 option = LLNotificationsUtil::getSelectedOption(notification, response); + if (option != 0) return; + // Called when the user clicked on an object attached to them // and selected "Drop". LLUUID object_id = notification["payload"]["object_id"].asUUID(); @@ -5867,7 +5874,7 @@ bool callback_attachment_drop(const LLSD& notification, const LLSD& response) if (!object) { llwarns << "handle_drop_attachment() - no object to drop" << llendl; - return true; + return; } LLViewerObject *parent = (LLViewerObject*)object->getParent(); @@ -5884,13 +5891,13 @@ bool callback_attachment_drop(const LLSD& notification, const LLSD& response) if (!object) { llwarns << "handle_detach() - no object to detach" << llendl; - return true; + return; } if (object->isAvatar()) { llwarns << "Trying to detach avatar from avatar." << llendl; - return true; + return; } // reselect the object @@ -5898,7 +5905,7 @@ bool callback_attachment_drop(const LLSD& notification, const LLSD& response) LLSelectMgr::getInstance()->sendDropAttachment(); - return true; + return; } class LLAttachmentDrop : public view_listener_t @@ -7954,8 +7961,8 @@ void initialize_menus() enable.add("Avatar.EnableMute", boost::bind(&enable_object_mute)); enable.add("Object.EnableMute", boost::bind(&enable_object_mute)); - enable.add("Object.EnableBuy", boost::bind(&enable_buy_object)); + commit.add("Object.ZoomIn", boost::bind(&handle_look_at_selection, "zoom")); // Attachment pie menu enable.add("Attachment.Label", boost::bind(&onEnableAttachmentLabel, _1, _2)); diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 1400253176..83cbc8a1f9 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1897,7 +1897,7 @@ void LLViewerWindow::draw() if (!gSavedSettings.getBOOL("RenderUIBuffer")) { - LLUI::sDirtyRect = this->getWindowRectRaw(); + LLUI::sDirtyRect = getWindowRectScaled(); } // HACK for timecode debugging diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 70bfc67523..55609621b3 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -2689,13 +2689,16 @@ U32 LLVOVolume::getRenderCost(std::set<LLUUID> &textures) const const LLTextureEntry* te = face->getTextureEntry(); const LLViewerTexture* img = face->getTexture(); - textures.insert(img->getID()); + if (img) + { + textures.insert(img->getID()); + } if (face->getPoolType() == LLDrawPool::POOL_ALPHA) { alpha++; } - else if (img->getPrimaryFormat() == GL_ALPHA) + else if (img && img->getPrimaryFormat() == GL_ALPHA) { invisi = 1; } diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml index cb511c2f0b..67816a6a87 100644 --- a/indra/newview/skins/default/colors.xml +++ b/indra/newview/skins/default/colors.xml @@ -64,7 +64,7 @@ value="0 0 1 1" /> <color name="Yellow" - value="0.114 0.65 0.1" /> + value="1 1 0 1" /> <color name="Green" value="0 .39 .10 1" /> @@ -168,6 +168,9 @@ name="ChatHistoryTextColor" reference="LtGray" /> <color + name="ChicletFlashColor" + reference="0.114 0.65 0.1" /> + <color name="ColorDropShadow" reference="Black_50" /> <color diff --git a/indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png b/indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png Binary files differnew file mode 100644 index 0000000000..447e0af0be --- /dev/null +++ b/indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index cc87d5c105..ad598f25f3 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -604,8 +604,9 @@ with the same filename but different name <texture name="TrashItem_Off" file_name="icons/TrashItem_Off.png" preload="false" /> <texture name="TrashItem_Press" file_name="icons/TrashItem_Press.png" preload="false" /> - <texture name="Unread_IM" file_name="bottomtray/Unread_IM.png" preload="false" /> + <texture name="Unread_Chiclet" file_name="bottomtray/Unread_Chiclet.png" preload="false" /> <texture name="Unread_Msg" file_name="bottomtray/Unread_Msg.png" preload="false" /> + <texture name="Unread_IM" file_name="bottomtray/Unread_IM.png" preload="false" /> <texture name="WellButton_Lit" file_name="bottomtray/WellButton_Lit.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> <texture name="WellButton_Lit_Selected" file_name="bottomtray/WellButton_Lit_Selected.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> diff --git a/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png b/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png Binary files differindex a1d602f6f0..61f9b076ce 100644 --- a/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png +++ b/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml index cc955369e2..33fdd923ad 100644 --- a/indra/newview/skins/default/xui/en/floater_about_land.xml +++ b/indra/newview/skins/default/xui/en/floater_about_land.xml @@ -110,7 +110,7 @@ </text> <line_editor follows="left|top" - height="16" + height="23" layout="topleft" left_pad="2" max_length="63" @@ -145,7 +145,7 @@ layout="topleft" left="10" name="LandType" - top="84" + top_pad="5" width="100"> Type: </text> @@ -192,7 +192,7 @@ layout="topleft" left="10" name="Owner:" - top="124" + top_pad="5" width="100"> Owner: </text> @@ -202,7 +202,7 @@ follows="left|top" height="16" layout="topleft" - left_pad="5" + left_pad="2" name="OwnerText" width="240"> Leyla Linden @@ -232,6 +232,7 @@ layout="topleft" left="10" name="Group:" + top_pad="7" width="100"> Group: </text> @@ -240,10 +241,11 @@ enabled="false" follows="left|top" height="16" - left_pad="5" + left_pad="2" layout="topleft" name="GroupText" - width="240" /> + width="240"> +Leyla Linden </text> <button follows="right" height="16" @@ -267,10 +269,10 @@ height="23" label="Allow Deed to Group" layout="topleft" - left="96" + left="108" name="check deed" tool_tip="A group officer can deed this land to the group, so it will be supported by the group's land allocation." - top="164" + top_pad="3" width="146" /> <button enabled="false" @@ -289,7 +291,7 @@ height="16" label="Owner Makes Contribution With Deed" layout="topleft" - left="96" + left="108" name="check contrib" tool_tip="When the land is deeded to the group, the former owner contributes enough land allocation to support it." width="199" /> @@ -352,7 +354,7 @@ layout="topleft" left_delta="-199" name="For sale to" - top_delta="6" + top_delta="2" width="186"> For sale to: [BUYER] </text> @@ -364,7 +366,7 @@ layout="topleft" left_delta="0" name="Sell with landowners objects in parcel." - top_pad="8" + top_pad="0" width="186"> Objects included in sale </text> @@ -389,6 +391,7 @@ right="-10" name="Cancel Land Sale" left_pad="5" + top_pad="-10" width="145" /> <text type="string" @@ -422,7 +425,7 @@ layout="topleft" left="10" name="PriceLabel" - top="288" + top_pad="5" width="100"> Area: </text> @@ -470,7 +473,7 @@ layout="topleft" left_delta="82" name="Buy Land..." - top="328" + top_pad="7" width="100" /> <button enabled="true" @@ -480,7 +483,7 @@ layout="topleft" left="10" name="Scripts..." - top="352" + top_pad="1" width="100" /> <button enabled="false" @@ -490,7 +493,7 @@ layout="topleft" right="-10" name="Buy For Group..." - top="352" + top_delta="0" width="180" /> <button enabled="false" @@ -510,7 +513,7 @@ layout="topleft" right="-10" name="Abandon Land..." - top="328" + top_pad="-47" width="180" /> <button follows="left|top" @@ -519,7 +522,7 @@ layout="topleft" left_delta="0" name="Reclaim Land..." - top_delta="-50" + top_delta="-48" width="180" /> <button enabled="false" @@ -530,7 +533,7 @@ left_delta="0" name="Linden Sale..." tool_tip="Land must be owned, set content, and not already for auction." - top_pad="4" + top_pad="2" width="180" /> </panel> <panel @@ -2022,7 +2025,7 @@ Only large parcels can be listed in search. multi_select="true" name="AccessList" tool_tip="([LISTED] listed, [MAX] max)" - width="240" /> + width="230" /> <button follows="bottom" height="23" @@ -2047,7 +2050,7 @@ Only large parcels can be listed in search. follows="top|right" height="170" width="240" - left_pad="8"> + left_pad="2"> <text type="string" length="1" @@ -2071,7 +2074,7 @@ Only large parcels can be listed in search. multi_select="true" name="BannedList" tool_tip="([LISTED] listed, [MAX] max)" - width="240" /> + width="230" /> <button follows="bottom" height="23" diff --git a/indra/newview/skins/default/xui/en/floater_pay_object.xml b/indra/newview/skins/default/xui/en/floater_pay_object.xml index 1946920a9c..455018f467 100644 --- a/indra/newview/skins/default/xui/en/floater_pay_object.xml +++ b/indra/newview/skins/default/xui/en/floater_pay_object.xml @@ -30,25 +30,25 @@ type="string" length="1" follows="left|top" - font="SansSerif" height="16" layout="topleft" left_pad="7" + top_delta="3" name="payee_name" - width="210"> - [FIRST] [LAST] + width="184"> + Ericacita Moostopolison </text> <text type="string" length="1" follows="left|top" halign="left" - height="16" + height="14" layout="topleft" - left="30" + left="34" name="object_name_label" top_pad="0" - width="150"> + width="180"> Via object: </text> <icon @@ -59,20 +59,21 @@ name="icon_object" tool_tip="Objects" top_pad="0" - left="30" + left="10" /> <text type="string" length="1" follows="left|top" - font="SansSerif" - height="18" + height="16" layout="topleft" - left_pad="5" + left_pad="7" name="object_name_text" - top_delta="0" - width="210"> - ... + top_delta="3" + use_ellipses="true" + word_wrap="false" + width="188"> + My awesome object with a really damn long name </text> <button height="23" @@ -112,7 +113,7 @@ type="string" length="1" follows="left|top" - height="18" + height="14" layout="topleft" left="25" name="amount text" @@ -123,7 +124,7 @@ <line_editor border_style="line" follows="left|top|right" - height="19" + height="21" top_pad="0" layout="topleft" left="120" diff --git a/indra/newview/skins/default/xui/en/floater_preview_notecard.xml b/indra/newview/skins/default/xui/en/floater_preview_notecard.xml index 06dbdc9539..ead5b8c8f2 100644 --- a/indra/newview/skins/default/xui/en/floater_preview_notecard.xml +++ b/indra/newview/skins/default/xui/en/floater_preview_notecard.xml @@ -11,15 +11,15 @@ min_width="234" name="preview notecard" help_topic="preview_notecard" - title="NOTE:" + title="NOTECARD:" width="400"> <floater.string name="no_object"> - Unable to find object containing this note. + Unable to find object containing this notecard. </floater.string> <floater.string name="not_allowed"> - You do not have permission to view this note. + You do not have permission to view this notecard. </floater.string> <floater.string name="Title"> diff --git a/indra/newview/skins/default/xui/en/floater_test_widgets.xml b/indra/newview/skins/default/xui/en/floater_test_widgets.xml index 84adabe4fa..2f88c234cc 100644 --- a/indra/newview/skins/default/xui/en/floater_test_widgets.xml +++ b/indra/newview/skins/default/xui/en/floater_test_widgets.xml @@ -123,6 +123,12 @@ layout="topleft" tool_tip="checkbox" name="test_checkbox" /> + <check_box + top_pad="5" + enabled="false" + label="Checkbox Disabled" + tool_tip="checkbox disabled" + name="test_checkbox_disabled" /> <!-- "combo_box" is a pop-menu of items. Optionally the box itself can contain a general purpose line input editor, allowing the user to provide input that is not a list item. --> diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml index e55453f772..a1e190fc5e 100644 --- a/indra/newview/skins/default/xui/en/floater_tools.xml +++ b/indra/newview/skins/default/xui/en/floater_tools.xml @@ -2675,7 +2675,7 @@ even though the user gets a free copy. height="18" layout="topleft" left="10" - use_ellipsis="true" + use_ellipses="true" read_only="true" name="media_info" width="180" /> diff --git a/indra/newview/skins/default/xui/en/menu_inventory.xml b/indra/newview/skins/default/xui/en/menu_inventory.xml index d29dfa7034..1e10467148 100644 --- a/indra/newview/skins/default/xui/en/menu_inventory.xml +++ b/indra/newview/skins/default/xui/en/menu_inventory.xml @@ -85,7 +85,7 @@ parameter="lsl" /> </menu_item_call> <menu_item_call - label="New Note" + label="New Notecard" layout="topleft" name="New Note"> <menu_item_call.on_click diff --git a/indra/newview/skins/default/xui/en/menu_inventory_add.xml b/indra/newview/skins/default/xui/en/menu_inventory_add.xml index b07a8bb512..5ad099e2d9 100644 --- a/indra/newview/skins/default/xui/en/menu_inventory_add.xml +++ b/indra/newview/skins/default/xui/en/menu_inventory_add.xml @@ -71,7 +71,7 @@ parameter="lsl" /> </menu_item_call> <menu_item_call - label="New Note" + label="New Notecard" layout="topleft" name="New Note"> <menu_item_call.on_click diff --git a/indra/newview/skins/default/xui/en/menu_object.xml b/indra/newview/skins/default/xui/en/menu_object.xml index 62500c5116..35518cd13b 100644 --- a/indra/newview/skins/default/xui/en/menu_object.xml +++ b/indra/newview/skins/default/xui/en/menu_object.xml @@ -57,6 +57,12 @@ <menu_item_call.on_enable function="Object.EnableInspect" /> </menu_item_call> + <menu_item_call + label="Zoom In" + name="Zoom In"> + <menu_item_call.on_click + function="Object.ZoomIn" /> + </menu_item_call> <menu_item_separator layout="topleft" /> <context_menu label="Put On >" diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby.xml b/indra/newview/skins/default/xui/en/menu_people_nearby.xml index 5f2e6e0f6c..c4da1df017 100644 --- a/indra/newview/skins/default/xui/en/menu_people_nearby.xml +++ b/indra/newview/skins/default/xui/en/menu_people_nearby.xml @@ -63,4 +63,10 @@ function="Avatar.EnableItem" parameter="can_block" /> </menu_item_check> + <menu_item_call + label="Offer Teleport" + name="teleport"> + <menu_item_call.on_click + function="Avatar.OfferTeleport"/> + </menu_item_call> </context_menu> diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 4e495bab3f..58e9d39807 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -307,7 +307,7 @@ <menu_item_separator layout="topleft" /> <menu_item_call - label="Buy Land" + label="Buy This Land" layout="topleft" name="Buy Land"> <menu_item_call.on_click diff --git a/indra/newview/skins/default/xui/en/panel_bottomtray.xml b/indra/newview/skins/default/xui/en/panel_bottomtray.xml index b92aa10ffc..aeaa049f1f 100644 --- a/indra/newview/skins/default/xui/en/panel_bottomtray.xml +++ b/indra/newview/skins/default/xui/en/panel_bottomtray.xml @@ -350,7 +350,7 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well --> <button auto_resize="true" - flash_color="Yellow" + flash_color="ChicletFlashColor" follows="right" halign="center" height="23" @@ -403,7 +403,7 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well halign="center" height="23" follows="right" - flash_color="Yellow" + flash_color="ChicletFlashColor" label_color="Black" left="5" name="Unread" diff --git a/indra/newview/skins/default/xui/en/panel_group_roles.xml b/indra/newview/skins/default/xui/en/panel_group_roles.xml index 9548119d58..a5bab3232c 100644 --- a/indra/newview/skins/default/xui/en/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/en/panel_group_roles.xml @@ -258,7 +258,7 @@ things in this group. There's a broad variety of Abilities. name="static" top_pad="5" width="300"> - Assigned Members + Assigned Roles </text> <scroll_list draw_stripes="true" diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml index 58437cd4d2..9d00abd2c9 100644 --- a/indra/newview/skins/default/xui/en/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/en/panel_main_inventory.xml @@ -262,7 +262,7 @@ halign="center" parameter="lsl" /> </menu_item_call> <menu_item_call - label="New Note" + label="New Notecard" layout="topleft" name="New Note"> <menu_item_call.on_click diff --git a/indra/newview/skins/default/xui/en/panel_me.xml b/indra/newview/skins/default/xui/en/panel_me.xml index a99777848b..e779e37419 100644 --- a/indra/newview/skins/default/xui/en/panel_me.xml +++ b/indra/newview/skins/default/xui/en/panel_me.xml @@ -26,7 +26,7 @@ </text> --> <tab_container follows="all" - height="575" + height="570" halign="center" layout="topleft" left="10" diff --git a/indra/newview/skins/default/xui/en/panel_my_profile.xml b/indra/newview/skins/default/xui/en/panel_my_profile.xml index 10381d3987..12a0a9155d 100644 --- a/indra/newview/skins/default/xui/en/panel_my_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_my_profile.xml @@ -31,32 +31,49 @@ name="RegisterDateFormat"> [REG_DATE] ([AGE]) </string> - <scroll_container - color="DkGray2" + <layout_stack + name="layout" + orientation="vertical" follows="all" - height="485" layout="topleft" - name="profile_scroll" - reserve_scroll_corner="false" - opaque="true" + left="0" top="0" - width="313"> + height="535" + width="313" + border_size="0"> <panel - name="scroll_content_panel" - follows="left|top|right" - height="485" + name="profile_stack" + follows="all" layout="topleft" top="0" left="0" - width="297"> - <panel - follows="left|top" + height="505" + width="313"> + <scroll_container + color="DkGray2" + follows="all" + layout="topleft" + left="0" + name="profile_scroll" + opaque="true" + height="505" + width="313" + top="0"> + <panel + layout="topleft" + follows="left|top|right" + name="scroll_content_panel" + top="0" + left="0" + width="303"> + <panel + follows="left|top|right" height="117" layout="topleft" left="10" name="second_life_image_panel" top="0" - width="280"> + width="300"> <texture_picker allow_no_texture="true" default_image_name="None" @@ -80,7 +97,7 @@ width="102" /> <text follows="left|top|right" - font.style="BOLD" + font.style="BOLD" height="15" layout="topleft" left_pad="10" @@ -88,7 +105,7 @@ text_color="white" top_delta="0" value="[SECOND_LIFE]:" - width="165" /> + width="180" /> <expandable_text follows="left|top|right" height="95" @@ -97,20 +114,20 @@ textbox.max_length="512" name="sl_description_edit" top_pad="-3" - width="173" + width="188" expanded_bg_visible="true" expanded_bg_color="DkGray"> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. </expandable_text> </panel> <panel - follows="left|top" + follows="left|top|right" height="117" layout="topleft" - top_pad="10" + top_pad="10" left="10" name="first_life_image_panel" - width="280"> + width="300"> <texture_picker allow_no_texture="true" default_image_name="None" @@ -133,7 +150,7 @@ width="102" /> <text follows="left|top|right" - font.style="BOLD" + font.style="BOLD" height="15" layout="topleft" left_pad="10" @@ -141,7 +158,7 @@ text_color="white" top_delta="0" value="Real World:" - width="165" /> + width="180" /> <expandable_text follows="left|top|right" height="95" @@ -150,90 +167,23 @@ textbox.max_length="512" name="fl_description_edit" top_pad="-3" - width="173" + width="188" expanded_bg_visible="true" expanded_bg_color="DkGray"> Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. </expandable_text> </panel> - - - <!-- <panel - name="lifes_images_panel" - follows="left|top|right" - height="244" - layout="topleft" - top="0" - left="0" - width="285"> - <panel - follows="left|top" - height="117" - layout="topleft" - left="10" - name="second_life_image_panel" - top="0" - width="285"> - <text - follows="left|top|right" - font.style="BOLD" - height="15" - layout="topleft" - left="0" - name="second_life_photo_title_text" - text_color="white" - value="[SECOND_LIFE]:" - width="170" /> - <texture_picker - allow_no_texture="true" - default_image_name="None" - enabled="false" - follows="top|left" - height="117" - layout="topleft" - left="0" - name="2nd_life_pic" - top_pad="0" - width="102" /> - </panel> - <icon - height="18" - image_name="AddItem_Off" - layout="topleft" - name="2nd_life_edit_icon" - label="" - left="87" - tool_tip="Click to select an image" - top="25" - width="18" /> - </panel> --> - - - - - <text - type="string" - follows="left|top" - font="SansSerifSmall" - font.style="BOLD" - height="15" - layout="topleft" - left="10" - name="me_homepage_text" - text_color="white" - top_pad="0" - width="280"> - Homepage: - </text> <text follows="left|top" height="15" + font.style="BOLD" + font="SansSerifMedium" layout="topleft" left="10" name="homepage_edit" top_pad="0" value="http://librarianavengers.org" - width="280" + width="300" word_wrap="false" use_ellipses="true" /> @@ -246,8 +196,8 @@ name="title_member_text" text_color="white" top_pad="10" - value="Member Since:" - width="280" /> + value="Resident Since:" + width="300" /> <text follows="left|top" height="15" @@ -255,7 +205,7 @@ left="10" name="register_date" value="05/31/2376" - width="280" + width="300" word_wrap="true" /> <text follows="left|top" @@ -265,9 +215,9 @@ left="10" name="title_acc_status_text" text_color="white" - top_pad="10" + top_pad="5" value="Account Status:" - width="280" /> + width="300" /> <!-- <text type="string" follows="left|top" @@ -279,16 +229,18 @@ top_delta="0" value="Go to Dashboard" width="100"/> --> - <text + <text follows="left|top" - height="20" + height="28" layout="topleft" left="10" name="acc_status_text" top_pad="0" - value="Resident. No payment info on file." - width="280" - word_wrap="true" /> + width="300" + word_wrap="true"> + Resident. No payment info on file. +Linden. + </text> <text follows="left|top" font.style="BOLD" @@ -297,9 +249,9 @@ left="10" name="title_partner_text" text_color="white" - top_pad="5" + top_pad="3" value="Partner:" - width="280" /> + width="300" /> <panel follows="left|top" height="15" @@ -307,7 +259,7 @@ left="10" name="partner_data_panel" top_pad="0" - width="280"> + width="300"> <text follows="left|top" height="10" @@ -316,44 +268,43 @@ name="partner_text" top="0" value="[FIRST] [LAST]" - width="280" + width="300" word_wrap="true" /> </panel> <text follows="left|top" font.style="BOLD" - height="15" + height="13" layout="topleft" left="10" name="title_groups_text" text_color="white" - top_pad="8" + top_pad="3" value="Groups:" - width="280" /> - <expandable_text - follows="left|top|bottom" - height="60" + width="300" /> + <expandable_text + follows="all" + height="113" layout="topleft" - left="10" - name="sl_groups" + left="7" + name="sl_groups" top_pad="0" - width="280" - expanded_bg_visible="true" - expanded_bg_color="DkGray"> - Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. + width="298" + expanded_bg_visible="true" + expanded_bg_color="DkGray"> + Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. Aenean viverra tulip moosetop. Slan de heelish marfnik tooplod. Sum sum to whop de wompam booster copm. </expandable_text> - </panel> + </panel> </scroll_container> - <panel + </panel> +<!-- <panel follows="bottom|left" layout="topleft" left="0" name="profile_buttons_panel" - top_pad="2" - bottom="10" - height="23" - width="303"> - <button + height="28" + width="313"> + <button follows="bottom|left" height="23" label="Add Friend" @@ -361,8 +312,9 @@ left="0" mouse_opaque="false" name="add_friend" + tool_tip="Offer friendship to the resident" top="5" - width="75" /> + width="80" /> <button follows="bottom|left" height="23" @@ -370,7 +322,7 @@ layout="topleft" name="im" top="5" - left_pad="5" + left_pad="3" width="45" /> <button follows="bottom|left" @@ -378,7 +330,7 @@ label="Call" layout="topleft" name="call" - left_pad="5" + left_pad="3" top="5" width="45" /> <button @@ -389,7 +341,7 @@ layout="topleft" name="show_on_map_btn" top="5" - left_pad="5" + left_pad="3" width="45" /> <button follows="bottom|left" @@ -397,23 +349,24 @@ label="Teleport" layout="topleft" name="teleport" - left_pad="5" + left_pad="3" top="5" - width="80" /> - </panel> + width="85" /> + </panel>--> <panel follows="bottom|left" layout="topleft" left="0" - top_pad="-17" + top_pad="0" name="profile_me_buttons_panel" visible="false" - height="23" - width="303"> + height="28" + width="313"> <button follows="bottom|right" height="23" - left="10" + left="20" + top="0" label="Edit Profile" name="edit_profile_btn" tool_tip="Edit your personal information" @@ -425,7 +378,7 @@ left_pad="10" name="edit_appearance_btn" tool_tip="Create/edit your appearance: physical data, clothes and etc." - right="-10" width="130" /> </panel> +</layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_notes.xml b/indra/newview/skins/default/xui/en/panel_notes.xml index f15e75dee9..9335db0623 100644 --- a/indra/newview/skins/default/xui/en/panel_notes.xml +++ b/indra/newview/skins/default/xui/en/panel_notes.xml @@ -115,14 +115,14 @@ <button follows="bottom|left" height="23" - label="Add" + label="Add Friend" layout="topleft" left="0" mouse_opaque="false" name="add_friend" tool_tip="Offer friendship to the resident" top="5" - width="55" /> + width="80" /> <button follows="bottom|left" height="23" @@ -131,8 +131,8 @@ name="im" tool_tip="Open instant message session" top="5" - left_pad="5" - width="40" /> + left_pad="3" + width="45" /> <button follows="bottom|left" height="23" @@ -140,9 +140,9 @@ layout="topleft" name="call" tool_tip="Call this resident" - left_pad="5" + left_pad="3" top="5" - width="55" /> + width="45" /> <button enabled="false" follows="bottom|left" @@ -152,8 +152,8 @@ name="show_on_map_btn" tool_tip="Show the resident on the map" top="5" - left_pad="5" - width="50" /> + left_pad="3" + width="45" /> <button follows="bottom|left" height="23" @@ -161,9 +161,9 @@ layout="topleft" name="teleport" tool_tip="Offer teleport" - left_pad="5" + left_pad="3" top="5" - width="90" /> + width="80" /> </panel> </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml index 221e3f997b..2c7a51f0e7 100644 --- a/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml +++ b/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml @@ -43,7 +43,7 @@ parameter="rename" /> </menu_item_call> <menu_item_call - label="Remove" + label="Remove Link" layout="topleft" name="remove_link"> <on_click @@ -54,7 +54,7 @@ parameter="remove_link" /> </menu_item_call> <menu_item_call - label="Delete" + label="Delete Outfit" layout="topleft" name="delete"> <on_click @@ -62,6 +62,6 @@ parameter="delete" /> <on_enable function="panel_outfits_inventory_gear_default.Enable" - parameter="delete" /> + parameter="delete_outfit" /> </menu_item_call> </menu> diff --git a/indra/newview/skins/default/xui/en/panel_people.xml b/indra/newview/skins/default/xui/en/panel_people.xml index 08a10553a8..adf22f825f 100644 --- a/indra/newview/skins/default/xui/en/panel_people.xml +++ b/indra/newview/skins/default/xui/en/panel_people.xml @@ -400,7 +400,7 @@ background_visible="true" layout="topleft" name="group_info_btn" tool_tip="Show group information" - width="110" /> + width="102" /> <button follows="bottom|left" top="4" @@ -410,7 +410,7 @@ background_visible="true" layout="topleft" name="chat_btn" tool_tip="Open chat session" - width="110" /> + width="102" /> <button follows="bottom|left" top="4" @@ -420,6 +420,6 @@ background_visible="true" layout="topleft" name="group_call_btn" tool_tip="Call this group" - width="110" /> + width="102" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml index 25d7ba0903..5dd93d0f7e 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml @@ -85,7 +85,10 @@ left="30" name="autoplay_enabled" top_pad="10" - width="350" /> + width="350"> + <check_box.commit_callback + function="Pref.ParcelMediaAutoPlayEnable" /> + </check_box> <text type="string" length="1" diff --git a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml index 4cef1f9c60..075d9232b1 100644 --- a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml +++ b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml @@ -14,7 +14,7 @@ <string name="min_width">300</string> <string name="min_height">75</string> <string name="zoom_near_padding">1.0</string> - <string name="zoom_medium_padding">1.25</string> + <string name="zoom_medium_padding">1.1</string> <string name="zoom_far_padding">1.5</string> <string name="top_world_view_avoid_zone">50</string> <layout_stack @@ -113,6 +113,7 @@ </layout_panel> <layout_panel name="fwd" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -140,6 +141,7 @@ </layout_panel> <layout_panel name="home" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -167,6 +169,7 @@ </layout_panel> <layout_panel name="media_stop" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -194,6 +197,7 @@ </layout_panel> <layout_panel name="reload" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -221,6 +225,7 @@ </layout_panel> <layout_panel name="stop" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -248,6 +253,7 @@ </layout_panel> <layout_panel name="play" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -276,6 +282,7 @@ </layout_panel> <layout_panel name="pause" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -303,6 +310,7 @@ <!-- media URL entry --> <layout_panel name="media_address" + mouse_opaque="false" auto_resize="true" user_resize="false" height="24" @@ -367,6 +375,7 @@ </layout_panel> <layout_panel name="media_play_position" + mouse_opaque="false" auto_resize="true" user_resize="false" follows="left|right" @@ -392,6 +401,7 @@ </layout_panel> <layout_panel name="skip_back" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -419,6 +429,7 @@ </layout_panel> <layout_panel name="skip_forward" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -445,6 +456,7 @@ </layout_panel> <layout_panel name="media_volume" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -501,6 +513,7 @@ </layout_panel> <layout_panel name="zoom_frame" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -528,6 +541,7 @@ </layout_panel> <layout_panel name="close" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -554,6 +568,7 @@ </layout_panel> <layout_panel name="new_window" + mouse_opaque="false" auto_resize="false" user_resize="false" layout="topleft" @@ -581,6 +596,7 @@ <!-- bookend panel --> <layout_panel name="right_bookend" + mouse_opaque="false" top="0" width="0" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/panel_profile.xml b/indra/newview/skins/default/xui/en/panel_profile.xml index 342cf4144f..5ccc964c9a 100644 --- a/indra/newview/skins/default/xui/en/panel_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_profile.xml @@ -27,42 +27,59 @@ <string name="no_partner_text" value="None" /> - <string + <string name="RegisterDateFormat"> [REG_DATE] ([AGE]) </string> - <scroll_container - color="DkGray2" + <layout_stack + name="layout" + orientation="vertical" follows="all" - height="485" layout="topleft" - name="profile_scroll" - reserve_scroll_corner="true" - opaque="true" + left="0" top="0" - width="313"> + height="535" + width="313" + border_size="0"> <panel - name="scroll_content_panel" - follows="left|top|right" - height="485" + name="profile_stack" + follows="all" layout="topleft" top="0" left="0" + height="505" width="313"> + <scroll_container + color="DkGray2" + follows="all" + layout="topleft" + left="0" + name="profile_scroll" + opaque="true" + height="505" + width="313" + top="0"> + <panel + layout="topleft" + follows="left|top|right" + name="profile_scroll_panel" + top="0" + left="0" + width="303"> <panel - follows="left|top" + follows="left|top|right" height="117" layout="topleft" left="10" name="second_life_image_panel" top="0" - width="280"> + width="303"> <texture_picker allow_no_texture="true" default_image_name="None" enabled="false" follows="top|left" - height="102" + height="117" layout="topleft" left="0" name="2nd_life_pic" @@ -78,7 +95,7 @@ text_color="white" top_delta="0" value="[SECOND_LIFE]:" - width="165" /> + width="180" /> <expandable_text follows="left|top|right" height="95" @@ -87,26 +104,26 @@ textbox.max_length="512" name="sl_description_edit" top_pad="-3" - width="173" + width="185" expanded_bg_visible="true" expanded_bg_color="DkGray"> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. </expandable_text> </panel> <panel - follows="left|top" + follows="left|top|right" height="117" layout="topleft" top_pad="10" left="10" name="first_life_image_panel" - width="280"> + width="303"> <texture_picker allow_no_texture="true" default_image_name="None" enabled="false" follows="top|left" - height="102" + height="117" layout="topleft" left="0" name="real_world_pic" @@ -121,7 +138,7 @@ text_color="white" top_delta="0" value="Real World:" - width="165" /> + width="180" /> <expandable_text follows="left|top|right" height="95" @@ -130,57 +147,45 @@ textbox.max_length="512" name="fl_description_edit" top_pad="-3" - width="173" + width="185" expanded_bg_visible="true" expanded_bg_color="DkGray"> Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. </expandable_text> </panel> - <text - type="string" - follows="left|top" - font="SansSerifSmall" - font.style="BOLD" - height="15" - layout="topleft" - left="10" - name="me_homepage_text" - text_color="white" - top_pad="0" - width="280"> - Homepage: - </text> - <text + <text follows="left|top" height="15" + font.style="BOLD" + font="SansSerifMedium" layout="topleft" left="10" name="homepage_edit" top_pad="0" value="http://librarianavengers.org" - width="280" + width="300" word_wrap="false" use_ellipses="true" /> <text follows="left|top" - font.style="BOLD" + font.style="BOLD" height="10" layout="topleft" left="10" name="title_member_text" text_color="white" top_pad="10" - value="Member Since:" - width="280" /> + value="Resident Since:" + width="300" /> <text follows="left|top" height="15" layout="topleft" left="10" name="register_date" - value="05/31/1976" - width="280" + value="05/31/2376" + width="300" word_wrap="true" /> <text follows="left|top" @@ -190,9 +195,9 @@ left="10" name="title_acc_status_text" text_color="white" - top_pad="10" + top_pad="5" value="Account Status:" - width="280" /> + width="300" /> <!-- <text type="string" follows="left|top" @@ -206,14 +211,16 @@ width="100"/> --> <text follows="left|top" - height="20" + height="28" layout="topleft" left="10" name="acc_status_text" top_pad="0" - value="Resident. No payment info on file." - width="280" - word_wrap="true" /> + width="300" + word_wrap="true"> + Resident. No payment info on file. +Linden. + </text> <text follows="left|top" font.style="BOLD" @@ -222,9 +229,9 @@ left="10" name="title_partner_text" text_color="white" - top_pad="5" + top_pad="3" value="Partner:" - width="280" /> + width="300" /> <panel follows="left|top" height="15" @@ -232,7 +239,7 @@ left="10" name="partner_data_panel" top_pad="0" - width="280"> + width="300"> <text follows="left|top" height="10" @@ -241,43 +248,41 @@ name="partner_text" top="0" value="[FIRST] [LAST]" - width="280" + width="300" word_wrap="true" /> </panel> <text follows="left|top" font.style="BOLD" - height="15" + height="13" layout="topleft" left="10" name="title_groups_text" text_color="white" - top_pad="8" + top_pad="3" value="Groups:" - width="280" /> - <expandable_text - follows="left|top|bottom" - height="60" + width="300" /> + <expandable_text + follows="all" + height="113" layout="topleft" - left="10" - name="sl_groups" - top_pad="0" - width="280" - expanded_bg_visible="true" - expanded_bg_color="DkGray"> - Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. + left="7" + name="sl_groups" + top_pad="0" + width="298" + expanded_bg_visible="true" + expanded_bg_color="DkGray"> + Lorem ipsum dolor sit amet, consectetur adlkjpiscing elit moose moose. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet. adipiscing elit. Aenean rigviverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet sorbet ipsum. adipiscing elit. Aenean viverra orci et justo sagittis aliquet. Nullam malesuada mauris sit amet ipsum. Aenean viverra tulip moosetop. Slan de heelish marfnik tooplod. Sum sum to whop de wompam booster copm. </expandable_text> - </panel> + </panel> </scroll_container> +</panel> <panel - follows="bottom|left" - layout="topleft" - left="0" - name="profile_buttons_panel" - top_pad="2" - bottom="0" - height="19" - width="303"> + follows="bottom|left" + height="28" + layout="topleft" + name="profile_buttons_panel" + width="313"> <button follows="bottom|left" height="23" @@ -288,7 +293,7 @@ name="add_friend" tool_tip="Offer friendship to the resident" top="5" - width="77" /> + width="80" /> <button follows="bottom|left" height="23" @@ -297,8 +302,8 @@ name="im" tool_tip="Open instant message session" top="5" - left_pad="5" - width="33" /> + left_pad="3" + width="45" /> <button follows="bottom|left" height="23" @@ -306,9 +311,9 @@ layout="topleft" name="call" tool_tip="Call this resident" - left_pad="5" + left_pad="3" top="5" - width="40" /> + width="45" /> <button enabled="false" follows="bottom|left" @@ -318,8 +323,8 @@ name="show_on_map_btn" tool_tip="Show the resident on the map" top="5" - left_pad="5" - width="44" /> + left_pad="3" + width="45" /> <button follows="bottom|left" height="23" @@ -327,10 +332,10 @@ layout="topleft" name="teleport" tool_tip="Offer teleport" - left_pad="5" + left_pad="3" top="5" - width="67" /> - <button + width="85" /> + <!-- <button follows="bottom|right" height="23" label="▼" @@ -339,23 +344,25 @@ tool_tip="Pay money to or share inventory with the resident" right="-1" top="5" - width="21" /> - </panel> + left_pad="3" + width="23" />--> + </panel> <panel - follows="bottom|left" - layout="topleft" - left="0" - top_pad="-17" - name="profile_me_buttons_panel" - visible="false" - height="19" - width="303"> + follows="bottom|left" + height="28" + layout="topleft" + top_pad="-26" + name="profile_me_buttons_panel" + visible="false" + width="313"> <button follows="bottom|right" height="23" - left="10" + left="20" + top="0" label="Edit Profile" name="edit_profile_btn" + tool_tip="Edit your personal information" width="130" /> <button follows="bottom|right" @@ -363,7 +370,8 @@ label="Edit Appearance" left_pad="10" name="edit_appearance_btn" - right="-10" + tool_tip="Create/edit your appearance: physical data, clothes and etc." width="130" /> - </panel> -</panel> + </panel> + </layout_stack> +</panel>
\ No newline at end of file diff --git a/indra/newview/skins/default/xui/en/panel_profile_view.xml b/indra/newview/skins/default/xui/en/panel_profile_view.xml index 6324ec2bd8..c51447eaf0 100644 --- a/indra/newview/skins/default/xui/en/panel_profile_view.xml +++ b/indra/newview/skins/default/xui/en/panel_profile_view.xml @@ -26,8 +26,8 @@ top="2" width="23" /> <text_editor - allow_scroll="false" - bg_visible="false" + allow_scroll="false" + bg_visible="false" read_only = "true" follows="top|left|right" font="SansSerifHugeBold" @@ -55,7 +55,7 @@ halign="center" layout="topleft" left="10" - min_width="333" + min_width="333" name="tabs" tab_min_width="80" tab_height="30" diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_im_adhoc.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_im_adhoc.xml index 7cb973f4c8..af0d338256 100644 --- a/indra/newview/skins/default/xui/en/widgets/chiclet_im_adhoc.xml +++ b/indra/newview/skins/default/xui/en/widgets/chiclet_im_adhoc.xml @@ -33,7 +33,7 @@ <chiclet_im_adhoc.new_message_icon bottom="12" height="13" - image_name="Unread_IM" + image_name="Unread_Chiclet" left="12" name="new_message_icon" visible="false" diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_im_group.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_im_group.xml index a9b567225e..b1988a2d20 100644 --- a/indra/newview/skins/default/xui/en/widgets/chiclet_im_group.xml +++ b/indra/newview/skins/default/xui/en/widgets/chiclet_im_group.xml @@ -34,7 +34,7 @@ <chiclet_im_group.new_message_icon bottom="12" height="13" - image_name="Unread_IM" + image_name="Unread_Chiclet" left="12" name="new_message_icon" visible="false" diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_im_p2p.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_im_p2p.xml index 9283594a4c..52fbce0de7 100644 --- a/indra/newview/skins/default/xui/en/widgets/chiclet_im_p2p.xml +++ b/indra/newview/skins/default/xui/en/widgets/chiclet_im_p2p.xml @@ -33,7 +33,7 @@ <chiclet_im_p2p.new_message_icon bottom="12" height="13" - image_name="Unread_IM" + image_name="Unread_Chiclet" left="12" name="new_message_icon" visible="false" diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml index 5a22563758..33f85a964c 100644 --- a/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml +++ b/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml @@ -14,7 +14,7 @@ <chiclet_offer.new_message_icon bottom="12" height="13" - image_name="Unread_IM" + image_name="Unread_Chiclet" left="12" name="new_message_icon" visible="false" diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml index 05a23b95f9..560c8e6ea5 100644 --- a/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml +++ b/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml @@ -14,7 +14,7 @@ <chiclet_script.new_message_icon bottom="12" height="13" - image_name="Unread_IM" + image_name="Unread_Chiclet" left="12" name="new_message_icon" visible="false" diff --git a/indra/newview/tests/lldateutil_test.cpp b/indra/newview/tests/lldateutil_test.cpp index 142a5eb5e6..7ba82fbd2c 100644 --- a/indra/newview/tests/lldateutil_test.cpp +++ b/indra/newview/tests/lldateutil_test.cpp @@ -179,4 +179,14 @@ namespace tut LLDateUtil::ageFromDate("12/31/2009", mNow), "Joined today" ); } + + template<> template<> + void dateutil_object_t::test<5>() + { + set_test_name("2010 rollover"); + LLDate now(std::string("2010-01-04T12:00:00Z")); + ensure_equals("days", + LLDateUtil::ageFromDate("12/13/2009", now), + "3 weeks old" ); + } } |