diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index f8b01e106ba60c7baf5d6992eee2ff25936267bb..0807b497a7016dfcd369443f0ac4b316b4fcaf63 100755
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -704,29 +704,11 @@ void LLFloater::openFloater(const LLSD& key)
 	dirtyRect();
 }
 
-void LLFloater::verifyClose( bool app_quitting )
-{
-	LLPanel::handleCloseConfirmation( app_quitting );
-}
-
 void LLFloater::closeFloater(bool app_quitting)
 {
 	llinfos << "Closing floater " << getName() << llendl;
-	
-	if (!app_quitting)
-	{
-		if ( mVerifyUponClose && !mForceCloseAfterVerify )
-		{			
-			onClose( app_quitting );
-			if ( mForceCloseAfterVerify ) 
-			{
-				return;
-			}			
-		}
-	}	
-
 	if (app_quitting)
-	{		
+	{
 		LLFloater::sQuitting = true;
 	}
 	
@@ -799,7 +781,7 @@ void LLFloater::closeFloater(bool app_quitting)
 		dirtyRect();
 
 		// Close callbacks
-		onClose(app_quitting);	
+		onClose(app_quitting);
 		mCloseSignal(this, LLSD(app_quitting));
 		
 		// Hide or Destroy
@@ -1639,7 +1621,7 @@ void LLFloater::bringToFront( S32 x, S32 y )
 
 
 // virtual
-void LLFloater::setVisibleAndFrontmost(BOOL take_focus, const LLSD& key)
+void LLFloater::setVisibleAndFrontmost(BOOL take_focus,const LLSD& key)
 {
 	LLMultiFloater* hostp = getHost();
 	if (hostp)
@@ -1806,19 +1788,11 @@ void LLFloater::initRectControl()
 void LLFloater::closeFrontmostFloater()
 {
 	LLFloater* floater_to_close = gFloaterView->getFrontmostClosableFloater();
-	if( floater_to_close )
+	if(floater_to_close)
 	{
-		if ( floater_to_close->mVerifyUponClose )
-		{			
-			floater_to_close->verifyClose();
-			//Closing of the window handle in the subclass - so bug out here.
-			return;
-		}
-		else
-		{
-			floater_to_close->closeFloater();
-		}
+		floater_to_close->closeFloater();
 	}
+
 	// if nothing took focus after closing focused floater
 	// give it to next floater (to allow closing multiple windows via keyboard in rapid succession)
 	if (gFocusMgr.getKeyboardFocus() == NULL)
@@ -2657,14 +2631,7 @@ void LLFloaterView::closeAllChildren(bool app_quitting)
 		if (floaterp->canClose() && !floaterp->isDead() &&
 			(app_quitting || floaterp->getVisible()))
 		{
-			if ( floaterp->mVerifyUponClose )
-			{			
-				floaterp->verifyClose(app_quitting);
-			}
-			else
-			{
-				floaterp->closeFloater(app_quitting);
-			}
+			floaterp->closeFloater(app_quitting);
 		}
 	}
 }
diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h
index 8eb40ddd0bb578c07975301f7ad3cc17c93078c7..1d0d3cb050161a9b3caf3941c491eca86dac5d38 100755
--- a/indra/llui/llfloater.h
+++ b/indra/llui/llfloater.h
@@ -225,7 +225,6 @@ class LLFloater : public LLPanel, public LLInstanceTracker<LLFloater>
 
 	// If allowed, close the floater cleanly, releasing focus.
 	virtual void	closeFloater(bool app_quitting = false);
-	virtual void	verifyClose( bool app_quitting = false );
 
 	// Close the floater or its host. Use when hidding or toggling a floater instance.
 	virtual void	closeHostedFloater();
@@ -304,9 +303,9 @@ class LLFloater : public LLPanel, public LLInstanceTracker<LLFloater>
 
 	/*virtual*/ void setVisible(BOOL visible); // do not override
 	/*virtual*/ void handleVisibilityChange ( BOOL new_visibility ); // do not override
-				void handleCloseConfirmation( );
+	
 	void			setFrontmost(BOOL take_focus = TRUE);
-    virtual void	setVisibleAndFrontmost(BOOL take_focus=TRUE, const LLSD& key = LLSD());    
+     virtual void	setVisibleAndFrontmost(BOOL take_focus=TRUE, const LLSD& key = LLSD());
 	
 	// Defaults to false.
 	virtual BOOL	canSaveAs() const { return FALSE; }
diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp
index b0bdbcb7d1db5ea9f39f1bf5b408168cb105a674..67472ad1666f1a31e1e85752213176816ea07ff5 100755
--- a/indra/llui/llpanel.cpp
+++ b/indra/llui/llpanel.cpp
@@ -114,10 +114,7 @@ LLPanel::LLPanel(const LLPanel::Params& p)
 	mCommitCallbackRegistrar(false),
 	mEnableCallbackRegistrar(false),
 	mXMLFilename(p.filename),
-	mVisibleSignal(NULL),
-	mCloseConfirmationSignal(NULL),
-	mVerifyUponClose(false),
-	mForceCloseAfterVerify(false)
+	mVisibleSignal(NULL)
 	// *NOTE: Be sure to also change LLPanel::initFromParams().  We have too
 	// many classes derived from LLPanel to retrofit them all to pass in params.
 {
@@ -130,7 +127,6 @@ LLPanel::LLPanel(const LLPanel::Params& p)
 LLPanel::~LLPanel()
 {
 	delete mVisibleSignal;
-	delete mCloseConfirmationSignal;
 }
 
 // virtual
@@ -353,14 +349,6 @@ void LLPanel::handleVisibilityChange ( BOOL new_visibility )
 		(*mVisibleSignal)(this, LLSD(new_visibility) ); // Pass BOOL as LLSD
 }
 
-
-void LLPanel::handleCloseConfirmation( bool app_quitting)
-{	
-	if (mCloseConfirmationSignal)
-	{
-		(*mCloseConfirmationSignal)(this, LLSD( app_quitting ) ); 
-	}
-}
 void LLPanel::setFocus(BOOL b)
 {
 	if( b && !hasFocus())
@@ -971,17 +959,10 @@ boost::signals2::connection LLPanel::setVisibleCallback( const commit_signal_t::
 	{
 		mVisibleSignal = new commit_signal_t();
 	}
+
 	return mVisibleSignal->connect(cb);
 }
 
-boost::signals2::connection LLPanel::setCloseConfirmationCallback( const commit_signal_t::slot_type& cb )
-{
-	if (!mCloseConfirmationSignal)
-	{
-		mCloseConfirmationSignal = new commit_signal_t();
-	}	
-	return mCloseConfirmationSignal->connect(cb);
-}
 static LLFastTimer::DeclareTimer FTM_BUILD_PANELS("Build Panels");
 
 //-----------------------------------------------------------------------------
diff --git a/indra/llui/llpanel.h b/indra/llui/llpanel.h
index 02f8c0aba781cf80cb7c72bbac3e636380cd915d..e63b41f97c56121288d418204658dace49e273ec 100755
--- a/indra/llui/llpanel.h
+++ b/indra/llui/llpanel.h
@@ -116,8 +116,6 @@ class LLPanel : public LLUICtrl, public LLBadgeHolder
 	/*virtual*/ void	draw();	
 	/*virtual*/ BOOL	handleKeyHere( KEY key, MASK mask );
 	/*virtual*/ void 	handleVisibilityChange ( BOOL new_visibility );
-				void	handleCloseConfirmation( bool app_quitting );
-
 
 	// From LLFocusableElement
 	/*virtual*/ void	setFocus( BOOL b );
@@ -253,8 +251,6 @@ class LLPanel : public LLUICtrl, public LLBadgeHolder
 	std::string getXMLFilename() { return mXMLFilename; };
 	
 	boost::signals2::connection setVisibleCallback( const commit_signal_t::slot_type& cb );
-	boost::signals2::connection setCloseConfirmationCallback( const commit_signal_t::slot_type& cb );
-
 
 protected:
 	// Override to set not found list
@@ -264,7 +260,6 @@ class LLPanel : public LLUICtrl, public LLBadgeHolder
 	EnableCallbackRegistry::ScopedRegistrar mEnableCallbackRegistrar;
 
 	commit_signal_t* mVisibleSignal;		// Called when visibility changes, passes new visibility as LLSD()
-	commit_signal_t* mCloseConfirmationSignal; 
 
 	std::string		mHelpTopic;         // the name of this panel's help topic to display in the Help Viewer
 	typedef std::deque<const LLCallbackMap::map_t*> factory_stack_t;
@@ -272,11 +267,7 @@ class LLPanel : public LLUICtrl, public LLBadgeHolder
 
 	// for setting the xml filename when building panel in context dependent cases
 	std::string		mXMLFilename;
-	//Specific close-down logic in subclass
-	BOOL			mVerifyUponClose;
-public:	
-	BOOL			mForceCloseAfterVerify;
-
+	
 private:
 	BOOL			mBgVisible;				// any background at all?
 	BOOL			mBgOpaque;				// use opaque color or image
diff --git a/indra/newview/llfloatersidepanelcontainer.cpp b/indra/newview/llfloatersidepanelcontainer.cpp
index 02216420da22ba77c33f3056ac1401d375177a6f..5f9556a870d66810af487f69807501b362bf54c9 100755
--- a/indra/newview/llfloatersidepanelcontainer.cpp
+++ b/indra/newview/llfloatersidepanelcontainer.cpp
@@ -40,29 +40,13 @@
 const std::string LLFloaterSidePanelContainer::sMainPanelName("main_panel");
 
 LLFloaterSidePanelContainer::LLFloaterSidePanelContainer(const LLSD& key, const Params& params)
-: LLFloater(key, params)
-, mAppQuiting( false )
+:	LLFloater(key, params)
 {
 	// Prevent transient floaters (e.g. IM windows) from hiding
 	// when this floater is clicked.
 	LLTransientFloaterMgr::getInstance()->addControlView(LLTransientFloaterMgr::GLOBAL, this);
-	//We want this container to handle the shutdown logic of the sidepanelappearance.
-	mVerifyUponClose = TRUE;
 }
 
-BOOL LLFloaterSidePanelContainer::postBuild()
-{
-	setCloseConfirmationCallback( boost::bind(&LLFloaterSidePanelContainer::onConfirmationClose,this,_2));
-	return TRUE;
-}
-
-void  LLFloaterSidePanelContainer::onConfirmationClose( const LLSD &confirm )
-{
-	mAppQuiting = confirm.asBoolean();
-	onClickCloseBtn();
-}
-
-
 LLFloaterSidePanelContainer::~LLFloaterSidePanelContainer()
 {
 	LLTransientFloaterMgr::getInstance()->removeControlView(LLTransientFloaterMgr::GLOBAL, this);
@@ -71,34 +55,26 @@ LLFloaterSidePanelContainer::~LLFloaterSidePanelContainer()
 void LLFloaterSidePanelContainer::onOpen(const LLSD& key)
 {
 	getChild<LLPanel>(sMainPanelName)->onOpen(key);
-	mAppQuiting = false;
-}
-
-void LLFloaterSidePanelContainer::onClose( bool app_quitting )
-{
-	if (! mAppQuiting ) { mForceCloseAfterVerify = true; }
-	LLSidepanelAppearance* panel = getSidePanelAppearance();
-	if ( panel )
-	{		
-		panel->mRevertSet = true;
-		panel->onCloseFromAppearance( this );			
-	}
 }
 
 void LLFloaterSidePanelContainer::onClickCloseBtn()
 {
-	LLSidepanelAppearance* panel = getSidePanelAppearance();
-	if ( panel )
-	{
-		panel->onClose( this );			
-	}
-	else
+	LLPanelOutfitEdit* panel_outfit_edit =
+		dynamic_cast<LLPanelOutfitEdit*>(LLFloaterSidePanelContainer::getPanel("appearance", "panel_outfit_edit"));
+	if (panel_outfit_edit)
 	{
-		LLFloater::onClickCloseBtn();
+		LLFloater *parent = gFloaterView->getParentFloater(panel_outfit_edit);
+		if (parent == this )
+		{
+			LLSidepanelAppearance* panel_appearance = dynamic_cast<LLSidepanelAppearance*>(getPanel("appearance"));
+			if ( panel_appearance )
+			{
+				panel_appearance->getWearable()->onClose();
+				panel_appearance->showOutfitsInventoryPanel();
+			}
+		}
 	}
-}
-void LLFloaterSidePanelContainer::close()
-{
+	
 	LLFloater::onClickCloseBtn();
 }
 
@@ -109,7 +85,7 @@ LLPanel* LLFloaterSidePanelContainer::openChildPanel(const std::string& panel_na
 
 	if (!getVisible())
 	{
-		openFloater();
+	openFloater();
 	}
 
 	LLPanel* panel = NULL;
@@ -130,30 +106,10 @@ LLPanel* LLFloaterSidePanelContainer::openChildPanel(const std::string& panel_na
 
 void LLFloaterSidePanelContainer::showPanel(const std::string& floater_name, const LLSD& key)
 {
-	//If we're already open then check whether anything is dirty	 
-	LLFloaterSidePanelContainer* floaterp = LLFloaterReg::getTypedInstance<LLFloaterSidePanelContainer>(floater_name);	
+	LLFloaterSidePanelContainer* floaterp = LLFloaterReg::getTypedInstance<LLFloaterSidePanelContainer>(floater_name);
 	if (floaterp)
 	{
-		if ( floaterp->getVisible() )
-		{
-			LLSidepanelAppearance* panel = floaterp->getSidePanelAppearance();
-			if ( panel )
-			{
-				if ( panel->checkForDirtyEdits() )
-				{
-					panel->onClickConfirmExitWithoutSaveIntoAppearance( floaterp );
-				}
-				else
-				{
-					//or a call into some new f() that just shows inv panel?
-					floaterp->openChildPanel(sMainPanelName, key);
-				}
-			}
-		}
-		else
-		{
-			floaterp->openChildPanel(sMainPanelName, key);
-		}
+		floaterp->openChildPanel(sMainPanelName, key);
 	}
 }
 
@@ -177,19 +133,3 @@ LLPanel* LLFloaterSidePanelContainer::getPanel(const std::string& floater_name,
 
 	return NULL;
 }
-
-LLSidepanelAppearance* LLFloaterSidePanelContainer::getSidePanelAppearance()
-{
-	LLSidepanelAppearance* panel_appearance = NULL;
-	LLPanelOutfitEdit* panel_outfit_edit = dynamic_cast<LLPanelOutfitEdit*>(LLFloaterSidePanelContainer::getPanel("appearance", "panel_outfit_edit"));
-	if (panel_outfit_edit)
-	{
-		LLFloater *parent = gFloaterView->getParentFloater(panel_outfit_edit);
-		if (parent == this )
-		{
-			panel_appearance = dynamic_cast<LLSidepanelAppearance*>(getPanel("appearance"));
-		}
-	}
-	return panel_appearance;			
-
-}
diff --git a/indra/newview/llfloatersidepanelcontainer.h b/indra/newview/llfloatersidepanelcontainer.h
index b276821805b7f543346f57eb4bbedac7aef4de27..491723471fb1109211764fe9b6757234071b9cf4 100755
--- a/indra/newview/llfloatersidepanelcontainer.h
+++ b/indra/newview/llfloatersidepanelcontainer.h
@@ -30,8 +30,6 @@
 
 #include "llfloater.h"
 
-class LLSidepanelAppearance;
-
 /**
  * Class LLFloaterSidePanelContainer
  *
@@ -44,8 +42,6 @@ class LLSidepanelAppearance;
  */
 class LLFloaterSidePanelContainer : public LLFloater
 {
-	friend class LLSidePanelAppearance;
-
 private:
 	static const std::string sMainPanelName;
 
@@ -54,15 +50,11 @@ class LLFloaterSidePanelContainer : public LLFloater
 	~LLFloaterSidePanelContainer();
 
 	/*virtual*/ void onOpen(const LLSD& key);
-	/*virtual*/ void onClose(bool app_quitting);
+
 	/*virtual*/ void onClickCloseBtn();
-	/*virtual*/ BOOL postBuild();
-				void  onConfirmationClose( const LLSD &confirm );
 
 	LLPanel* openChildPanel(const std::string& panel_name, const LLSD& params);
 
-	void close();
-
 	static void showPanel(const std::string& floater_name, const LLSD& key);
 
 	static void showPanel(const std::string& floater_name, const std::string& panel_name, const LLSD& key);
@@ -86,12 +78,6 @@ class LLFloaterSidePanelContainer : public LLFloater
 		}
 		return panel;
 	}
-
-private:
-	LLSidepanelAppearance* getSidePanelAppearance();
-
-public: 
-	bool mAppQuiting;
 };
 
 #endif // LL_LLFLOATERSIDEPANELCONTAINER_H
diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp
index 775c148ea1401cf16e7ab06c212fc08794967f9d..d25d203febc55bbbe5cc1ed86257fb11960f616f 100755
--- a/indra/newview/llsidepanelappearance.cpp
+++ b/indra/newview/llsidepanelappearance.cpp
@@ -48,9 +48,6 @@
 #include "llviewerregion.h"
 #include "llvoavatarself.h"
 #include "llviewerwearable.h"
-#include "llnotificationsutil.h"
-#include "llfloatersidepanelcontainer.h"
-#include "llviewerfoldertype.h"
 
 static LLRegisterPanelClassWrapper<LLSidepanelAppearance> t_appearance("sidepanel_appearance");
 
@@ -73,139 +70,13 @@ class LLCurrentlyWornFetchObserver : public LLInventoryFetchItemsObserver
 	LLSidepanelAppearance *mPanel;
 };
 
-bool LLSidepanelAppearance::callBackExitWithoutSaveViaBack(const LLSD& notification, const LLSD& response)
-{
-	S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
-	if ( option == 0 ) 
-	{		
-		LLAppearanceMgr::instance().setOutfitDirty( true );		
-		showOutfitsInventoryPanel();
-		LLAppearanceMgr::getInstance()->wearBaseOutfit();		
-		return true;
-	}
-	return false;
-}
-
-void LLSidepanelAppearance::onCloseFromAppearance(LLFloaterSidePanelContainer* obj)
-{
-	mLLFloaterSidePanelContainer = obj;	
-	if ( mEditWearable->isAvailable() && mEditWearable->isDirty() ) 
-	{
-		LLSidepanelAppearance* pSelf = (LLSidepanelAppearance *)this;
-		LLNotificationsUtil::add("ConfirmExitWithoutSave", LLSD(), LLSD(), boost::bind(&LLSidepanelAppearance::callBackExitWithoutSaveViaClose,pSelf,_1,_2) );
-	}
-	else
-	{		
-		LLVOAvatarSelf::onCustomizeEnd(FALSE);		
-		toggleWearableEditPanel(FALSE);
-		mLLFloaterSidePanelContainer->mForceCloseAfterVerify=false;
-	}
-}
-bool LLSidepanelAppearance::onSaveCommit(const LLSD& notification, const LLSD& response)
-{
-	S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
-	if (0 == option)
-	{
-		std::string outfit_name = response["message"].asString();
-		LLStringUtil::trim(outfit_name);
-		std::string current_outfit_name;
-
-		LLAppearanceMgr::getInstance()->getBaseOutfitName(current_outfit_name);
-
-		if ( current_outfit_name == outfit_name )
-		{
-			LLAppearanceMgr::getInstance()->updateBaseOutfit();
-		}
-		else		
-		{
-			LLUUID outfit_folder = LLAppearanceMgr::getInstance()->makeNewOutfitLinks( outfit_name,FALSE );		
-		}		
-
-		LLVOAvatarSelf::onCustomizeEnd( FALSE );	
-		mLLFloaterSidePanelContainer->close();		
-	}
-
-	return false;
-}
-bool LLSidepanelAppearance::callBackExitWithoutSaveViaClose(const LLSD& notification, const LLSD& response)
-{	S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
-	if ( option == 0 ) 
-	{	
-		std::string outfit_name;
-		if (!LLAppearanceMgr::getInstance()->getBaseOutfitName(outfit_name))
-		{
-			outfit_name = LLViewerFolderType::lookupNewCategoryName(LLFolderType::FT_OUTFIT);
-		}
-
-		LLSD args;
-		args["DESC"] = outfit_name;
-
-		LLSD payload;
-		LLNotificationsUtil::add("SaveOutfitEither", args, payload, boost::bind(&LLSidepanelAppearance::onSaveCommit, this, _1, _2));
-		showOutfitEditPanel();
-		return false;
-	}
-	else if ( option == 1 )
-	{
-		mEditWearable->revertChanges();					
-		toggleWearableEditPanel(FALSE);	
-		showOutfitEditPanel();
-		LLVOAvatarSelf::onCustomizeEnd( FALSE );	
-		if ( !mLLFloaterSidePanelContainer->mAppQuiting ) 
-		{
-			mRevertSet = true; 			
-		}
-		else
-		{
-			mLLFloaterSidePanelContainer->closeFloater( true );
-		}
-		return false;
-	}
-	mLLFloaterSidePanelContainer->mForceCloseAfterVerify = false;
-	return false;
-}
-
-void LLSidepanelAppearance::onClickConfirmExitWithoutSaveIntoAppearance( LLFloaterSidePanelContainer* obj )
-{
-	mLLFloaterSidePanelContainer = obj;	
-	if ( LLAppearanceMgr::getInstance()->isOutfitDirty() ||  mEditWearable->isDirty() )
-	{
-		LLSidepanelAppearance* pSelf = (LLSidepanelAppearance *)this;
-		LLNotificationsUtil::add("ConfirmExitWithoutSave", LLSD(), LLSD(), boost::bind(&LLSidepanelAppearance::callBackExitWithoutSaveViaClose,pSelf,_1,_2) );
-	}
-	else
-	{
-		showOutfitsInventoryPanel();
-	}
-}
-void LLSidepanelAppearance::onClickConfirmExitWithoutSaveViaBack()
-{
-	showOutfitsInventoryPanel();
-}
-
-void LLSidepanelAppearance::onClose(LLFloaterSidePanelContainer* obj)
-{	mLLFloaterSidePanelContainer = obj;	
-	if ( mEditWearable->isAvailable() && mEditWearable->isDirty() ) 
-	{
-		LLSidepanelAppearance* pSelf = (LLSidepanelAppearance *)this;
-		LLNotificationsUtil::add("ConfirmExitWithoutSave", LLSD(), LLSD(), boost::bind(&LLSidepanelAppearance::callBackExitWithoutSaveViaClose,pSelf,_1,_2) );
-	}
-	else
-	{				
-		LLVOAvatarSelf::onCustomizeEnd(FALSE);		
-		mLLFloaterSidePanelContainer->close();
-	}
-}
-
 LLSidepanelAppearance::LLSidepanelAppearance() :
 	LLPanel(),
 	mFilterSubString(LLStringUtil::null),
 	mFilterEditor(NULL),
 	mOutfitEdit(NULL),
 	mCurrOutfitPanel(NULL),
-	mOpened(false),
-	mSidePanelJustOpened(true),
-	mRevertSet(false)
+	mOpened(false)
 {
 	LLOutfitObserver& outfit_observer =  LLOutfitObserver::instance();
 	outfit_observer.addBOFReplacedCallback(boost::bind(&LLSidepanelAppearance::refreshCurrentOutfitName, this, ""));
@@ -214,8 +85,6 @@ LLSidepanelAppearance::LLSidepanelAppearance() :
 
 	gAgentWearables.addLoadingStartedCallback(boost::bind(&LLSidepanelAppearance::setWearablesLoading, this, true));
 	gAgentWearables.addLoadedCallback(boost::bind(&LLSidepanelAppearance::setWearablesLoading, this, false));
-
-
 }
 
 LLSidepanelAppearance::~LLSidepanelAppearance()
@@ -250,8 +119,8 @@ BOOL LLSidepanelAppearance::postBuild()
 	{
 		LLButton* back_btn = mOutfitEdit->getChild<LLButton>("back_btn");
 		if (back_btn)
-		{			
-			back_btn->setClickedCallback(boost::bind(&LLSidepanelAppearance::onClickConfirmExitWithoutSaveViaBack, this));
+		{
+			back_btn->setClickedCallback(boost::bind(&LLSidepanelAppearance::showOutfitsInventoryPanel, this));
 		}
 
 	}
@@ -275,7 +144,6 @@ BOOL LLSidepanelAppearance::postBuild()
 
 	setVisibleCallback(boost::bind(&LLSidepanelAppearance::onVisibilityChange,this,_2));
 
-
 	return TRUE;
 }
 
@@ -286,15 +154,11 @@ void LLSidepanelAppearance::onOpen(const LLSD& key)
 	{
 		// No specific panel requested.
 		// If we're opened for the first time then show My Outfits.
-		// Else show outfit edit panel
+		// Else do nothing.
 		if (!mOpened)
 		{
 			showOutfitsInventoryPanel();
 		}
-		else
-		{
-			showOutfitEditPanel();
-		}
 	}
 	else
 	{
@@ -319,12 +183,6 @@ void LLSidepanelAppearance::onOpen(const LLSD& key)
 
 void LLSidepanelAppearance::onVisibilityChange(const LLSD &new_visibility)
 {
-	//handle leaving and subsequent user verification of discarding any unsaved data
-	if ( mSidePanelJustOpened )
-	{
-		mSidePanelJustOpened = false;
-	}
-
 	LLSD visibility;
 	visibility["visible"] = new_visibility.asBoolean();
 	visibility["reset_accordion"] = false;
@@ -333,9 +191,8 @@ void LLSidepanelAppearance::onVisibilityChange(const LLSD &new_visibility)
 
 void LLSidepanelAppearance::updateToVisibility(const LLSD &new_visibility)
 {
-	if (new_visibility["visible"].asBoolean() )
+	if (new_visibility["visible"].asBoolean())
 	{
-
 		const BOOL is_outfit_edit_visible = mOutfitEdit && mOutfitEdit->getVisible();
 		const BOOL is_wearable_edit_visible = mEditWearable && mEditWearable->getVisible();
 
@@ -596,6 +453,7 @@ void LLSidepanelAppearance::editWearable(LLViewerWearable *wearable, LLView *dat
 	LLSidepanelAppearance *panel = dynamic_cast<LLSidepanelAppearance*>(data);
 	if (panel)
 	{
+		panel->showOutfitsInventoryPanel();
 		panel->showWearableEditPanel(wearable, disable_camera_switch);
 	}
 }
@@ -686,9 +544,3 @@ void LLSidepanelAppearance::updateScrollingPanelList()
 		mEditWearable->updateScrollingPanelList();
 	}
 }
-
-bool LLSidepanelAppearance::checkForDirtyEdits()
-{
-	return ( mEditWearable->isDirty() ) ? true : false;
-}
-
diff --git a/indra/newview/llsidepanelappearance.h b/indra/newview/llsidepanelappearance.h
index 5042e92f4be45ee2fed75745acfbfcc6cfb32b2a..762f557a8004e471b1a9f9b14a255e3f0817ff17 100755
--- a/indra/newview/llsidepanelappearance.h
+++ b/indra/newview/llsidepanelappearance.h
@@ -38,11 +38,9 @@ class LLCurrentlyWornFetchObserver;
 class LLPanelEditWearable;
 class LLViewerWearable;
 class LLPanelOutfitsInventory;
-class LLFloaterSidePanelContainer;
 
 class LLSidepanelAppearance : public LLPanel
-{	
-
+{
 	LOG_CLASS(LLSidepanelAppearance);
 public:
 	LLSidepanelAppearance();
@@ -50,9 +48,6 @@ class LLSidepanelAppearance : public LLPanel
 
 	/*virtual*/ BOOL postBuild();
 	/*virtual*/ void onOpen(const LLSD& key);	
-	/*virtual*/	void onClose(LLFloaterSidePanelContainer* obj);
-
-	void onClickCloseBtn();
 
 	void refreshCurrentOutfitName(const std::string& name = "");
 
@@ -70,12 +65,6 @@ class LLSidepanelAppearance : public LLPanel
 	void updateScrollingPanelList();
 	void updateToVisibility( const LLSD& new_visibility );
 	LLPanelEditWearable* getWearable(){ return mEditWearable; }
-	bool callBackExitWithoutSaveViaBack(const LLSD& notification, const LLSD& response);
-	void onClickConfirmExitWithoutSaveViaBack();
-	bool callBackExitWithoutSaveViaClose(const LLSD& notification, const LLSD& response);
-	bool checkForDirtyEdits();	
-	void onClickConfirmExitWithoutSaveIntoAppearance(LLFloaterSidePanelContainer* obj);
-	void onCloseFromAppearance(LLFloaterSidePanelContainer* obj);
 
 private:
 	void onFilterEdit(const std::string& search_string);
@@ -88,9 +77,6 @@ class LLSidepanelAppearance : public LLPanel
 	void toggleOutfitEditPanel(BOOL visible, BOOL disable_camera_switch = FALSE);
 	void toggleWearableEditPanel(BOOL visible, LLViewerWearable* wearable = NULL, BOOL disable_camera_switch = FALSE);
 
-
-	bool	onSaveCommit(const LLSD& notification, const LLSD& response);
-
 	LLFilterEditor*			mFilterEditor;
 	LLPanelOutfitsInventory* mPanelOutfitsInventory;
 	LLPanelOutfitEdit*		mOutfitEdit;
@@ -99,7 +85,6 @@ class LLSidepanelAppearance : public LLPanel
 	LLButton*					mOpenOutfitBtn;
 	LLButton*					mEditAppearanceBtn;
 	LLButton*					mNewOutfitBtn;
-	
 	LLPanel*					mCurrOutfitPanel;
 
 	LLTextBox*					mCurrentLookName;
@@ -114,13 +99,6 @@ class LLSidepanelAppearance : public LLPanel
 
 	// Gets set to true when we're opened for the first time.
 	bool mOpened;
-	// Set to true if sidepanel has just been opened
-	bool mSidePanelJustOpened;
-	LLFloaterSidePanelContainer* mLLFloaterSidePanelContainer;
-
-public:
-
-	bool mRevertSet;
 };
 
 #endif //LL_LLSIDEPANELAPPEARANCE_H
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index 860dabdcc8a883263ef41e6a63f7178c5de03347..c3d8a528c56caf33a92125a41958c96fc8c4c216 100755
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -10114,37 +10114,5 @@ Cannot create large prims that intersect other players.  Please re-try when othe
   </notification>
 
 
-  <notification
-   icon="alertmodal.tga"
-   name="ConfirmExitWithoutSave"
-   type="alertmodal">
-    You have not saved the changes to your outfit. Would you like to save it now?
-    <tag>confirm</tag>
-    <usetemplate
-     name="yesnocancelbuttons"
-     notext="Revert"
-     yestext="Yes"
-     canceltext="Dismiss"/>
-  </notification>
-
-  <notification
-   icon="alertmodal.tga"
-   label="Save Outfit"
-   name="SaveOutfitEither"
-   type="alertmodal">
-    <unique/>
-    Save outfit (defaults to current outfit):
-    <tag>confirm</tag>
-    <form name="form">
-      <input name="message" type="text">
-        [DESC]
-      </input>
-      <button
-       default="true"
-       index="0"
-       name="OK"
-       text="Save"/>     
-    </form>
-  </notification>
-
+ 
 </notifications>