From ad5b6e3de6648e53bb8669e561d5e0fcf2e84c76 Mon Sep 17 00:00:00 2001
From: McCabe Maxsted
Date: Fri, 18 Jun 2010 21:23:29 -0700
Subject: Made the AO start loading at startup

(fixes bug where it wouldn't enable unless the window was opened)
---
 linden/indra/newview/floaterao.cpp   |  2 ++
 linden/indra/newview/floaterao.h     |  4 +++-
 linden/indra/newview/llappviewer.cpp | 16 ++++++++++------
 linden/indra/newview/llstartup.cpp   |  8 ++++++++
 4 files changed, 23 insertions(+), 7 deletions(-)

(limited to 'linden/indra')

diff --git a/linden/indra/newview/floaterao.cpp b/linden/indra/newview/floaterao.cpp
index b084189..4214e21 100644
--- a/linden/indra/newview/floaterao.cpp
+++ b/linden/indra/newview/floaterao.cpp
@@ -45,6 +45,8 @@ void cmdline_printchat(std::string message)
     LLFloaterChat::addChat(chat, FALSE, FALSE);
 }
 
+AOInvTimer* gAOInvTimer = NULL;
+
 
 class AONotecardCallback : public LLInventoryCallback
 {
diff --git a/linden/indra/newview/floaterao.h b/linden/indra/newview/floaterao.h
index 204717f..cf8ee22 100644
--- a/linden/indra/newview/floaterao.h
+++ b/linden/indra/newview/floaterao.h
@@ -126,4 +126,6 @@ protected:
 
 };
 
-#endif
\ No newline at end of file
+extern AOInvTimer* gAOInvTimer;
+
+#endif
diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp
index ab4157f..b810abe 100644
--- a/linden/indra/newview/llappviewer.cpp
+++ b/linden/indra/newview/llappviewer.cpp
@@ -154,6 +154,7 @@
 #include "viewerversion.h"
 
 // includes for idle() idleShutdown()
+#include "floaterao.h"
 #include "llviewercontrol.h"
 #include "lleventnotifier.h"
 #include "llcallbacklist.h"
@@ -1156,21 +1157,21 @@ bool LLAppViewer::cleanup()
 	LLMortician::setZealous(TRUE);
 
 	if (mQuitRequested)
-	LLVoiceClient::terminate();
+	{
+		LLVoiceClient::terminate();
+	}
 	
 	disconnectViewer();
 
 	llinfos << "Viewer disconnected" << llendflush;
 
-
-
-
-
 	//this deletes all your buddies
 	LLAvatarTracker::instance().reset();
 
 	if (mQuitRequested)
-	display_cleanup(); 
+	{
+		display_cleanup();
+	}
 
 	release_start_screen(); // just in case
 
@@ -1190,6 +1191,9 @@ bool LLAppViewer::cleanup()
 	//clear all the chat off the screen	
 	gConsole->clear();
 
+	// Cleaned up elsewhere
+	gAOInvTimer = NULL;
+
 	//if we are doing a soft cleanup, bail here
 	// But clean up the messaging system first -- MC
 	if (!mQuitRequested)
diff --git a/linden/indra/newview/llstartup.cpp b/linden/indra/newview/llstartup.cpp
index 1cc1871..735397e 100644
--- a/linden/indra/newview/llstartup.cpp
+++ b/linden/indra/newview/llstartup.cpp
@@ -197,6 +197,8 @@
 #include "lldxhardware.h"
 #endif
 
+#include "floaterao.h"
+
 #include "hippoGridManager.h"
 #include "hippoLimits.h"
 //
@@ -2671,6 +2673,12 @@ bool idle_startup()
 			gStatusBar->updateElements();
 		}
 
+		// Start the AO now that settings have loaded and login successful -- MC
+		if (!gAOInvTimer)
+		{
+			gAOInvTimer = new AOInvTimer();
+		}
+
 		LLFirstUse::ClientTags();
 
 		// Let the map know about the inventory.
-- 
cgit v1.1