diff --git a/doc/contributions.txt b/doc/contributions.txt
index 8ed41ddc3491f5ae626f94ae19a4d8361c9f55c2..92534e2fd864e68d05f325a489ab5db86acde7af 100755
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -193,6 +193,7 @@ Ansariel Hiller
 	MAINT-6432
 	STORM-2133
 	MAINT-6511
+	STORM-2141
 Aralara Rajal
 Arare Chantilly
 	CHUIBUG-191
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 16edd39eccb0aadd6a2c275479b89852f68233bd..c8051bc9afa20dfd05dbed934df8197b170c6420 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -248,7 +248,6 @@ set(viewer_SOURCE_FILES
     llfloaterimsession.cpp
     llfloaterimcontainer.cpp
     llfloaterinspect.cpp
-    llfloaterinventory.cpp
     llfloaterjoystick.cpp
     llfloaterlagmeter.cpp
     llfloaterland.cpp
@@ -866,7 +865,6 @@ set(viewer_HEADER_FILES
     llfloaterimsession.h
     llfloaterimcontainer.h
     llfloaterinspect.h
-    llfloaterinventory.h
     llfloaterjoystick.h
     llfloaterlagmeter.h
     llfloaterland.h
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 76d0d469976b1e39185cbeef9125d326d2adfcc4..f043155753cd8eeb682787728f3580000f92cf2a 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -208,7 +208,7 @@
 #include "llfloaterreg.h"
 #include "llfloateroutfitsnapshot.h"
 #include "llfloatersnapshot.h"
-#include "llfloaterinventory.h"
+#include "llsidepanelinventory.h"
 
 // includes for idle() idleShutdown()
 #include "llviewercontrol.h"
@@ -5488,7 +5488,7 @@ void LLAppViewer::disconnectViewer()
         expCache->cleanup();
 
 	// close inventory interface, close all windows
-	LLFloaterInventory::cleanup();
+	LLSidepanelInventory::cleanup();
 
 	gAgentWearables.cleanup();
 	gAgentCamera.cleanup();
diff --git a/indra/newview/llfloaterbuycontents.cpp b/indra/newview/llfloaterbuycontents.cpp
index b32ac860aaa57299fec019a6e4fde0061e77026c..4607b4ac411d5fb04ec7c4c92a29a9e8077d43a6 100644
--- a/indra/newview/llfloaterbuycontents.cpp
+++ b/indra/newview/llfloaterbuycontents.cpp
@@ -44,7 +44,6 @@
 #include "llinventorymodel.h"	// for gInventory
 #include "llfirstuse.h"
 #include "llfloaterreg.h"
-#include "llfloaterinventory.h"	// for LLInventoryIcon::getIcon
 #include "llnotificationsutil.h"
 #include "llselectmgr.h"
 #include "llscrolllistctrl.h"
diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp
deleted file mode 100644
index 9b9b90e5219481452c72e69553fd56d7f2c04c03..0000000000000000000000000000000000000000
--- a/indra/newview/llfloaterinventory.cpp
+++ /dev/null
@@ -1,109 +0,0 @@
-/** 
- * @file llfloaterinventory.cpp
- * @brief Implementation of the inventory view and associated stuff.
- *
- * $LicenseInfo:firstyear=2001&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- * 
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- * 
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- * 
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA
- * $/LicenseInfo$
- */
-
-#include "llviewerprecompiledheaders.h"
-
-#include "llfloaterinventory.h"
-
-#include "llagentcamera.h"
-//#include "llfirstuse.h"
-#include "llfloaterreg.h"
-#include "llinventorymodel.h"
-#include "llpanelmaininventory.h"
-#include "llresmgr.h"
-#include "llviewerfoldertype.h"
-#include "lltransientfloatermgr.h"
-
-///----------------------------------------------------------------------------
-/// LLFloaterInventory
-///----------------------------------------------------------------------------
-
-LLFloaterInventory::LLFloaterInventory(const LLSD& key)
-	: LLFloater(key)
-{
-	LLTransientFloaterMgr::getInstance()->addControlView(this);
-}
-
-LLFloaterInventory::~LLFloaterInventory()
-{
-	LLTransientFloaterMgr::getInstance()->removeControlView(this);
-}
-
-BOOL LLFloaterInventory::postBuild()
-{
-	mPanelMainInventory = findChild<LLPanelMainInventory>("Inventory Panel");
-	return TRUE;
-}
-
-LLInventoryPanel* LLFloaterInventory::getPanel()
-{
-	if (mPanelMainInventory)
-		return mPanelMainInventory->getPanel();
-	return NULL;
-}
-
-// static
-LLFloaterInventory* LLFloaterInventory::showAgentInventory()
-{
-	// Hack to generate semi-unique key for each inventory floater.
-	static S32 instance_num = 0;
-	instance_num = (instance_num + 1) % S32_MAX;
-
-	LLFloaterInventory* iv = NULL;
-	if (!gAgentCamera.cameraMouselook())
-	{
-		iv = LLFloaterReg::showTypedInstance<LLFloaterInventory>("inventory", LLSD(instance_num));
-	}
-	return iv;
-}
-
-// static
-void LLFloaterInventory::cleanup()
-{
-	LLFloaterReg::const_instance_list_t& inst_list = LLFloaterReg::getFloaterList("inventory");
-	for (LLFloaterReg::const_instance_list_t::const_iterator iter = inst_list.begin(); iter != inst_list.end();)
-	{
-		LLFloaterInventory* iv = dynamic_cast<LLFloaterInventory*>(*iter++);
-		if (iv)
-		{
-			iv->destroy();
-		}
-	}
-}
-
-void LLFloaterInventory::onOpen(const LLSD& key)
-{
-	//LLFirstUse::useInventory();
-}
-
-void LLFloaterInventory::onClose(bool app_quitting)
-{
-	LLFloater::onClose(app_quitting);
-	if (mKey.asInteger() > 1)
-	{
-		destroy();
-	}
-}
diff --git a/indra/newview/llfloaterinventory.h b/indra/newview/llfloaterinventory.h
deleted file mode 100644
index 823c4903b42d1b2672abccc64179bd78d4f6d837..0000000000000000000000000000000000000000
--- a/indra/newview/llfloaterinventory.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/** 
- * @file llfloaterinventory.h
- * @brief LLFloaterInventory, LLInventoryFolder, and LLInventoryItem
- * class definition
- *
- * $LicenseInfo:firstyear=2001&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- * 
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- * 
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- * 
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA
- * $/LicenseInfo$
- */
-
-#ifndef LL_LLFLOATERINVENTORY_H
-#define LL_LLFLOATERINVENTORY_H
-
-#include "llfloater.h"
-#include "llfoldertype.h"
-
-class LLInventoryPanel;
-class LLPanelMainInventory;
-
-//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// Class LLFloaterInventory
-//
-// This deals with the buttons and views used to navigate as
-// well as controlling the behavior of the overall object.
-//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-class LLFloaterInventory : public LLFloater
-{
-public:
-	LLFloaterInventory(const LLSD& key);
-	~LLFloaterInventory();
-
-	BOOL postBuild();
-
-	// This method makes sure that an inventory view exists, is
-	// visible, and has focus. The view chosen is returned.
-	static LLFloaterInventory* showAgentInventory();
-
-	// Final cleanup, destroy all open inventory views.
-	static void cleanup();
-
-	// Inherited functionality
-	/*virtual*/ void onOpen(const LLSD& key);
-	/*virtual*/ void onClose(bool app_quitting);
-
-	LLInventoryPanel* getPanel();
-	LLPanelMainInventory* getMainInventoryPanel() { return mPanelMainInventory;}
-private:
-	LLPanelMainInventory* mPanelMainInventory;
-};
-
-#endif // LL_LLFLOATERINVENTORY_H
-
-
-
diff --git a/indra/newview/llfloateropenobject.cpp b/indra/newview/llfloateropenobject.cpp
index ef746d308db8c3550b92fdf713d76ef81d4e1e9c..2a1749bd42bd872394a3bef23b48eb4bc9b82aa0 100644
--- a/indra/newview/llfloateropenobject.cpp
+++ b/indra/newview/llfloateropenobject.cpp
@@ -39,7 +39,6 @@
 #include "lltextbox.h"
 
 #include "llinventorybridge.h"
-#include "llfloaterinventory.h"
 #include "llinventorymodel.h"
 #include "llinventorypanel.h"
 #include "llpanelobjectinventory.h"
diff --git a/indra/newview/llfloatersidepanelcontainer.cpp b/indra/newview/llfloatersidepanelcontainer.cpp
index c7218ad9d59532a3440533b8440ec95b96dc03e5..8b3cfa7fd510433ee6ac2cab295c6dd99625fa64 100644
--- a/indra/newview/llfloatersidepanelcontainer.cpp
+++ b/indra/newview/llfloatersidepanelcontainer.cpp
@@ -80,6 +80,11 @@ void LLFloaterSidePanelContainer::closeFloater(bool app_quitting)
 	}
 	
 	LLFloater::closeFloater(app_quitting);
+
+	if (getInstanceName() == "inventory" && !getKey().isUndefined())
+	{
+		destroy();
+	}
 }
 
 LLPanel* LLFloaterSidePanelContainer::openChildPanel(const std::string& panel_name, const LLSD& params)
diff --git a/indra/newview/llfloatersidepanelcontainer.h b/indra/newview/llfloatersidepanelcontainer.h
index d7ecd52e5746d2f432f116002b5b274b9f7da02f..635514e26ca48292617703879a3da5275a786c62 100644
--- a/indra/newview/llfloatersidepanelcontainer.h
+++ b/indra/newview/llfloatersidepanelcontainer.h
@@ -53,6 +53,8 @@ class LLFloaterSidePanelContainer : public LLFloater
 
 	/*virtual*/ void closeFloater(bool app_quitting = false);
 
+	void cleanup() { destroy(); }
+
 	LLPanel* openChildPanel(const std::string& panel_name, const LLSD& params);
 
 	static void showPanel(const std::string& floater_name, const LLSD& key);
diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp
index d8f019374e234d2529b1d39f0a49dd19d579db20..f04d6cc753cf526a6f7f1bb475933085a9e3becb 100644
--- a/indra/newview/llinventoryfunctions.cpp
+++ b/indra/newview/llinventoryfunctions.cpp
@@ -48,7 +48,6 @@
 #include "llavataractions.h"
 #include "llclipboard.h"
 #include "lldonotdisturbnotificationstorage.h"
-#include "llfloaterinventory.h"
 #include "llfloatersidepanelcontainer.h"
 #include "llfocusmgr.h"
 #include "llfolderview.h"
@@ -752,36 +751,13 @@ void show_item_original(const LLUUID& item_uuid)
 
 void reset_inventory_filter()
 {
-	//inventory floater
-	bool floater_inventory_visible = false;
-
-	LLFloaterReg::const_instance_list_t& inst_list = LLFloaterReg::getFloaterList("inventory");
-	for (LLFloaterReg::const_instance_list_t::const_iterator iter = inst_list.begin(); iter != inst_list.end(); ++iter)
+	LLSidepanelInventory *sidepanel_inventory =	LLFloaterSidePanelContainer::getPanel<LLSidepanelInventory>("inventory");
+	if (sidepanel_inventory)
 	{
-		LLFloaterInventory* floater_inventory = dynamic_cast<LLFloaterInventory*>(*iter);
-		if (floater_inventory)
+		LLPanelMainInventory* main_inventory = sidepanel_inventory->getMainInventoryPanel();
+		if (main_inventory)
 		{
-			LLPanelMainInventory* main_inventory = floater_inventory->getMainInventoryPanel();
-
 			main_inventory->onFilterEdit("");
-
-			if(floater_inventory->getVisible())
-			{
-				floater_inventory_visible = true;
-			}
-		}
-	}
-
-	if(!floater_inventory_visible)
-	{
-		LLSidepanelInventory *sidepanel_inventory =	LLFloaterSidePanelContainer::getPanel<LLSidepanelInventory>("inventory");
-		if (sidepanel_inventory)
-		{
-			LLPanelMainInventory* main_inventory = sidepanel_inventory->getMainInventoryPanel();
-			if (main_inventory)
-			{
-				main_inventory->onFilterEdit("");
-			}
 		}
 	}
 }
diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp
index f5dcbf838daf7dcbebecbe5b51e5f4b1460b31a7..6a27c0fe216038349c725b39bd659b6dd5a358ad 100644
--- a/indra/newview/llinventorypanel.cpp
+++ b/indra/newview/llinventorypanel.cpp
@@ -34,7 +34,6 @@
 #include "llappearancemgr.h"
 #include "llavataractions.h"
 #include "llclipboard.h"
-#include "llfloaterinventory.h"
 #include "llfloaterreg.h"
 #include "llfloatersidepanelcontainer.h"
 #include "llfolderview.h"
diff --git a/indra/newview/llpanelgroupnotices.cpp b/indra/newview/llpanelgroupnotices.cpp
index 54728885c1aaf6cea6207b93d7e9e3c787ecbfe3..48b659a81e21c2b02c70327c572f3ebd2a49fcdc 100644
--- a/indra/newview/llpanelgroupnotices.cpp
+++ b/indra/newview/llpanelgroupnotices.cpp
@@ -37,7 +37,6 @@
 #include "llinventoryfunctions.h"
 #include "llinventoryicon.h"
 #include "llinventorymodel.h"
-#include "llfloaterinventory.h"
 #include "llagent.h"
 #include "llagentui.h"
 
diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp
index eb40616a9c4a32b473b563731b829db5b2e18ba1..7510002e98b0fecb87b1dfa2ee0a97d48019fe94 100644
--- a/indra/newview/llpanelmaininventory.cpp
+++ b/indra/newview/llpanelmaininventory.cpp
@@ -33,7 +33,6 @@
 #include "lldndbutton.h"
 #include "lleconomy.h"
 #include "llfilepicker.h"
-#include "llfloaterinventory.h"
 #include "llinventorybridge.h"
 #include "llinventoryfunctions.h"
 #include "llinventorymodelbackgroundfetch.h"
@@ -115,7 +114,6 @@ LLPanelMainInventory::LLPanelMainInventory(const LLPanel::Params& p)
 	mCommitCallbackRegistrar.add("Inventory.EmptyTrash", boost::bind(&LLInventoryModel::emptyFolderType, &gInventory, "ConfirmEmptyTrash", LLFolderType::FT_TRASH));
 	mCommitCallbackRegistrar.add("Inventory.EmptyLostAndFound", boost::bind(&LLInventoryModel::emptyFolderType, &gInventory, "ConfirmEmptyLostAndFound", LLFolderType::FT_LOST_AND_FOUND));
 	mCommitCallbackRegistrar.add("Inventory.DoCreate", boost::bind(&LLPanelMainInventory::doCreate, this, _2));
- 	//mCommitCallbackRegistrar.add("Inventory.NewWindow", boost::bind(&LLPanelMainInventory::newWindow, this));
 	mCommitCallbackRegistrar.add("Inventory.ShowFilters", boost::bind(&LLPanelMainInventory::toggleFindOptions, this));
 	mCommitCallbackRegistrar.add("Inventory.ResetFilters", boost::bind(&LLPanelMainInventory::resetFilters, this));
 	mCommitCallbackRegistrar.add("Inventory.SetSortBy", boost::bind(&LLPanelMainInventory::setSortBy, this, _2));
diff --git a/indra/newview/llpanelmaininventory.h b/indra/newview/llpanelmaininventory.h
index efa18b42c1ba3183fc0b6e13c751e2d5d091b3ec..38936804acf0f0e1cb9a8cf288afb21704cd7ed6 100644
--- a/indra/newview/llpanelmaininventory.h
+++ b/indra/newview/llpanelmaininventory.h
@@ -86,6 +86,8 @@ class LLPanelMainInventory : public LLPanel, LLInventoryObserver
 
 	void setFocusFilterEditor();
 
+	static void newWindow();
+
 protected:
 	//
 	// Misc functions
@@ -110,7 +112,6 @@ class LLPanelMainInventory : public LLPanel, LLInventoryObserver
 	// menu callbacks
 	void doToSelected(const LLSD& userdata);
 	void closeAllFolders();
-	void newWindow();
 	void doCreate(const LLSD& userdata);
 	void resetFilters();
 	void setSortBy(const LLSD& userdata);
diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp
index 8331c152e206a34fc2f3f3c9b006e1e53963f91b..b6fcca38e9923417d8e771f7e8c79452082c4af7 100644
--- a/indra/newview/llpaneloutfitedit.cpp
+++ b/indra/newview/llpaneloutfitedit.cpp
@@ -51,7 +51,6 @@
 #include "llbutton.h"
 #include "llcombobox.h"
 #include "llfiltereditor.h"
-#include "llfloaterinventory.h"
 #include "llinventorybridge.h"
 #include "llinventorymodel.h"
 #include "llinventorymodelbackgroundfetch.h"
diff --git a/indra/newview/llplacesinventorybridge.cpp b/indra/newview/llplacesinventorybridge.cpp
index a498d27d2ba247c6f31570282fbc8bf6bc1bfcde..55cb7d616bce1f8e2ea3306016bf2a3ea1cd4c4b 100644
--- a/indra/newview/llplacesinventorybridge.cpp
+++ b/indra/newview/llplacesinventorybridge.cpp
@@ -30,7 +30,6 @@
 
 #include "llplacesinventorybridge.h"
 
-#include "llfloaterinventory.h" // for LLInventoryPanel
 #include "llfolderview.h" // for FIRST_SELECTED_ITEM
 #include "llinventorypanel.h"
 
diff --git a/indra/newview/llplacesinventorypanel.h b/indra/newview/llplacesinventorypanel.h
index 2805fc425716c7d4e8f33b9e8187162e35d24635..27d9b83bd170731c599cb7db6d9e76741160cde1 100644
--- a/indra/newview/llplacesinventorypanel.h
+++ b/indra/newview/llplacesinventorypanel.h
@@ -27,7 +27,6 @@
 #ifndef LL_LLINVENTORYSUBTREEPANEL_H
 #define LL_LLINVENTORYSUBTREEPANEL_H
 
-#include "llfloaterinventory.h"
 #include "llinventorypanel.h"
 
 class LLLandmarksPanel;
diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp
index 6bcae1e85882db64971dd91c3bcccaad0fb2e493..c6a0198afd091977f008776c753ef660d0f56f40 100644
--- a/indra/newview/llsidepanelinventory.cpp
+++ b/indra/newview/llsidepanelinventory.cpp
@@ -34,6 +34,7 @@
 #include "llbutton.h"
 #include "lldate.h"
 #include "llfirstuse.h"
+#include "llfloaterreg.h"
 #include "llfloatersidepanelcontainer.h"
 #include "llfoldertype.h"
 #include "llfolderview.h"
@@ -731,3 +732,16 @@ std::set<LLFolderViewItem*> LLSidepanelInventory::getInboxSelectionList()
 	
 	return inventory_selected_uuids;
 }
+
+void LLSidepanelInventory::cleanup()
+{
+	LLFloaterReg::const_instance_list_t& inst_list = LLFloaterReg::getFloaterList("inventory");
+	for (LLFloaterReg::const_instance_list_t::const_iterator iter = inst_list.begin(); iter != inst_list.end();)
+	{
+		LLFloaterSidePanelContainer* iv = dynamic_cast<LLFloaterSidePanelContainer*>(*iter++);
+		if (iv)
+		{
+			iv->cleanup();
+		}
+	}
+}
diff --git a/indra/newview/llsidepanelinventory.h b/indra/newview/llsidepanelinventory.h
index 17a3098db9c66431bc61d0ea5c07ea1a127a6a88..5060f7025f6ac8946ece4011262b78a32e4f8852 100644
--- a/indra/newview/llsidepanelinventory.h
+++ b/indra/newview/llsidepanelinventory.h
@@ -82,6 +82,8 @@ class LLSidepanelInventory : public LLPanel
 
 	void updateVerbs();
 
+	static void cleanup();
+
 protected:
 	// Tracks highlighted (selected) item in inventory panel.
 	LLInventoryItem *getSelectedItem();
diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp
index ad4f903dff0e800d8d04ae221d634f06c2e679cc..adacbfe3aaa730712a8d809ab9b00c26f7bc3064 100644
--- a/indra/newview/lltexturectrl.cpp
+++ b/indra/newview/lltexturectrl.cpp
@@ -43,7 +43,6 @@
 #include "llinventorymodelbackgroundfetch.h"
 #include "llinventoryobserver.h"
 #include "llinventorypanel.h"
-#include "llfloaterinventory.h"
 #include "lllineeditor.h"
 #include "llui.h"
 #include "llviewerinventory.h"
diff --git a/indra/newview/lltoastgroupnotifypanel.cpp b/indra/newview/lltoastgroupnotifypanel.cpp
index f6ca0bc9d719d4bffbd1871e81afbe6be340b698..f7dc32d0d771cd28650beef6784a90de2a84f2e1 100644
--- a/indra/newview/lltoastgroupnotifypanel.cpp
+++ b/indra/newview/lltoastgroupnotifypanel.cpp
@@ -47,7 +47,6 @@
 #include "llglheaders.h"
 #include "llagent.h"
 #include "llavatariconctrl.h"
-#include "llfloaterinventory.h"
 #include "llinventorytype.h"
 
 const S32 LLToastGroupNotifyPanel::DEFAULT_MESSAGE_MAX_LINE_COUNT	= 7;
diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp
index 6d13d28e18fa45722988fda61c823b15df151024..eb0a8d5a40b7dac3e7dfcfe6e20b469edbf5efdc 100644
--- a/indra/newview/llviewerfloaterreg.cpp
+++ b/indra/newview/llviewerfloaterreg.cpp
@@ -77,7 +77,6 @@
 #include "llfloaterimagepreview.h"
 #include "llfloaterimsession.h"
 #include "llfloaterinspect.h"
-#include "llfloaterinventory.h"
 #include "llfloaterjoystick.h"
 #include "llfloaterlagmeter.h"
 #include "llfloaterland.h"
diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp
index d0813544f8c1456850ecc33198e699f4b42f6104..98d1e80df85aff0193c81399a4c3393ee763e3c1 100644
--- a/indra/newview/llviewerinventory.cpp
+++ b/indra/newview/llviewerinventory.cpp
@@ -49,7 +49,6 @@
 
 #include "llinventorybridge.h"
 #include "llinventorypanel.h"
-#include "llfloaterinventory.h"
 #include "lllandmarkactions.h"
 
 #include "llviewerassettype.h"
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index 697199df6be1a8243634166fedc081e72b3b59b8..20e1fce2d93eef8e0615435db5d2db0c271665ce 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -62,7 +62,6 @@
 #include "llfloaterbuycontents.h"
 #include "llbuycurrencyhtml.h"
 #include "llfloatergodtools.h"
-#include "llfloaterinventory.h"
 #include "llfloaterimcontainer.h"
 #include "llfloaterland.h"
 #include "llfloaterimnearbychat.h"
@@ -89,6 +88,7 @@
 #include "llinventoryfunctions.h"
 #include "llpanellogin.h"
 #include "llpanelblockedlist.h"
+#include "llpanelmaininventory.h"
 #include "llmarketplacefunctions.h"
 #include "llmenuoptionpathfindingrebakenavmesh.h"
 #include "llmoveview.h"
@@ -9068,7 +9068,7 @@ void initialize_menus()
 	view_listener_t::addMenu(new LLGoToObject(), "GoToObject");
 	commit.add("PayObject", boost::bind(&handle_give_money_dialog));
 
-	commit.add("Inventory.NewWindow", boost::bind(&LLFloaterInventory::showAgentInventory));
+	commit.add("Inventory.NewWindow", boost::bind(&LLPanelMainInventory::newWindow));
 
 	enable.add("EnablePayObject", boost::bind(&enable_pay_object));
 	enable.add("EnablePayAvatar", boost::bind(&enable_pay_avatar));