diff options
author | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-01-04 14:58:48 +0200 |
---|---|---|
committer | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-01-04 14:58:48 +0200 |
commit | dcf144eae0b52c24168bde4d1cfedeb275a9777a (patch) | |
tree | f83fecbb7c6a8815919325b7aff74634b462ed5a | |
parent | 8288b33c83abde3adaec2638c9e8d1a164d4138e (diff) | |
parent | 516e2674f54d400c30bf548ea1e9b0a268bd929f (diff) |
merge
--HG--
branch : product-engine
33 files changed, 435 insertions, 256 deletions
diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp index 60ef01074b..2648cbf08d 100644 --- a/indra/llui/llmenugl.cpp +++ b/indra/llui/llmenugl.cpp @@ -23,7 +23,7 @@ * By copying, modifying or distributing this software, you acknowledge * that you have read and understood your obligations described above, * and agree to abide by those obligations. - * + * * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, * COMPLETENESS OR PERFORMANCE. @@ -1208,22 +1208,41 @@ void LLMenuItemBranchGL::openMenu() branch->arrange(); - LLRect rect = branch->getRect(); + LLRect branch_rect = branch->getRect(); // calculate root-view relative position for branch menu S32 left = getRect().mRight; S32 top = getRect().mTop - getRect().mBottom; localPointToOtherView(left, top, &left, &top, branch->getParent()); - rect.setLeftTopAndSize( left, top, - rect.getWidth(), rect.getHeight() ); + branch_rect.setLeftTopAndSize( left, top, + branch_rect.getWidth(), branch_rect.getHeight() ); if (branch->getCanTearOff()) { - rect.translate(0, TEAROFF_SEPARATOR_HEIGHT_PIXELS); + branch_rect.translate(0, TEAROFF_SEPARATOR_HEIGHT_PIXELS); + } + branch->setRect( branch_rect ); + + // if branch extends outside of menu region change the direction it opens in + S32 x, y; + S32 delta_x = 0; + S32 delta_y = 0; + branch->localPointToOtherView( 0, 0, &x, &y, branch->getParent() ); + if( y < menu_region_rect.mBottom ) + { + // open upwards if menu extends past bottom + // adjust by the height of the menu item branch since it is a submenu + delta_y = branch_rect.getHeight() - getRect().getHeight(); } - branch->setRect( rect ); - branch->translateIntoRectWithExclusion( menu_region_rect, getMenu()->getRect(), FALSE ); + + if( x + branch_rect.getWidth() > menu_region_rect.mRight ) + { + // move sub-menu over to left side + delta_x = llmax(-x, ( -(branch_rect.getWidth() + getRect().getWidth()))); + } + branch->translate( delta_x, delta_y ); + branch->setVisible( TRUE ); branch->getParent()->sendChildToFront(branch); diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index a25f805437..8918fc3018 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -218,6 +218,7 @@ set(viewer_SOURCE_FILES llfloaterwater.cpp llfloaterwhitelistentry.cpp llfloaterwindlight.cpp + llfloaterwindowsize.cpp llfloaterworldmap.cpp llfolderview.cpp llfolderviewitem.cpp @@ -725,6 +726,7 @@ set(viewer_HEADER_FILES llfloaterwater.h llfloaterwhitelistentry.h llfloaterwindlight.h + llfloaterwindowsize.h llfloaterworldmap.h llfolderview.h llfoldervieweventlistener.h diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 0ee39c2fc8..e24e1a8605 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -265,6 +265,17 @@ <key>Value</key> <real>0.5</real> </map> + <key>AudioLevelWind</key> + <map> + <key>Comment</key> + <string>Audio level of wind noise when standing still</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>F32</string> + <key>Value</key> + <real>0.5</real> + </map> <key>AudioSteamingMedia</key> <map> <key>Comment</key> @@ -3235,6 +3246,17 @@ <key>Value</key> <real>0.75</real> </map> + <key>FolderIndentation</key> + <map> + <key>Comment</key> + <string>Number of pixels to indent subfolders in inventory</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>S32</string> + <key>Value</key> + <integer>8</integer> + </map> <key>FolderLoadingMessageWaitTime</key> <map> <key>Comment</key> diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index 79ba3fb51d..b221c28dcd 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -2128,6 +2128,7 @@ void LLLibraryOutfitsFetch::done() } if (mOutfitsPopulated) { + gInventory.notifyObservers(); delete this; } } @@ -2162,6 +2163,11 @@ void LLLibraryOutfitsFetch::folderDone(void) // everything is already here - call done. outfitsDone(); } + else + { + gInventory.removeObserver(this); + gInventory.addObserver(this); + } } void LLLibraryOutfitsFetch::outfitsDone(void) @@ -2172,6 +2178,8 @@ void LLLibraryOutfitsFetch::outfitsDone(void) LLInventoryModel::EXCLUDE_TRASH); LLInventoryFetchDescendentsObserver::folder_ref_t folders; + + llassert(cat_array.count() > 0); for(S32 i = 0; i < cat_array.count(); ++i) { if (cat_array.get(i)->getName() != "More Outfits" && cat_array.get(i)->getName() != "Ruth"){ @@ -2186,6 +2194,11 @@ void LLLibraryOutfitsFetch::outfitsDone(void) // everything is already here - call done. contentsDone(); } + else + { + gInventory.removeObserver(this); + gInventory.addObserver(this); + } } void LLLibraryOutfitsFetch::contentsDone(void) @@ -2199,7 +2212,6 @@ void LLLibraryOutfitsFetch::contentsDone(void) mOutfits[i].second); LLAppearanceManager::getInstance()->shallowCopyCategory(mOutfits[i].first, folder_id, NULL); - gInventory.notifyObservers(); } mOutfitsPopulated = true; } diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 7e0e8bfaa7..11dd48056c 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -103,15 +103,10 @@ #include "llworld.h" #include "pipeline.h" #include "lluictrlfactory.h" -#include "llboost.h" #include "llviewermedia.h" #include "llpluginclassmedia.h" #include "llteleporthistorystorage.h" -#include <boost/regex.hpp> - -//RN temporary includes for resolution switching -#include "llglheaders.h" const F32 MAX_USER_FAR_CLIP = 512.f; const F32 MIN_USER_FAR_CLIP = 64.f; @@ -193,7 +188,6 @@ bool callback_clear_browser_cache(const LLSD& notification, const LLSD& response bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater); bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater); -bool extractWindowSizeFromString(const std::string& instr, U32 &width, U32 &height); void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator); viewer_media_t get_web_media() @@ -273,23 +267,6 @@ bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFl } -// Extract from strings of the form "<width> x <height>", e.g. "640 x 480". -bool extractWindowSizeFromString(const std::string& instr, U32 &width, U32 &height) -{ - using namespace boost; - cmatch what; - const regex expression("([0-9]+) x ([0-9]+)"); - if (regex_match(instr.c_str(), what, expression)) - { - width = atoi(what[1].first); - height = atoi(what[2].first); - return true; - } - - width = height = 0; - return false; -} - void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator) { numerator = 0; @@ -499,13 +476,6 @@ void LLFloaterPreference::apply() } applyResolution(); - - // Only set window size if we're not in fullscreen mode - if(!gSavedSettings.getBOOL("WindowFullScreen")) - { - applyWindowSize(); - } - } void LLFloaterPreference::cancel() @@ -1264,20 +1234,6 @@ void LLFloaterPreference::onKeystrokeAspectRatio() getChild<LLCheckBoxCtrl>("aspect_auto_detect")->set(FALSE); } -void LLFloaterPreference::applyWindowSize() -{ - LLComboBox* ctrl_windowSize = getChild<LLComboBox>("windowsize combo"); - if (ctrl_windowSize->getVisible() && (ctrl_windowSize->getCurrentIndex() != -1)) - { - U32 width = 0; - U32 height = 0; - if (extractWindowSizeFromString(ctrl_windowSize->getValue().asString().c_str(), width,height)) - { - LLViewerWindow::movieSize(width, height); - } - } -} - void LLFloaterPreference::applyResolution() { LLComboBox* ctrl_aspect_ratio = getChild<LLComboBox>( "aspect_ratio"); @@ -1345,36 +1301,7 @@ void LLFloaterPreference::applyResolution() refresh(); } -void LLFloaterPreference::initWindowSizeControls(LLPanel* panelp) -{ - // Window size - // mWindowSizeLabel = getChild<LLTextBox>("WindowSizeLabel"); - LLComboBox* ctrl_window_size = panelp->getChild<LLComboBox>("windowsize combo"); - - // Look to see if current window size matches existing window sizes, if so then - // just set the selection value... - const U32 height = gViewerWindow->getWindowHeightRaw(); - const U32 width = gViewerWindow->getWindowWidthRaw(); - for (S32 i=0; i < ctrl_window_size->getItemCount(); i++) - { - U32 height_test = 0; - U32 width_test = 0; - ctrl_window_size->setCurrentByIndex(i); - if (extractWindowSizeFromString(ctrl_window_size->getValue().asString(), width_test, height_test)) - { - if ((height_test == height) && (width_test == width)) - { - return; - } - } - } - // ...otherwise, add a new entry with the current window height/width. - LLUIString resolution_label = panelp->getString("resolution_format"); - resolution_label.setArg("[RES_X]", llformat("%d", width)); - resolution_label.setArg("[RES_Y]", llformat("%d", height)); - ctrl_window_size->add(resolution_label, ADD_TOP); - ctrl_window_size->setCurrentByIndex(0); -} + void LLFloaterPreference::applyUIColor(LLUICtrl* ctrl, const LLSD& param) @@ -1433,53 +1360,8 @@ BOOL LLPanelPreference::postBuild() if(hasChild("aspect_ratio")) { - //============================================================================ - // Resolution -/* - S32 num_resolutions = 0; - LLWindow::LLWindowResolution* supported_resolutions = gViewerWindow->getWindow()->getSupportedResolutions(num_resolutions); - - S32 fullscreen_mode = num_resolutions - 1; - - LLComboBox*ctrl_full_screen = getChild<LLComboBox>( "fullscreen combo"); - LLUIString resolution_label = getString("resolution_format"); - - for (S32 i = 0; i < num_resolutions; i++) - { - resolution_label.setArg("[RES_X]", llformat("%d", supported_resolutions[i].mWidth)); - resolution_label.setArg("[RES_Y]", llformat("%d", supported_resolutions[i].mHeight)); - ctrl_full_screen->add( resolution_label, ADD_BOTTOM ); - } - - { - BOOL targetFullscreen; - S32 targetWidth; - S32 targetHeight; - - gViewerWindow->getTargetWindow(targetFullscreen, targetWidth, targetHeight); - - if (targetFullscreen) - { - fullscreen_mode = 0; // default to 800x600 - for (S32 i = 0; i < num_resolutions; i++) - { - if (targetWidth == supported_resolutions[i].mWidth - && targetHeight == supported_resolutions[i].mHeight) - { - fullscreen_mode = i; - } - } - ctrl_full_screen->setCurrentByIndex(fullscreen_mode); - } - else - { - // set to windowed mode - //fullscreen_mode = mCtrlFullScreen->getItemCount() - 1; - ctrl_full_screen->setCurrentByIndex(0); - } - } - */ - LLFloaterPreference::initWindowSizeControls(this); + // We used to set up fullscreen resolution and window size + // controls here, see LLFloaterWindowSize::initWindowSizeControls() if (gSavedSettings.getBOOL("FullScreenAutoDetectAspectRatio")) { diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 94108cb79a..74a53d673c 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -130,16 +130,12 @@ public: void onUpdateSliderText(LLUICtrl* ctrl, const LLSD& name); void onKeystrokeAspectRatio(); // void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator); -// bool extractWindowSizeFromString(const std::string& instr, U32 &width, U32 &height); void onCommitAutoDetectAspect(); void applyResolution(); - void applyWindowSize(); void applyUIColor(LLUICtrl* ctrl, const LLSD& param); void getUIColor(LLUICtrl* ctrl, const LLSD& param); - static void initWindowSizeControls(LLPanel* panelp); - void buildPopupLists(); static void refreshSkin(void* data); static void cleanupBadSetting(); diff --git a/indra/newview/llfloaterwindowsize.cpp b/indra/newview/llfloaterwindowsize.cpp new file mode 100644 index 0000000000..5519be6f08 --- /dev/null +++ b/indra/newview/llfloaterwindowsize.cpp @@ -0,0 +1,164 @@ +/** + * @file llfloaterwindowsize.cpp + * + * $LicenseInfo:firstyear=2001&license=viewergpl$ + * + * Copyright (c) 2001-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#include "llviewerprecompiledheaders.h" + +#include "llfloaterwindowsize.h" + +// Viewer includes +#include "llviewerwindow.h" + +// Linden library includes +#include "llcombobox.h" +#include "llfloater.h" +#include "llfloaterreg.h" +#include "lluictrl.h" + +// System libraries +#include <boost/regex.hpp> + +// Extract from strings of the form "<width> x <height>", e.g. "640 x 480". +bool extractWindowSizeFromString(const std::string& instr, U32 *width, U32 *height) +{ + boost::cmatch what; + // matches (any number)(any non-number)(any number) + const boost::regex expression("([0-9]+)[^0-9]+([0-9]+)"); + if (boost::regex_match(instr.c_str(), what, expression)) + { + *width = atoi(what[1].first); + *height = atoi(what[2].first); + return true; + } + + *width = 0; + *height = 0; + return false; +} + + +///---------------------------------------------------------------------------- +/// Class LLFloaterWindowSize +///---------------------------------------------------------------------------- +class LLFloaterWindowSize +: public LLFloater +{ + friend class LLFloaterReg; +private: + LLFloaterWindowSize(const LLSD& key); + virtual ~LLFloaterWindowSize(); + +public: + /*virtual*/ BOOL postBuild(); + void initWindowSizeControls(); + void onClickSet(); + void onClickCancel(); +}; + + +LLFloaterWindowSize::LLFloaterWindowSize(const LLSD& key) +: LLFloater(key) +{ + //LLUICtrlFactory::getInstance()->buildFloater(this, "floater_window_size.xml"); +} + +LLFloaterWindowSize::~LLFloaterWindowSize() +{ +} + +BOOL LLFloaterWindowSize::postBuild() +{ + center(); + initWindowSizeControls(); + getChild<LLUICtrl>("set_btn")->setCommitCallback( + boost::bind(&LLFloaterWindowSize::onClickSet, this)); + getChild<LLUICtrl>("cancel_btn")->setCommitCallback( + boost::bind(&LLFloaterWindowSize::onClickCancel, this)); + setDefaultBtn("set_btn"); + return TRUE; +} + +void LLFloaterWindowSize::initWindowSizeControls() +{ + LLComboBox* ctrl_window_size = getChild<LLComboBox>("window_size_combo"); + + // Look to see if current window size matches existing window sizes, if so then + // just set the selection value... + const U32 height = gViewerWindow->getWindowHeightRaw(); + const U32 width = gViewerWindow->getWindowWidthRaw(); + for (S32 i=0; i < ctrl_window_size->getItemCount(); i++) + { + U32 height_test = 0; + U32 width_test = 0; + ctrl_window_size->setCurrentByIndex(i); + std::string resolution = ctrl_window_size->getValue().asString(); + if (extractWindowSizeFromString(resolution, &width_test, &height_test)) + { + if ((height_test == height) && (width_test == width)) + { + return; + } + } + } + // ...otherwise, add a new entry with the current window height/width. + LLUIString resolution_label = getString("resolution_format"); + resolution_label.setArg("[RES_X]", llformat("%d", width)); + resolution_label.setArg("[RES_Y]", llformat("%d", height)); + ctrl_window_size->add(resolution_label, ADD_TOP); + ctrl_window_size->setCurrentByIndex(0); +} + +void LLFloaterWindowSize::onClickSet() +{ + LLComboBox* ctrl_window_size = getChild<LLComboBox>("window_size_combo"); + U32 width = 0; + U32 height = 0; + std::string resolution = ctrl_window_size->getValue().asString(); + if (extractWindowSizeFromString(resolution, &width, &height)) + { + LLViewerWindow::movieSize(width, height); + } + closeFloater(); +} + +void LLFloaterWindowSize::onClickCancel() +{ + closeFloater(); +} + +///---------------------------------------------------------------------------- +/// LLFloaterWindowSizeUtil +///---------------------------------------------------------------------------- +void LLFloaterWindowSizeUtil::registerFloater() +{ + LLFloaterReg::add("window_size", "floater_window_size.xml", + &LLFloaterReg::build<LLFloaterWindowSize>); + +} diff --git a/indra/newview/llfloaterwindowsize.h b/indra/newview/llfloaterwindowsize.h new file mode 100644 index 0000000000..fd9d17323a --- /dev/null +++ b/indra/newview/llfloaterwindowsize.h @@ -0,0 +1,41 @@ +/** + * @file llfloaterwindowsize.h + * + * $LicenseInfo:firstyear=2001&license=viewergpl$ + * + * Copyright (c) 2001-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#ifndef LLFLOATERWINDOWSIZE_H +#define LLFLOATERWINDOWSIZE_H + +// Allow user to set the window size for filming tutorials, machinima, etc +namespace LLFloaterWindowSizeUtil +{ + void registerFloater(); +} + +#endif diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 474d2ca21f..112b23d2df 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -206,7 +206,8 @@ LLFolderView::LLFolderView(const Params& p) mAutoOpenCandidate = NULL; mAutoOpenTimer.stop(); mKeyboardSelection = FALSE; - mIndentation = -LEFT_INDENTATION; // children start at indentation 0 + static LLUICachedControl<S32> indentation("FolderIndentation", 0); + mIndentation = -indentation; // children start at indentation 0 gIdleCallbacks.addFunction(idle, this); //clear label diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 720c2c7b1a..9d54aafd67 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -392,10 +392,11 @@ BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder, LLFolderView* roo // makes sure that this view and it's children are the right size. S32 LLFolderViewItem::arrange( S32* width, S32* height, S32 filter_generation) { + static LLUICachedControl<S32> indentation("FolderIndentation", 0); mIndentation = (getParentFolder() && getParentFolder()->getParentFolder() && getParentFolder()->getParentFolder()->getParentFolder()) - ? mParentFolder->getIndentation() + LEFT_INDENTATION + ? mParentFolder->getIndentation() + indentation : 0; if (mLabelWidthDirty) { diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 21e24c2a4d..6f8c738a59 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -93,7 +93,6 @@ public: static void initClass(); static void cleanupClass(); - // jamesdebug was LLUICtrl::Params struct Params : public LLInitParam::Block<Params, LLView::Params> { Optional<LLUIImage*> icon; @@ -111,7 +110,7 @@ public: // layout constants static const S32 LEFT_PAD = 5; - static const S32 LEFT_INDENTATION = 2; + // LEFT_INDENTATION is set via settings.xml FolderIndentation static const S32 ICON_PAD = 2; static const S32 ICON_WIDTH = 16; static const S32 TEXT_PAD = 1; diff --git a/indra/newview/llpreviewtexture.cpp b/indra/newview/llpreviewtexture.cpp index 26368fb0a8..a857e30d4f 100644 --- a/indra/newview/llpreviewtexture.cpp +++ b/indra/newview/llpreviewtexture.cpp @@ -419,12 +419,10 @@ void LLPreviewTexture::updateDimensions() view_height += info_height; S32 button_height = 0; - if (mShowKeepDiscard || mCopyToInv) { //mCopyToInvBtn - - // add space for buttons - view_height += (BTN_HEIGHT + CLIENT_RECT_VPAD) * 3; - button_height = (BTN_HEIGHT + PREVIEW_PAD) * 3; - } + + // add space for buttons + view_height += (BTN_HEIGHT + CLIENT_RECT_VPAD) * 3; + button_height = (BTN_HEIGHT + PREVIEW_PAD) * 3; view_width = llmax(view_width, getMinWidth()); view_height = llmax(view_height, getMinHeight()); diff --git a/indra/newview/llsidepaneliteminfo.cpp b/indra/newview/llsidepaneliteminfo.cpp index 1965e634b6..814508daa9 100644 --- a/indra/newview/llsidepaneliteminfo.cpp +++ b/indra/newview/llsidepaneliteminfo.cpp @@ -168,11 +168,13 @@ void LLSidepanelItemInfo::refresh() if (getIsEditing()) { setIsEditing(FALSE); - return; } } + + const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); + bool is_editable = item && (item->getUUID() != trash_id) && !gInventory.isObjectDescendentOf(item->getUUID(), trash_id); - if (!getIsEditing() || !item) + if (!getIsEditing() || !is_editable) { const std::string no_item_names[]={ "LabelItemName", @@ -210,7 +212,7 @@ void LLSidepanelItemInfo::refresh() } } - if (!item) + if (!is_editable) { const std::string no_edit_mode_names[]={ "BtnCreator", diff --git a/indra/newview/llvieweraudio.cpp b/indra/newview/llvieweraudio.cpp index e7f904023a..38103f9e41 100644 --- a/indra/newview/llvieweraudio.cpp +++ b/indra/newview/llvieweraudio.cpp @@ -211,19 +211,31 @@ void audio_update_wind(bool force_update) // if (force_update || (last_camera_water_height * camera_water_height) < 0.f) { + static LLUICachedControl<F32> rolloff("AudioLevelRolloff", 1.0f); if (camera_water_height < 0.f) { - gAudiop->setRolloffFactor(gSavedSettings.getF32("AudioLevelRolloff") * LL_ROLLOFF_MULTIPLIER_UNDER_WATER); + gAudiop->setRolloffFactor(rolloff * LL_ROLLOFF_MULTIPLIER_UNDER_WATER); } else { - gAudiop->setRolloffFactor(gSavedSettings.getF32("AudioLevelRolloff")); + gAudiop->setRolloffFactor(rolloff); } } - // this line rotates the wind vector to be listener (agent) relative - // Only use the agent's motion to compute wind noise, otherwise the world - // feels desolate on login when you are standing still. - gRelativeWindVec = gAgent.getFrameAgent().rotateToLocal( -gAgent.getVelocity() ); + + // Scale down the contribution of weather-simulation wind to the + // ambient wind noise. Wind velocity averages 3.5 m/s, with gusts to 7 m/s + // whereas steady-state avatar walk velocity is only 3.2 m/s. + // Without this the world feels desolate on first login when you are + // standing still. + static LLUICachedControl<F32> wind_level("AudioLevelWind", 0.5f); + LLVector3 scaled_wind_vec = gWindVec * wind_level; + + // Mix in the avatar's motion, subtract because when you walk north, + // the apparent wind moves south. + LLVector3 final_wind_vec = scaled_wind_vec - gAgent.getVelocity(); + + // rotate the wind vector to be listener (agent) relative + gRelativeWindVec = gAgent.getFrameAgent().rotateToLocal( final_wind_vec ); // don't use the setter setMaxWindGain() because we don't // want to screw up the fade-in on startup by setting actual source gain diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index 3a6c09f31f..23bdbc7381 100644 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -110,6 +110,7 @@ #include "llfloaterwater.h" #include "llfloaterwhitelistentry.h" #include "llfloaterwindlight.h" +#include "llfloaterwindowsize.h" #include "llfloaterworldmap.h" #include "llimfloatercontainer.h" #include "llinspectavatar.h" @@ -259,6 +260,7 @@ void LLViewerFloaterReg::registerFloaters() LLFloaterReg::add("voice_controls", "floater_voice_controls.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLCallFloater>); LLFloaterReg::add("whitelist_entry", "floater_whitelist_entry.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWhiteListEntry>); + LLFloaterWindowSizeUtil::registerFloater(); LLFloaterReg::add("world_map", "floater_world_map.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWorldMap>); // *NOTE: Please keep these alphabetized for easier merges diff --git a/indra/newview/llvoicechannel.cpp b/indra/newview/llvoicechannel.cpp index 18cdd23ed9..917d69fe16 100644 --- a/indra/newview/llvoicechannel.cpp +++ b/indra/newview/llvoicechannel.cpp @@ -278,10 +278,14 @@ void LLVoiceChannel::deactivate() if (callStarted()) { setState(STATE_HUNG_UP); - // mute the microphone if required when returning to the proximal channel - if (gSavedSettings.getBOOL("AutoDisengageMic") && sCurrentVoiceChannel == this) + + //Default mic is OFF when leaving voice calls + if (gSavedSettings.getBOOL("AutoDisengageMic") && + sCurrentVoiceChannel == this && + gVoiceClient->getUserPTTState()) { gSavedSettings.setBOOL("PTTCurrentlyEnabled", true); + gVoiceClient->inputUserControlState(true); } } @@ -498,6 +502,13 @@ void LLVoiceChannelGroup::activate() LLRecentPeople::instance().add(buddy_id); } #endif + + //Mic default state is OFF on initiating/joining Ad-Hoc/Group calls + if (gVoiceClient->getUserPTTState() && gVoiceClient->getPTTIsToggle()) + { + gVoiceClient->inputUserControlState(true); + } + } } @@ -811,6 +822,12 @@ void LLVoiceChannelP2P::activate() // Add the party to the list of people with which we've recently interacted. LLRecentPeople::instance().add(mOtherUserID); + + //Default mic is ON on initiating/joining P2P calls + if (!gVoiceClient->getUserPTTState() && gVoiceClient->getPTTIsToggle()) + { + gVoiceClient->inputUserControlState(true); + } } } diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp index c2d26a1971..899cc35238 100644 --- a/indra/newview/llvoiceclient.cpp +++ b/indra/newview/llvoiceclient.cpp @@ -5883,6 +5883,10 @@ void LLVoiceClient::setPTTIsToggle(bool PTTIsToggle) mPTTIsToggle = PTTIsToggle; } +bool LLVoiceClient::getPTTIsToggle() +{ + return mPTTIsToggle; +} void LLVoiceClient::setPTTKey(std::string &key) { diff --git a/indra/newview/llvoiceclient.h b/indra/newview/llvoiceclient.h index 347fae6156..724179847d 100644 --- a/indra/newview/llvoiceclient.h +++ b/indra/newview/llvoiceclient.h @@ -193,6 +193,7 @@ static void updatePosition(void); static bool voiceEnabled(); void setUsePTT(bool usePTT); void setPTTIsToggle(bool PTTIsToggle); + bool getPTTIsToggle(); void setPTTKey(std::string &key); void setEarLocation(S32 loc); void setVoiceVolume(F32 volume); diff --git a/indra/newview/skins/default/textures/icons/Parcel_Damage_Light_Alt.png b/indra/newview/skins/default/textures/icons/Parcel_Damage_Light_Alt.png Binary files differnew file mode 100644 index 0000000000..d72f02f708 --- /dev/null +++ b/indra/newview/skins/default/textures/icons/Parcel_Damage_Light_Alt.png diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index b5f6109b1b..cc87d5c105 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -172,6 +172,7 @@ with the same filename but different name <texture name="ForwardArrow_Press" file_name="icons/ForwardArrow_Press.png" preload="false" /> <texture name="Generic_Group" file_name="icons/Generic_Group.png" preload="false" /> + <texture name="icon_group.tga" file_name="icons/Generic_Group.png" preload="false" /> <texture name="Generic_Group_Large" file_name="icons/Generic_Group_Large.png" preload="false" /> <texture name="Generic_Object_Medium" file_name="icons/Generic_Object_Medium.png" preload="false" /> <texture name="Generic_Object_Small" file_name="icons/Generic_Object_Small.png" preload="false" /> @@ -314,6 +315,9 @@ with the same filename but different name <texture name="Notices_Unread" file_name="bottomtray/Notices_Unread.png" preload="true" /> + <texture name="NoEntryLines" file_name="world/NoEntryLines.png" use_mips="true" preload="false" /> + <texture name="NoEntryPassLines" file_name="world/NoEntryPassLines.png" use_mips="true" preload="false" /> + <texture name="Object_Cone" file_name="build/Object_Cone.png" preload="false" /> <texture name="Object_Cube" file_name="build/Object_Cube.png" preload="false" /> <texture name="Object_Cylinder" file_name="build/Object_Cylinder.png" preload="false" /> @@ -553,8 +557,8 @@ with the same filename but different name <texture name="TabTop_Right_Selected" file_name="containers/TabTop_Right_Selected.png" preload="false" /> <texture name="TabTop_Middle_Off" file_name="containers/TabTop_Middle_Off.png" preload="false" scale.left="8" scale.top="8" scale.right="120" scale.bottom="9" /> <texture name="TabTop_Middle_Selected" file_name="containers/TabTop_Middle_Selected.png" preload="false" scale.left="8" scale.top="8" scale.right="96" scale.bottom="9" /> - <texture name="TabTop_Left_Off" file_name="containers/TabTop_Left_Off.png" preload="false" scale.left="8" scale.top="8" scale.right="120" scale.bottom="9" /> - <texture name="TabTop_Left_Selected" file_name="containers/TabTop_Left_Selected.png" preload="false" scale.left="8" scale.top="8" scale.right="96" scale.bottom="9" /> + <texture name="TabTop_Left_Off" file_name="containers/TabTop_Left_Off.png" preload="false" scale.left="8" scale.top="8" scale.right="120" scale.bottom="9" /> + <texture name="TabTop_Left_Selected" file_name="containers/TabTop_Left_Selected.png" preload="false" scale.left="8" scale.top="8" scale.right="96" scale.bottom="9" /> <texture name="TaskPanel_Tab_Off" file_name="taskpanel/TaskPanel_Tab_Off.png" preload="false" scale.left="4" scale.top="29" scale.right="36" scale.bottom="4" /> <texture name="TaskPanel_Tab_Selected" file_name="taskpanel/TaskPanel_Tab_Selected.png" preload="false" scale.left="5" scale.top="30" scale.right="36" scale.bottom="5" /> @@ -641,28 +645,12 @@ with the same filename but different name <texture name="PowerOff_Over" file_name="icons/PowerOff_Over.png" preload="false" /> <texture name="PowerOff_Press" file_name="icons/PowerOff_Press.png" preload="false" /> - <!--WARNING OLD ART *do not use*--> - - <texture name="btn_chatbar.tga" scale.left="20" scale.top="24" scale.right="44" scale.bottom="0" /> - <texture name="btn_chatbar_selected.tga" scale.left="20" scale.top="24" scale.right="44" scale.bottom="0" /> - - <texture name="cam_rotate_out.tga" preload="false" /> - <texture name="cam_rotate_in.tga" preload="false" /> - <texture name="cam_zoom_out.tga" preload="false" /> - <texture name="cam_zoom_plus_in.tga" preload="false" /> - <texture name="cam_zoom_minus_in.tga" preload="false" /> - + <!--WARNING OLD ART BELOW *do not use*--> <texture name="icn_chatbar.tga" /> - <texture name="icn_media-pause.tga" /> - <texture name="icn_media-play.tga" /> - <texture name="icn_music-play.tga" /> - <texture name="icn_music-pause.tga" /> <texture name="icn_media_web.tga" preload="true" /> <texture name="icn_media_movie.tga" preload="true" /> - <texture name="icn_speaker-muted_dark.tga" /> <texture name="icn_speaker_dark.tga" /> - <texture name="icn_voice-localchat.tga" /> <texture name="icn_voice-groupfocus.tga" /> <texture name="icn_voice-pvtfocus.tga" /> @@ -672,67 +660,30 @@ with the same filename but different name <texture name="jump_right_out.tga" /> <texture name="jump_right_in.tga" /> - <texture name="move_forward_out.tga" preload="false" /> - <texture name="move_forward_in.tga" preload="false" /> - <texture name="move_left_out.tga" preload="false" /> - <texture name="move_left_in.tga" preload="false" /> - <texture name="move_turn_left_out.tga" preload="false" /> - <texture name="move_turn_left_in.tga" preload="false" /> - <texture name="move_turn_right_out.tga" preload="false" /> - <texture name="move_turn_right_in.tga" preload="false" /> - <texture name="move_right_out.tga" preload="false" /> - <texture name="move_right_in.tga" preload="false" /> - <texture name="move_up_in.tga" preload="false" /> - <texture name="move_up_out.tga" preload="false" /> - <texture name="move_down_in.tga" preload="false" /> - <texture name="move_down_out.tga" preload="false" /> - <texture name="up_arrow.tga" file_name="up_arrow.png" /> <texture name="down_arrow.tga" file_name="down_arrow.png" /> + <texture name="arrow_down.tga" /> <texture name="tearoffbox.tga" /> <texture name="tearoff_pressed.tga" /> <texture name="icn_label_music.tga" /> <texture name="icn_label_media.tga" /> - <texture name="arrow_down.tga" /> - <texture name="cloud-particle.j2c" use_mips="true" /> - - <texture name="skin_thumbnail_default.png" preload="false" /> - - <texture name="icn_textfield_enabled.tga" scale.left="5" scale.top="5" scale.bottom="5" scale.right="5" /> <texture name="icn_rounded-text-field.tga" scale.left="14" scale.bottom="16" scale.top="16" scale.right="114" /> - <texture name="toolbar_btn_enabled.tga" scale.left="7" scale.top="32" scale.right="121" scale.bottom="0" /> - <texture name="toolbar_btn_disabled.tga" scale.left="7" scale.top="32" scale.right="121" scale.bottom="0" /> - <texture name="toolbar_btn_selected.tga" scale.left="7" scale.top="32" scale.right="121" scale.bottom="0" /> - <texture name="toggle_button_off" file_name="toggle_button_off.png" preload="true" /> <texture name="toggle_button_selected" file_name="toggle_button_selected.png" preload="true" /> <texture name="sm_rounded_corners_simple.tga" scale.left="4" scale.top="4" scale.bottom="4" scale.right="4" /> - <texture name="rounded_square.tga" file_name="rounded_square.j2c" preload="true" scale.left="16" scale.top="16" scale.right="112" scale.bottom="16" /> - - <texture name="rounded_square_soft.tga" file_name="rounded_square_soft.j2c" preload="true" scale.left="16" scale.top="16" scale.right="112" scale.bottom="16" /> - - <texture name="toolbar_tab.tga" preload="true" scale.left="6" scale.top="42" scale.right="104" scale.bottom="8" /> - <texture name="toolbar_bg.tga" preload="true" scale.left="6" scale.top="42" scale.right="96" scale.bottom="16" /> - - <texture name="tab_top_blue.tga" preload="false" scale.left="8" scale.top="8" scale.right="120" scale.bottom="9" /> - <texture name="tab_top_selected_blue.tga" preload="false" scale.left="8" scale.top="8" scale.right="96" scale.bottom="9" /> - <texture name="color_swatch_alpha.tga" preload="true" /> <texture name="button_anim_pause.tga" /> <texture name="button_anim_pause_selected.tga" /> <texture name="button_anim_play.tga" /> <texture name="button_anim_play_selected.tga" /> - <texture name="button_anim_stop.tga" /> - <texture name="button_anim_stop_selected.tga" /> <texture name="crosshairs.tga" /> <texture name="direction_arrow.tga" /> - <texture name="foot_shadow.j2c" use_mips="true" /> <texture name="icon_auction.tga" /> <texture name="icon_avatar_offline.tga" /> @@ -742,10 +693,6 @@ with the same filename but different name <texture name="icon_event.tga" /> <texture name="icon_event_mature.tga" /> <texture name="icon_for_sale.tga" /> - <texture name="icon_group.tga" /> - <texture name="icon_groupnotice.tga" /> - <texture name="icon_groupnoticeinventory.tga" /> - <texture name="icon_place.tga" /> <texture name="icon_place_for_sale.tga" /> <texture name="icon_popular.tga" /> <texture name="icon_top_pick.tga" /> @@ -768,8 +715,6 @@ with the same filename but different name <texture name="media_icon.tga" file_name="icn_label_media.tga" /> <texture name="music_icon.tga" file_name="icn_label_music.tga" /> - <texture name="NoEntryLines" file_name="world/NoEntryLines.png" use_mips="true" preload="false" /> - <texture name="NoEntryPassLines" file_name="world/NoEntryPassLines.png" use_mips="true" preload="false" /> <texture name="notify_tip_icon.tga" /> <texture name="notify_caution_icon.tga" /> @@ -779,13 +724,11 @@ with the same filename but different name <texture name="pixiesmall.j2c" use_mips="true" /> <texture name="script_error.j2c" use_mips="true" /> <texture name="silhouette.j2c" use_mips="true" /> + <texture name="foot_shadow.j2c" use_mips="true" /> + <texture name="cloud-particle.j2c" use_mips="true" /> <texture name="status_no_build.tga" /> <texture name="status_voice.tga" /> - <texture name="status_buy_currency.tga" /> - <texture name="status_buy_currency_pressed.tga" /> - <texture name="status_buy_land.tga" /> - <texture name="status_buy_land_pressed.tga" /> <texture name="status_no_fly.tga" /> <texture name="status_health.tga" /> <texture name="status_no_push.tga" /> @@ -812,23 +755,5 @@ with the same filename but different name <texture name="default_profile_picture.j2c" /> <texture name="locked_image.j2c" /> - <texture name="media_btn_back.png" /> - <texture name="media_btn_done.png" /> - <texture name="media_btn_forward.png" /> - <texture name="media_btn_home.png" /> - <texture name="media_btn_newwindow.png" /> - <texture name="media_btn_optimalzoom.png" /> - <texture name="media_btn_reload.png" /> - <texture name="media_btn_scrolldown.png" /> - <texture name="media_btn_scrollleft.png" /> - <texture name="media_btn_scrollright.png" /> - <texture name="media_btn_scrollup.png" /> - <texture name="media_btn_stoploading.png" /> - <texture name="media_panel_divider.png" /> - <texture name="media_floater_border_16.png" scale_top="12" scale_left="4" scale_bottom="4" scale_right="12" /> - - <texture name="media_panel_bg.png" preload="true" scale_left="9" scale_top="9" scale_right="9" scale_bottom="9" /> - <texture name="media_panel_hoverrectangle.png" preload="true" scale_left="9" scale_top="9" scale_right="9" scale_bottom="9" /> - </textures> diff --git a/indra/newview/skins/default/xui/en/favorites_bar_button.xml b/indra/newview/skins/default/xui/en/favorites_bar_button.xml index dcf9847adb..90105f92fd 100644 --- a/indra/newview/skins/default/xui/en/favorites_bar_button.xml +++ b/indra/newview/skins/default/xui/en/favorites_bar_button.xml @@ -23,6 +23,8 @@ pad_left="11" pad_right="7" tab_stop="false" + pad_right="10" + pad_left="10" top="0" use_ellipses="true" width="140" /> diff --git a/indra/newview/skins/default/xui/en/floater_preview_texture.xml b/indra/newview/skins/default/xui/en/floater_preview_texture.xml index 552902d1d9..0d155fb01e 100644 --- a/indra/newview/skins/default/xui/en/floater_preview_texture.xml +++ b/indra/newview/skins/default/xui/en/floater_preview_texture.xml @@ -64,7 +64,7 @@ height="16" layout="topleft" left_delta="-110" - name="dimensions" + name="aspect_ratio" top_pad="5" width="200"> Preview aspect ratio @@ -112,7 +112,7 @@ label="OK" layout="topleft" left="6" - name="keep" + name="Keep" top_pad="5" width="100" /> <button @@ -121,7 +121,7 @@ label="Cancel" layout="topleft" left_pad="5" - name="discard" + name="Discard" top_delta="0" width="100" /> <button diff --git a/indra/newview/skins/default/xui/en/floater_window_size.xml b/indra/newview/skins/default/xui/en/floater_window_size.xml new file mode 100644 index 0000000000..355d257785 --- /dev/null +++ b/indra/newview/skins/default/xui/en/floater_window_size.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<floater + can_minimize="false" + can_resize="false" + height="105" + layout="topleft" + name="window_size" + title="WINDOW SIZE" + width="205"> + <string name="resolution_format">[RES_X] x [RES_Y]</string> + <text + follows="top|left" + font="SansSerif" + height="16" + left="15" + top="10" + name="windowsize_text" + width="280"> + Set window size: + </text> + <combo_box + allow_text_entry="true" + height="23" + follows="left|top" + left_delta="0" + max_chars="20" + name="window_size_combo" + tool_tip="width x height" + top_pad="5" + width="179"> + <combo_box.item + label="1000 x 700 (default)" + name="item0" + value="1000 x 700" /> + <combo_box.item + label="1024 x 768" + name="item1" + value="1024 x 768" /> + <combo_box.item + label="1280 x 720 (720p)" + name="item2" + value="1280 x 720" /> + <combo_box.item + label="1920 x 1080 (1080p)" + name="item3" + value="1920 x 1080" /> + </combo_box> + <button + follows="right|bottom" + height="23" + label="Set" + left_delta="0" + name="set_btn" + top_pad="10" + width="85" /> + <button + follows="right|bottom" + height="23" + label="Cancel" + left_pad="5" + name="cancel_btn" + top_delta="0" + width="85" /> +</floater> diff --git a/indra/newview/skins/default/xui/en/inspect_avatar.xml b/indra/newview/skins/default/xui/en/inspect_avatar.xml index 996d0f1b72..2f2964c42b 100644 --- a/indra/newview/skins/default/xui/en/inspect_avatar.xml +++ b/indra/newview/skins/default/xui/en/inspect_avatar.xml @@ -54,7 +54,7 @@ width="175" use_ellipses="true" /> <text - follows="all" + follows="left|top|right" height="35" left="8" name="user_details" diff --git a/indra/newview/skins/default/xui/en/menu_login.xml b/indra/newview/skins/default/xui/en/menu_login.xml index 7a0b11872a..690167bc33 100644 --- a/indra/newview/skins/default/xui/en/menu_login.xml +++ b/indra/newview/skins/default/xui/en/menu_login.xml @@ -233,6 +233,13 @@ parameter="RegInClient" /> </menu_item_check> <menu_item_separator /> + <menu_item_call + label="Set Window Size..." + name="Set Window Size..."> + <menu_item_call.on_click + function="Floater.Show" + parameter="window_size" /> + </menu_item_call> <menu_item_call label="Show TOS" name="TOS"> diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 0640ae21de..4e495bab3f 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -1119,6 +1119,13 @@ <menu_item_call.on_click function="View.DefaultUISize" /> </menu_item_call> + <menu_item_call + label="Set Window Size..." + name="Set Window Size..."> + <menu_item_call.on_click + function="Floater.Show" + parameter="window_size" /> + </menu_item_call> <menu_item_separator/> <menu_item_check label="Limit Select Distance" diff --git a/indra/newview/skins/default/xui/en/panel_bottomtray.xml b/indra/newview/skins/default/xui/en/panel_bottomtray.xml index f88f8264b5..b92aa10ffc 100644 --- a/indra/newview/skins/default/xui/en/panel_bottomtray.xml +++ b/indra/newview/skins/default/xui/en/panel_bottomtray.xml @@ -341,7 +341,7 @@ as for parent layout_panel (chiclet_list_panel) to resize bottom tray properly. top="4" width="35"> <!-- -Emulate 4 states of button by background images, see detains in EXT-3147. The same should be for notification_well button +Emulate 4 states of button by background images, see details in EXT-3147. The same should be for notification_well button xml attribute Description image_unselected "Unlit" - there are no new messages image_selected "Unlit" + "Selected" - there are no new messages and the Well is open @@ -364,6 +364,7 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well name="Unread IM messages" pad_left="0" pad_right="0" + tool_tip="Conversations" width="35" > <button.init_callback function="Button.SetDockableFloaterToggle" @@ -409,6 +410,7 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well image_overlay="Notices_Unread" image_overlay_alignment="center" pad_right="5" + tool_tip="Notifications" width="35" > <button.init_callback function="Button.SetDockableFloaterToggle" diff --git a/indra/newview/skins/default/xui/en/panel_landmark_info.xml b/indra/newview/skins/default/xui/en/panel_landmark_info.xml index 744ee43f57..67a4edbf32 100644 --- a/indra/newview/skins/default/xui/en/panel_landmark_info.xml +++ b/indra/newview/skins/default/xui/en/panel_landmark_info.xml @@ -239,7 +239,6 @@ use_ellipses="true" width="290" /> <line_editor - background_image_disabled="task_panel_background.png" follows="left|top|right" height="22" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/panel_navigation_bar.xml b/indra/newview/skins/default/xui/en/panel_navigation_bar.xml index 005d7953fe..0f9b095d8c 100644 --- a/indra/newview/skins/default/xui/en/panel_navigation_bar.xml +++ b/indra/newview/skins/default/xui/en/panel_navigation_bar.xml @@ -149,7 +149,7 @@ <favorites_bar follows="left|right|top" - font="SansSerif" + font="SansSerifSmall" height="15" layout="topleft" left="0" diff --git a/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml index 426a2b1f9e..17651b8caa 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml @@ -10,10 +10,6 @@ name="advanced" top="1" width="517"> - <panel.string - name="resolution_format"> - [RES_X] x [RES_Y] - </panel.string> <panel.string name="aspect_ratio_text"> [NUM]:[DEN] 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 97790535d0..677d0de243 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 @@ -29,12 +29,14 @@ height="75" layout="topleft" left="0" + mouse_opaque="false" orientation="horizontal" top="100"> <!-- outer layout_panels center the inner one --> <layout_panel name="left_bookend" width="0" + mouse_opaque="false" layout="topleft" user_resize="false" /> <layout_panel @@ -42,6 +44,7 @@ auto_resize="false" user_resize="false" layout="topleft" + mouse_opaque="false" min_width="22" width="22" top="4"> diff --git a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml index 790f8afd3a..4a992dadd9 100644 --- a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml +++ b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml @@ -149,7 +149,7 @@ width="20" /> <text type="string" - follows="left|right" + follows="left|right|top" font="SansSerifSmall" height="15" layout="topleft" @@ -191,7 +191,7 @@ width="20" /> <text type="string" - follows="left|right" + follows="left|right|top" font="SansSerifSmall" height="15" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/widgets/location_input.xml b/indra/newview/skins/default/xui/en/widgets/location_input.xml index 7ac44b412d..1368c6826d 100644 --- a/indra/newview/skins/default/xui/en/widgets/location_input.xml +++ b/indra/newview/skins/default/xui/en/widgets/location_input.xml @@ -95,12 +95,11 @@ follows="right|top" image_name="Parcel_ScriptsNo_Light" /> - <!-- NOTE: Placeholder icon, there is no dark grayscale version --> <damage_icon name="damage_icon" - width="22" - height="18" - top="21" + width="20" + height="16" + top="20" follows="right|top" image_name="Parcel_Damage_Light" /> |