diff --git a/pgadmin/dlg/dlgProperty.cpp b/pgadmin/dlg/dlgProperty.cpp
index dd8baf6..7312e97 100644
--- a/pgadmin/dlg/dlgProperty.cpp
+++ b/pgadmin/dlg/dlgProperty.cpp
@@ -803,6 +803,7 @@ bool dlgProperty::tryUpdate(wxTreeItemId collectionItem)
 
 void dlgProperty::ShowObject()
 {
+	mainForm->ObjectBrowserRefreshing(true);
 	pgObject *data = GetObject();
 
 	// We might have a parent to refresh. If so, the children will
@@ -911,6 +912,7 @@ void dlgProperty::ShowObject()
 		if (currobj)
 			mainForm->Refresh(currobj);
 	}
+	mainForm->ObjectBrowserRefreshing(false);
 }
 
 
diff --git a/pgadmin/frm/events.cpp b/pgadmin/frm/events.cpp
index 23f9e60..150f3c1 100644
--- a/pgadmin/frm/events.cpp
+++ b/pgadmin/frm/events.cpp
@@ -362,6 +362,13 @@ void frmMain::OnPropRightClick(wxListEvent &event)
 
 void frmMain::OnTreeSelChanged(wxTreeEvent &event)
 {
+	/*
+        * Do not honour the tree selection change, while a property dialog is
+        * closed and refresh is in progress
+	*/
+	if (m_refreshing)
+		return;
+
 	denyCollapseItem = wxTreeItemId();
 	// Reset the listviews/SQL pane
 	if (event.GetItem())
diff --git a/pgadmin/frm/frmMain.cpp b/pgadmin/frm/frmMain.cpp
index de68212..4b8db5a 100644
--- a/pgadmin/frm/frmMain.cpp
+++ b/pgadmin/frm/frmMain.cpp
@@ -96,6 +96,7 @@ frmMain::frmMain(const wxString &title)
 	msgLevel = 0;
 	lastPluginUtility = NULL;
 	pluginUtilityCount = 0;
+	m_refreshing = false;
 
 	dlgName = wxT("frmMain");
 	SetMinSize(wxSize(600, 450));
diff --git a/pgadmin/include/frm/frmMain.h b/pgadmin/include/frm/frmMain.h
index 7043886..cff48e2 100644
--- a/pgadmin/include/frm/frmMain.h
+++ b/pgadmin/include/frm/frmMain.h
@@ -161,6 +161,10 @@ public:
 
 	void SetItemBackgroundColour(wxTreeItemId item, wxColour colour);
 	wxString GetNodePath(wxTreeItemId node);
+	void ObjectBrowserRefreshing(bool refresh)
+	{
+		m_refreshing = refresh;
+	}
 
 private:
 	wxAuiManager manager;
@@ -188,6 +192,8 @@ private:
 	wxString timermsg;
 	long msgLevel;
 
+	bool m_refreshing;
+
 	wxTreeItemId denyCollapseItem;
 	pgObject *currentObject;
 	wxControl *currentControl;
