diff --git a/indra/llui/llaccordionctrl.cpp b/indra/llui/llaccordionctrl.cpp
index 2ed1082f569e6232ca1819b6c0ca0c1bc059ac86..cdcf780d2e08d058e19f284b645e4ca006fa0117 100644
--- a/indra/llui/llaccordionctrl.cpp
+++ b/indra/llui/llaccordionctrl.cpp
@@ -372,11 +372,33 @@ void	LLAccordionCtrl::arrangeSinge()
 		}
 		else
 		{
-			panel_height = expanded_height;
+			if(mFitParent)
+			{
+				panel_height = expanded_height;
+			}
+			else
+			{
+				if(accordion_tab->getAccordionView())
+				{
+					panel_height = accordion_tab->getAccordionView()->getRect().getHeight() + 
+						accordion_tab->getHeaderHeight() + 2*BORDER_MARGIN;
+				}
+				else
+				{
+					panel_height = accordion_tab->getRect().getHeight();
+				}
+			}
 		}
+
+		// make sure at least header is shown
+		panel_height = llmax(panel_height, accordion_tab->getHeaderHeight());
+
 		ctrlSetLeftTopAndSize(mAccordionTabs[i], panel_left, panel_top, panel_width, panel_height);
 		panel_top-=mAccordionTabs[i]->getRect().getHeight();
 	}
+
+	show_hide_scrollbar(getRect().getWidth(), getRect().getHeight());
+	updateLayout(getRect().getWidth(), getRect().getHeight());
 }
 
 void	LLAccordionCtrl::arrangeMultiple()
diff --git a/indra/llui/llscrollingpanellist.cpp b/indra/llui/llscrollingpanellist.cpp
index 4f55c0507c5defd8666b8262c4299ee861a9d0c1..b7840d1b59f906aaac8d8128ef122c27d9fa547d 100644
--- a/indra/llui/llscrollingpanellist.cpp
+++ b/indra/llui/llscrollingpanellist.cpp
@@ -47,7 +47,12 @@ void LLScrollingPanelList::clearPanels()
 {
 	deleteAllChildren();
 	mPanelList.clear();
-	reshape( 1, 1, FALSE );
+
+	LLRect rc = getRect();
+	rc.setLeftTopAndSize(rc.mLeft, rc.mTop, 1, 1);
+	setRect(rc);
+
+	notifySizeChanged(rc.getHeight());
 }
 
 S32 LLScrollingPanelList::addPanel( LLScrollingPanel* panel )
@@ -67,7 +72,11 @@ S32 LLScrollingPanelList::addPanel( LLScrollingPanel* panel )
 		max_width = llmax( max_width, childp->getRect().getWidth() );
 		cur_gap = GAP_BETWEEN_PANELS;
 	}
-	reshape( max_width, total_height, FALSE );
+ 	LLRect rc = getRect();
+ 	rc.setLeftTopAndSize(rc.mLeft, rc.mTop, max_width, total_height);
+ 	setRect(rc);
+
+	notifySizeChanged(rc.getHeight());
 
 	// Reposition each of the child views
 	S32 cur_y = total_height;
@@ -131,7 +140,11 @@ void LLScrollingPanelList::removePanel( U32 panel_index )
 		max_width = llmax( max_width, childp->getRect().getWidth() );
 		cur_gap = GAP_BETWEEN_PANELS;
 	}
-	reshape( max_width, total_height, FALSE );
+	LLRect rc = getRect();
+	rc.setLeftTopAndSize(rc.mLeft, rc.mTop, max_width, total_height);
+	setRect(rc);
+
+	notifySizeChanged(rc.getHeight());
 
 	// Reposition each of the child views
 	S32 cur_y = total_height;
@@ -200,3 +213,12 @@ void LLScrollingPanelList::draw()
 	LLUICtrl::draw();
 }
 
+void LLScrollingPanelList::notifySizeChanged(S32 height)
+{
+	LLSD info;
+	info["action"] = "size_changes";
+	info["height"] = height;
+	notifyParent(info);
+}
+
+// EOF
diff --git a/indra/llui/llscrollingpanellist.h b/indra/llui/llscrollingpanellist.h
index 3abfbcbbe7800ffcb483f5e2485859508556c2df..5f1996159b3990d241cfc15a9f6066abafc4c326 100644
--- a/indra/llui/llscrollingpanellist.h
+++ b/indra/llui/llscrollingpanellist.h
@@ -61,7 +61,6 @@ class LLScrollingPanelList : public LLUICtrl
 		Params()
 		{
 			name = "scrolling_panel_list";
-			follows.flags = FOLLOWS_LEFT | FOLLOWS_BOTTOM;
 		}
 	};
 	LLScrollingPanelList(const Params& p)
@@ -86,6 +85,11 @@ class LLScrollingPanelList : public LLUICtrl
 private:
 	void				updatePanelVisiblilty();
 
+	/**
+	 * Notify parent about size change, makes sense when used inside accordion
+	 */
+	void				notifySizeChanged(S32 height);
+
 	panel_list_t		mPanelList;
 };
 
diff --git a/indra/llui/llurlentry.cpp b/indra/llui/llurlentry.cpp
index c38e38c90007614e4011cfeebf311276ac98631e..d7666ca4c3c072aa374f1ea7706724bbc577ad7e 100644
--- a/indra/llui/llurlentry.cpp
+++ b/indra/llui/llurlentry.cpp
@@ -499,6 +499,35 @@ std::string LLUrlEntryInventory::getLabel(const std::string &url, const LLUrlLab
 	return LLURI::unescape(label.empty() ? url : label);
 }
 
+//
+// LLUrlEntryObjectIM Describes a Second Life inspector for the object Url, e.g.,
+// secondlife:///app/objectim/7bcd7864-da6b-e43f-4486-91d28a28d95b?name=Object&owner=3de548e1-57be-cfea-2b78-83ae3ad95998&slurl=Danger!%20Danger!/200/200/30/&groupowned=1
+//
+LLUrlEntryObjectIM::LLUrlEntryObjectIM()
+{
+	mPattern = boost::regex("secondlife:///app/objectim/[\\da-f-]+\?.*",
+							boost::regex::perl|boost::regex::icase);
+	mMenuName = "menu_url_objectim.xml";
+}
+
+std::string LLUrlEntryObjectIM::getLabel(const std::string &url, const LLUrlLabelCallback &cb)
+{
+	LLURI uri(url);
+	LLSD query_map = uri.queryMap();
+	if (query_map.has("name"))
+		return query_map["name"];
+	return unescapeUrl(url);
+}
+
+std::string LLUrlEntryObjectIM::getLocation(const std::string &url) const
+{
+	LLURI uri(url);
+	LLSD query_map = uri.queryMap();
+	if (query_map.has("slurl"))
+		return query_map["slurl"];
+	return LLUrlEntryBase::getLocation(url);
+}
+
 ///
 /// LLUrlEntryParcel Describes a Second Life parcel Url, e.g.,
 /// secondlife:///app/parcel/0000060e-4b39-e00b-d0c3-d98b1934e3a8/about
diff --git a/indra/llui/llurlentry.h b/indra/llui/llurlentry.h
index 84d09687798ef8bed89e66092844d710d1662ea9..29575d752ced36fca7fa35713084028004b41d1d 100644
--- a/indra/llui/llurlentry.h
+++ b/indra/llui/llurlentry.h
@@ -201,6 +201,18 @@ class LLUrlEntryInventory : public LLUrlEntryBase
 private:
 };
 
+///
+/// LLUrlEntryObjectIM Describes a Second Life inspector for the object Url, e.g.,
+/// secondlife:///app/objectim/7bcd7864-da6b-e43f-4486-91d28a28d95b?name=Object&owner=3de548e1-57be-cfea-2b78-83ae3ad95998&slurl=Danger!%20Danger!/200/200/30/&groupowned=1
+///
+class LLUrlEntryObjectIM : public LLUrlEntryBase
+{
+public:
+	LLUrlEntryObjectIM();
+	/*virtual*/ std::string getLabel(const std::string &url, const LLUrlLabelCallback &cb);
+	/*virtual*/ std::string getLocation(const std::string &url) const;
+private:
+};
 
 ///
 /// LLUrlEntryParcel Describes a Second Life parcel Url, e.g.,
diff --git a/indra/llui/llurlregistry.cpp b/indra/llui/llurlregistry.cpp
index faa02e19040e203a4bb1fcd6ffcb417ccc827330..7e09a5a919bb260ef0706af061ebfb05d8360981 100644
--- a/indra/llui/llurlregistry.cpp
+++ b/indra/llui/llurlregistry.cpp
@@ -55,6 +55,7 @@ LLUrlRegistry::LLUrlRegistry()
 	registerUrl(new LLUrlEntryWorldMap());
 	registerUrl(new LLUrlEntryPlace());
 	registerUrl(new LLUrlEntryInventory());
+	registerUrl(new LLUrlEntryObjectIM());
 	//LLUrlEntrySL and LLUrlEntrySLLabel have more common pattern, 
 	//so it should be registered in the end of list
 	registerUrl(new LLUrlEntrySL());
diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp
index 1e404d611cd5dc1ff9276106ddcf70c0a2f0a744..31feabe722e5b38ac48e6dfd20771280255ff263 100644
--- a/indra/newview/llchathistory.cpp
+++ b/indra/newview/llchathistory.cpp
@@ -93,7 +93,7 @@ class LLObjectIMHandler : public LLCommandHandler
 		payload["object_id"] = object_id;
 		payload["owner_id"] = query_map["owner"];
 		payload["name"] = query_map["name"];
-		payload["slurl"] = query_map["slurl"];
+		payload["slurl"] = LLWeb::escapeURL(query_map["slurl"]);
 		payload["group_owned"] = query_map["groupowned"];
 		LLFloaterReg::showInstance("inspect_remote_object", payload);
 		return true;
@@ -632,7 +632,14 @@ void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LL
 
 	if (use_plain_text_chat_history)
 	{
-		mEditor->appendText("[" + chat.mTimeStr + "] ", mEditor->getText().size() != 0, style_params);
+		LLStyle::Params timestamp_style(style_params);
+		if (!message_from_log)
+		{
+			LLColor4 timestamp_color = LLUIColorTable::instance().getColor("ChatTimestampColor");
+			timestamp_style.color(timestamp_color);
+			timestamp_style.readonly_color(timestamp_color);
+		}
+		mEditor->appendText("[" + chat.mTimeStr + "] ", mEditor->getText().size() != 0, timestamp_style);
 
 		if (utf8str_trim(chat.mFromName).size() != 0)
 		{
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index 3a73037ae8ffcc6195eb19594c26665864aa109d..804ef609ec47fbee3ca42d223976bc960b77b52a 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -501,13 +501,15 @@ void LLFloaterPreference::onOpen(const LLSD& key)
 		// if they're not adult or a god, they shouldn't see the adult selection, so delete it
 		if (!gAgent.isAdult() && !gAgent.isGodlike())
 		{
-			// we're going to remove the adult entry from the combo. This obviously depends
-			// on the order of items in the XML file, but there doesn't seem to be a reasonable
-			// way to depend on the field in XML called 'name'.
-			maturity_combo->remove(0);
+			// we're going to remove the adult entry from the combo
+			LLScrollListCtrl* maturity_list = maturity_combo->findChild<LLScrollListCtrl>("ComboBox");
+			if (maturity_list)
+			{
+				maturity_list->deleteItems(LLSD(SIM_ACCESS_ADULT));
+			}
 		}
 		childSetVisible("maturity_desired_combobox", true);
-		childSetVisible("maturity_desired_textbox", false);		
+		childSetVisible("maturity_desired_textbox", false);
 	}
 	else
 	{
diff --git a/indra/newview/lllocationinputctrl.cpp b/indra/newview/lllocationinputctrl.cpp
index 3b4a4a1344f7fd96f65e481be023355e9dbbafeb..936e6ed31683d56d306886e2bf19c27a4e236ec9 100644
--- a/indra/newview/lllocationinputctrl.cpp
+++ b/indra/newview/lllocationinputctrl.cpp
@@ -390,8 +390,8 @@ LLLocationInputCtrl::LLLocationInputCtrl(const LLLocationInputCtrl::Params& p)
 
 	mAddLandmarkTooltip = LLTrans::getString("LocationCtrlAddLandmarkTooltip");
 	mEditLandmarkTooltip = LLTrans::getString("LocationCtrlEditLandmarkTooltip");
-	getChild<LLView>("Location History")->setToolTip(LLTrans::getString("LocationCtrlComboBtnTooltip"));
-	getChild<LLView>("Place Information")->setToolTip(LLTrans::getString("LocationCtrlInfoBtnTooltip"));
+	mButton->setToolTip(LLTrans::getString("LocationCtrlComboBtnTooltip"));
+	mInfoBtn->setToolTip(LLTrans::getString("LocationCtrlInfoBtnTooltip"));
 }
 
 LLLocationInputCtrl::~LLLocationInputCtrl()
diff --git a/indra/newview/llpaneleditwearable.cpp b/indra/newview/llpaneleditwearable.cpp
index 805016f08934bda159e45b7411d4dca590b77f33..c0528da9996c24f2e8fcf989762c576eaa9d2745 100644
--- a/indra/newview/llpaneleditwearable.cpp
+++ b/indra/newview/llpaneleditwearable.cpp
@@ -489,7 +489,6 @@ void LLPanelEditWearable::initializePanel()
 
 		updateScrollingPanelUI();
 	}
-	
 }
 
 void LLPanelEditWearable::updateScrollingPanelUI()
@@ -640,14 +639,9 @@ void LLPanelEditWearable::buildParamList(LLScrollingPanelList *panel_list, value
 		{
 			LLPanel::Params p;
 			p.name("LLScrollingPanelParam");
-			p.rect(LLRect(0, LLScrollingPanelParam::PARAM_PANEL_HEIGHT, LLScrollingPanelParam::PARAM_PANEL_WIDTH, 0 ));
 			LLScrollingPanelParam* panel_param = new LLScrollingPanelParam( p, NULL, (*it).second, TRUE, this->getWearable());
 			height = panel_list->addPanel( panel_param );
 		}
-	
-		S32 width = tab->getRect().getWidth();
-	
-		tab->reshape(width,height + tab->getHeaderHeight()+10,FALSE);
 	}
 }
 
diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp
index ba22adc01c128fdbc1f0b61534028ee6cfe9c781..2b25c544e38a2d2c4bf9d5325641dcb24a79a1e6 100644
--- a/indra/newview/llpaneloutfitedit.cpp
+++ b/indra/newview/llpaneloutfitedit.cpp
@@ -413,7 +413,11 @@ void LLPanelOutfitEdit::onLookItemSelectionChange(void)
 {	
 	S32 left_offset = -4;
 	S32 top_offset = -10;
-	LLRect rect = mLookContents->getLastSelectedItem()->getRect();
+	LLScrollListItem* item = mLookContents->getLastSelectedItem();
+	if (!item)
+		return;
+
+	LLRect rect = item->getRect();
 	LLRect btn_rect(
 					left_offset + rect.mRight - 50,
 					top_offset  + rect.mTop,
diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp
index b9514340108a98be23c4d99ff5a1a39955a94c88..a80687da4deddbaf01c812f3d8068aba8b9af921 100644
--- a/indra/newview/llsidepanelappearance.cpp
+++ b/indra/newview/llsidepanelappearance.cpp
@@ -297,6 +297,8 @@ void LLSidepanelAppearance::toggleWearableEditPanel(BOOL visible, LLWearable *we
 		return;
 	}
 
+	mCurrOutfitPanel->setVisible(!visible);
+
 	mEditWearable->setVisible(visible);
 	mEditWearable->setWearable(wearable);
 	mFilterEditor->setVisible(!visible);
diff --git a/indra/newview/lltoast.cpp b/indra/newview/lltoast.cpp
index 60a89c02e4c71c97f5b7e3e8c84cfa0d8148c294..60657d3fa7ee1eed2716da2882db8841594dcc52 100644
--- a/indra/newview/lltoast.cpp
+++ b/indra/newview/lltoast.cpp
@@ -41,6 +41,16 @@
 
 using namespace LLNotificationsUI;
 
+/*virtual*/
+BOOL LLToastLifeTimer::tick()
+{
+	if (mEventTimer.hasExpired())
+	{
+		mToast->expire();
+	}
+	return FALSE;
+}
+
 //--------------------------------------------------------------------------
 LLToast::Params::Params() 
 :	can_fade("can_fade", true),
@@ -57,7 +67,6 @@ LLToast::Params::Params()
 LLToast::LLToast(const LLToast::Params& p) 
 :	LLModalDialog(LLSD(), p.is_modal),
 	mPanel(p.panel), 
-	mToastLifetime(p.lifetime_secs),
 	mToastFadingTime(p.fading_time_secs),
 	mNotificationID(p.notif_id),  
 	mSessionID(p.session_id),
@@ -71,6 +80,8 @@ LLToast::LLToast(const LLToast::Params& p)
 	mIsTip(p.is_tip),
 	mWrapperPanel(NULL)
 {
+	mTimer.reset(new LLToastLifeTimer(this, p.lifetime_secs));
+
 	LLUICtrlFactory::getInstance()->buildFloater(this, "panel_toast.xml", NULL);
 
 	setCanDrag(FALSE);
@@ -105,7 +116,7 @@ BOOL LLToast::postBuild()
 {
 	if(!mCanFade)
 	{
-		mTimer.stop();
+		mTimer->stop();
 	}
 
 	if (mIsTip)
@@ -144,39 +155,11 @@ LLToast::~LLToast()
 	mOnToastDestroyedSignal(this);
 }
 
-//--------------------------------------------------------------------------
-void LLToast::setAndStartTimer(F32 period)
-{
-	if(mCanFade)
-	{
-		mToastLifetime = period;
-		mTimer.start();
-	}
-}
-
-//--------------------------------------------------------------------------
-bool LLToast::lifetimeHasExpired()
-{
-	if (mTimer.getStarted())
-	{
-		F32 elapsed_time = mTimer.getElapsedTimeF32();
-		if ((mToastLifetime - elapsed_time) <= mToastFadingTime) 
-		{
-			setBackgroundOpaque(FALSE);
-		}
-		if (elapsed_time > mToastLifetime) 
-		{
-			return true;
-		}
-	}
-	return false;
-}
-
 //--------------------------------------------------------------------------
 void LLToast::hide()
 {
 	setVisible(FALSE);
-	mTimer.stop();
+	mTimer->stop();
 	mIsHidden = true;
 	mOnFadeSignal(this); 
 }
@@ -222,12 +205,13 @@ void LLToast::setCanFade(bool can_fade)
 { 
 	mCanFade = can_fade; 
 	if(!mCanFade)
-		mTimer.stop();
+		mTimer->stop();
 }
 
 //--------------------------------------------------------------------------
-void LLToast::tick()
+void LLToast::expire()
 {
+	// if toast has fade property - hide it
 	if(mCanFade)
 	{
 		hide();
@@ -263,11 +247,6 @@ void LLToast::insertPanel(LLPanel* panel)
 //--------------------------------------------------------------------------
 void LLToast::draw()
 {
-	if(lifetimeHasExpired())
-	{
-		tick();
-	}
-
 	LLFloater::draw();
 
 	if(!isBackgroundVisible())
@@ -300,9 +279,9 @@ void LLToast::setVisible(BOOL show)
 	if(show)
 	{
 		setBackgroundOpaque(TRUE);
-		if(!mTimer.getStarted() && mCanFade)
+		if(!mTimer->getStarted() && mCanFade)
 		{
-			mTimer.start();
+			mTimer->start();
 		}
 		LLModalDialog::setFrontmost(FALSE);
 	}
diff --git a/indra/newview/lltoast.h b/indra/newview/lltoast.h
index 64855020a98143cdd18874e2c29652fd42003526..20198a9398461a69ae41e2a68dedcb60cbb018f4 100644
--- a/indra/newview/lltoast.h
+++ b/indra/newview/lltoast.h
@@ -36,7 +36,7 @@
 
 #include "llpanel.h"
 #include "llmodaldialog.h"
-#include "lltimer.h"
+#include "lleventtimer.h"
 #include "llnotificationptr.h"
 
 #include "llviewercontrol.h"
@@ -48,12 +48,32 @@
 namespace LLNotificationsUI
 {
 
+class LLToast;
+/**
+ * Timer for toasts.
+ */
+class LLToastLifeTimer: public LLEventTimer
+{
+public:
+	LLToastLifeTimer(LLToast* toast, F32 period) : mToast(toast), LLEventTimer(period){}
+
+	/*virtual*/
+	BOOL tick();
+	void stop() { mEventTimer.stop(); }
+	void start() { mEventTimer.start(); }
+	void restart() {mEventTimer.reset(); }
+	BOOL getStarted() { return mEventTimer.getStarted(); }
+private :
+	LLToast* mToast;
+};
+
 /**
  * Represents toast pop-up.
  * This is a parent view for all toast panels.
  */
 class LLToast : public LLModalDialog
 {
+	friend class LLToastLifeTimer;
 public:
 	typedef boost::function<void (LLToast* toast)> toast_callback_t;
 	typedef boost::signals2::signal<void (LLToast* toast)> toast_signal_t;
@@ -107,12 +127,10 @@ class LLToast : public LLModalDialog
 	LLPanel* getPanel() { return mPanel; }
 	// enable/disable Toast's Hide button
 	void setHideButtonEnabled(bool enabled);
-	// initialize and start Toast's timer
-	void setAndStartTimer(F32 period);
 	// 
-	void resetTimer() { mTimer.start(); }
+	void resetTimer() { mTimer->start(); }
 	//
-	void stopTimer() { mTimer.stop(); }
+	void stopTimer() { mTimer->stop(); }
 	//
 	virtual void draw();
 	//
@@ -176,10 +194,7 @@ class LLToast : public LLModalDialog
 
 	void handleTipToastClick(S32 x, S32 y, MASK mask);
 
-	// check timer
-	bool	lifetimeHasExpired();
-	// on timer finished function
-	void	tick();
+	void	expire();
 
 	LLUUID				mNotificationID;
 	LLUUID				mSessionID;
@@ -188,8 +203,8 @@ class LLToast : public LLModalDialog
 	LLPanel* mWrapperPanel;
 
 	// timer counts a lifetime of a toast
-	LLTimer		mTimer;
-	F32			mToastLifetime; // in seconds
+	std::auto_ptr<LLToastLifeTimer> mTimer;
+
 	F32			mToastFadingTime; // in seconds
 
 	LLPanel*		mPanel;
diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml
index 0a906a80632bbd7ad72e77f07ee5421d1b524754..72b571991abede702233059d4b1062842aef2ff5 100644
--- a/indra/newview/skins/default/colors.xml
+++ b/indra/newview/skins/default/colors.xml
@@ -731,7 +731,10 @@
     <color
      name="ChatToastAgentNameColor"
      reference="EmphasisColor" />
-  <color
+    <color
     name="ColorSwatchBorderColor"
     value="0.45098 0.517647 0.607843 1"/>
+    <color
+     name="ChatTimestampColor"
+     reference="White" />
 </colors>
diff --git a/indra/newview/skins/default/xui/en/panel_edit_shape.xml b/indra/newview/skins/default/xui/en/panel_edit_shape.xml
index 45c4b92338252e39826b08afee770f11cb5a822a..9a3b5c26ecf66a3db61bfbf49fdc19f4cb2e7102 100644
--- a/indra/newview/skins/default/xui/en/panel_edit_shape.xml
+++ b/indra/newview/skins/default/xui/en/panel_edit_shape.xml
@@ -1,38 +1,43 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
  <panel
+     background_visible="true"
 	 follows="all"
 	 height="400"
 	 layout="topleft"
 	 left="10"
 	 name="edit_shape_panel"
 	 top_pad="10"
-	 width="313" >
+	 width="333" >
 	 <panel
-		 border="true"
+		 border="false"
+         bg_alpha_color="DkGray2"
+         bg_opaque_color="DkGray2"
+         background_visible="true"
+         background_opaque="true"
 		 follows="top|left"
 		 height="50"
 		 left="10"
 		 layout="topleft"
 		 name="avatar_sex_panel"
-		 top="10"
-		 width="293" >
+		 top="0"
+		 width="313" >
    			<text 
 			 follows="top|left"
 			 height="16"
 			 layout="topleft"
 			 left="10"
 			 name="gender_text"
-			 width="303">
+			 width="313">
 				Gender:
 			</text>
 		   <radio_group
-			 follows="all"
+			 follows="left|top|right"
 			 left="10"
-             height="34"
+             height="28"
              layout="topleft"
              name="sex_radio"
 			 top_pad="3"
-			 width="200" >
+			 width="303" >
                 <radio_item
 					follows="all"
                  height="16"
@@ -51,21 +56,41 @@
                  width="82" />
             </radio_group>
 	 </panel>
+     <panel
+         border="false"
+         bg_alpha_color="DkGray2"
+         bg_opaque_color="DkGray2"
+         background_visible="true"
+         background_opaque="true"
+         follows="all"
+         height="345"
+         label="Shirt"
+         layout="topleft"
+		 left="10"
+         name="accordion_panel"
+		 top_pad="10"
+         width="313">
 	 <accordion
-		follows="left|top|right|bottom"
-		height ="330"
-		left="10"
+        layout="topleft"
+		follows="all"
+		height ="345"
+		left="0"
 		name="wearable_accordion"
-		top_pad="10"
-		width="303">
+		top="0"
+        single_expansion="true"
+        fit_parent="false"
+		width="313">
 		<accordion_tab
 			layout="topleft"
 			min_height="150"
 			name="shape_body_tab"
+            fit_panel="false"
 			title="Body">
 			<scrolling_panel_list
+                layout="topleft" 
 				follows="all"
 				left="0"
+                height="300"
 				name="shape_body_param_list"
 				top="0"
 				width="303" />
@@ -73,11 +98,13 @@
 		<accordion_tab
 			layout="topleft"
 			min_height="150"
+            fit_panel="false"
 			name="shape_head_tab"
 			title="Head">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
-				left="0"
+				left="10"
 				name="shape_head_param_list"
 				top="0"
 				width="303" />
@@ -85,9 +112,11 @@
 		<accordion_tab
 			layout="topleft"
 			min_height="150"
+            fit_panel="false"
 			name="shape_eyes_tab"
 			title="Eyes">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_eyes_param_list"
@@ -97,9 +126,11 @@
 		<accordion_tab
 			layout="topleft"
 			min_height="150"
+            fit_panel="false"
 			name="shape_ears_tab"
 			title="Ears">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_ears_param_list"
@@ -110,8 +141,10 @@
 			layout="topleft"
 			min_height="150"
 			name="shape_nose_tab"
+            fit_panel="false"
 			title="Nose">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_nose_param_list"
@@ -122,8 +155,10 @@
 			layout="topleft"
 			min_height="150"
 			name="shape_mouth_tab"
+            fit_panel="false"
 			title="Mouth">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_mouth_param_list"
@@ -134,8 +169,10 @@
 			layout="topleft"
 			min_height="150"
 			name="shape_chin_tab"
+            fit_panel="false"
 			title="Chin">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_chin_param_list"
@@ -146,8 +183,10 @@
 			layout="topleft"
 			min_height="150"
 			name="shape_torso_tab"
+            fit_panel="false"
 			title="Torso">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_torso_param_list"
@@ -158,8 +197,10 @@
 			layout="topleft"
 			min_height="150"
 			name="shape_legs_tab"
+            fit_panel="false"
 			title="Legs">
-			<scrolling_panel_list
+           <scrolling_panel_list
+                layout="topleft"
 				follows="all"
 				left="0"
 				name="shape_legs_param_list"
@@ -167,5 +208,6 @@
 				width="303" />
 		</accordion_tab>
 	</accordion>
+    </panel>
 </panel>
 
diff --git a/indra/newview/skins/default/xui/en/panel_edit_wearable.xml b/indra/newview/skins/default/xui/en/panel_edit_wearable.xml
index f76a56bda49e369534b1901a329ec5477b77c62c..b4272bb10a2277c0b2ac93bf10bf3cd272e2f6f8 100644
--- a/indra/newview/skins/default/xui/en/panel_edit_wearable.xml
+++ b/indra/newview/skins/default/xui/en/panel_edit_wearable.xml
@@ -150,7 +150,11 @@ left="0"
 	 value="Editing Shape"
 	 width="270" />
      <panel
-         border="true"
+         border="false"
+         bg_alpha_color="DkGray2"
+         bg_opaque_color="DkGray2"
+         background_visible="true"
+         background_opaque="true"
          follows="top|left"
          height="60"
          label="Shirt"
@@ -335,30 +339,76 @@ left="0"
 			 visible="false"
 			 width="333" />
 	 </panel>
+     <panel
+        follows="left|right|bottom"
+        height="38"
+        label="gear_buttom_panel"
+        layout="bottom|left|right"
+        left="0"
+        bottom="25"
+        name="gear_buttom_panel"
+        width="333">
+        <button
+            follows="bottom|left"
+            tool_tip="Options"
+            height="18"
+            image_disabled="OptionsMenu_Disabled"
+            image_selected="OptionsMenu_Press"
+            image_unselected="OptionsMenu_Off"
+            layout="topleft"
+            left="10"
+            name="friends_viewsort_btn"
+            top="10"
+            width="18" />
+        <button
+            follows="bottom|left"
+            height="18"
+            image_selected="AddItem_Press"
+            image_unselected="AddItem_Off"
+            image_disabled="AddItem_Disabled"
+            layout="topleft"
+            left_pad="10"
+            name="add_btn"
+            tool_tip="TODO"
+            width="18" />
+        <button
+            follows="bottom|left"
+            height="18"
+            image_selected="TrashItem_Press"
+            image_unselected="TrashItem_Off"
+            image_disabled="TrashItem_Disabled"
+            layout="topleft"
+            left_pad="10"
+            right="-10"
+            name="del_btn"
+            tool_tip="TODO"
+            top_delta="0"
+            width="18" />
+     </panel>
 	 <panel
-		 follows="all"
+		 follows="bottom|left|right"
 		 height="25"
 		 layout="bottom|left|right"
 		 left="0"
 		 name="button_panel"
-		 top_pad="10"
+		 bottom="5"
 		 width="333" >
 		 <button
 			 follows="bottomleft"
 			 layout="topleft"
 			 height="23"
 			 label="Save As"
-			 left="10"
+			 left="8"
 			 name="save_as_button"
 			 top="0"
-			 width="100" />
+			 width="153" />
 		 <button
 			 follows="bottomleft"
 			 layout="topleft"
 			 height="23"
 			 label="Revert"
-			 left_pad="10"
+			 left_pad="7"
 			 name="revert_button"
-			 width="100" />
+			 width="153" />
 	 </panel>
 </panel>
diff --git a/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml
index 701a14e1c52260e9248c8d50bfc03f3cca5da688..789d69bc687f0ef6233cc075dd974126bdb499ed 100644
--- a/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml
+++ b/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml
@@ -98,6 +98,7 @@ background_visible="true"
      left="0"
      top="0"
      single_expansion="true"
+     fit_parent="true"
      follows="all"
      layout="topleft"
      name="groups_accordion">
diff --git a/indra/newview/skins/default/xui/en/panel_im_control_panel.xml b/indra/newview/skins/default/xui/en/panel_im_control_panel.xml
index 7d7e21d4b021a513c6de41a07693d6c4661dfe22..29c6a17c31de13a0580f2e3ffb62b05c1c8f603f 100644
--- a/indra/newview/skins/default/xui/en/panel_im_control_panel.xml
+++ b/indra/newview/skins/default/xui/en/panel_im_control_panel.xml
@@ -150,7 +150,7 @@
             <button
              follows="left|top|right"
              height="23"
-             label="Leave Call"
+             label="End Call"
              name="end_call_btn"
              width="100" />
         </layout_panel>
diff --git a/indra/newview/skins/default/xui/en/panel_scrolling_param.xml b/indra/newview/skins/default/xui/en/panel_scrolling_param.xml
index 44afadf65a6df9a077e0d0c06121d6e39780b1c7..f9c86fc75b739de40a411e9a70ccc1f32fd35523 100644
--- a/indra/newview/skins/default/xui/en/panel_scrolling_param.xml
+++ b/indra/newview/skins/default/xui/en/panel_scrolling_param.xml
@@ -5,7 +5,7 @@
  left="0"
  name="LLScrollingPanelParam"
  top="152"
- width="270">
+ width="290">
     <text
      follows="left|top"
      height="16"
@@ -46,6 +46,36 @@
      width="128">
         Loading...
     </text>
+    <view_border 
+     layout="topleft"
+     follows="left|top"
+     left="2"
+     top="0"
+     width="132"
+     height="132"
+     thickness="2"
+     shadow_light_color="LtGray_50"
+     highlight_light_color="LtGray_50"
+     highlight_dark_color="LtGray_50"
+     shadow_dark_color="LtGray_50"
+     bevel_style="in"
+     name="left_border"
+    />
+    <view_border 
+     layout="topleft"
+     follows="left|top"
+     left_pad="2"
+     top_delta="0"
+     width="132"
+     height="132"
+     thickness="2"
+     shadow_light_color="LtGray_50"
+     highlight_light_color="LtGray_50"
+     highlight_dark_color="LtGray_50"
+     shadow_dark_color="LtGray_50"
+     bevel_style="in"
+     name="right_border"
+    />
     <button
      enabled="false"
      height="132"
diff --git a/indra/newview/skins/default/xui/en/sidepanel_appearance.xml b/indra/newview/skins/default/xui/en/sidepanel_appearance.xml
index 20a1de59fcd6f88a7af213d4ff19c5cfb3207f3c..c5efa2e22188aa8f64ffbee7962a7dfdfe72905a 100644
--- a/indra/newview/skins/default/xui/en/sidepanel_appearance.xml
+++ b/indra/newview/skins/default/xui/en/sidepanel_appearance.xml
@@ -120,6 +120,6 @@ width="333">
    layout="topleft"
    left="0"
    name="panel_edit_wearable"
-   top="35"
+   top="0"
    visible="false" />
 </panel>